模块的粒度可大可小, 可以是函数, 类, 功能块等等.
耦合
模块之间存在依赖, 导致改动可能会互相影响, 关系越紧密, 耦合越强, 模块独立性越差....低内聚的模块代码, 不管是维护, 扩展还是重构都相当麻烦, 难以下手.
?
接口设计原则
好的接口应当满足设计模式六大原则, 很多设计模式, 框架都是基于高内聚低耦合这个出发点的....单一职责原则: 一个类只负责一个功能领域中的相应职责.
开闭原则: 一个软件实体应当对扩展开放,对修改关闭.
里氏代换原则: 所有引用基类(父类)的地方必须能透明地使用其子类的对象....外观模式
为系统中多个子系统提供一致的对外调用, 对客户端隐藏子系统细节, 降低其与子系统的耦合.
?...桥接模式
JDBC中的把面向厂商的接口(Driver)和面向使用者的API(DriverManager)做了拆分隔离.
1 // 开发者只需要关注JDBC API, 无需关注不同数据库Driver