由多个个体按照某种规则运作,完成个体不能单独完成工作的群体。
某种规则,可以理解为交互。
完成个体不能单独完成的工作。理解为功能上 1+1 大于 2。
电商系统都有订单,和支付,物流等。如果他们之间不进行交互联动。单纯的订单是无法满足人们购物的需求。
理解为更大的系统的组成部分(系统)。
比如我们的商城系统由面辅料商城 + 个人定制商城组成。
那么可以理解为面辅料商城,个人定制商城是电商的子系统。
模块通常是根据职责来区分:比如登录模块,推荐模块等
组件:更加关心复用,容易被组装使用
两者要从拆分角度来区别:
这里以mysql和elasticsearch作为例子。
从职责出发:
mysql模块主要负责存储数据
elasticsearch模块主要负责数据检索
从物理角度拆分:
mysql组件,elasticsearch组件
模块和组件也可以称为另一个纬度上的子系统