1.耦合
一个模块依赖于另一个模块,就是两个模块之间有耦合,简而言之,依赖就是耦合
模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。
降低模块间的耦合度能减少模块间的影响,防止对某一模块修改所引起的“牵一发动全身”的水波效应,保证系统设计顺利进行
2.内聚
高内聚,是指一个模块内部的代码的相关程度要高,就像分子之间的作用力一样,要紧密的结合在一起。最典型的就是,一个模块只做一件事。
就是所谓的单一职责。
2.开闭原则
一个模块的改变不会引起其他模块的改变。就是当一个模块对其他模块的依赖最小,甚至无依赖时,其才不会因为其他模块的改变而改变。
3.依赖倒置
依赖于抽象,不依赖于实现。即一个模块只是去依赖于一个标准,只要标准不变,模块就无需改变。其依赖的模块只要
实现了对应的标准,我就可以使用它,而不必知道它的存在。标准的另一说法叫接口,即编程语言中的接口。
4.依赖注入
将对模块的依赖从一个中心注入进去。实际上是将依赖关系的管理放在了一个统一的地方,类似于bus总线模式,降低了修改一个被依赖模块带来的
修改成本。