面向对象的基本原则:多聚合,少继承。低耦合,高内聚.
这里的聚合和内聚分别是什么意思?
另外,还有个"组合",这又是什么含义,它和聚合之间有什么关系吗?
聚合和组合意思相近,但组合的层次更强:
聚合:事物A由若干个事物B组成
组合:事物A由若干个事物B组成,并且事物B离开了事物A以后无法单独存在
聚合和组合的理解要看实际情况,比如说:
对于驾驶员,车子和轮胎是组合的关系,因为对于驾驶员来说单独的轮胎没用
对于配件零售商,车子和轮胎是聚合的关系,因为单独的轮胎可以用来卖
内聚,指一个模块内部完成同一件事情的紧密程度,理论上内聚越高模块越独立,设计越优秀
因此内聚和聚合并不是一个层次上的概念
合成原则的合成与聚合的含义我认为差不多