第二周 - 学习总结
OOD 软件设计原则(5 种)
面向对象设计(Object-Oriented Design, OOD)。
OOD 原则一:开/闭原则(OCP)
OCP - Open/Closed Principle
对于扩展是开放的(Open for extension)
对于更改是封闭的(Closed for modification)
简言之:不需要修改软件实体(类、模块、函数等),就应该能实现功能的扩展。
OOD 原则二:依赖倒置原则(DIP)
DIP - Dependency Inversion Principle
高层模块不能依赖低层模块,而是都依赖于抽象,这个抽象属于高层;
抽象不能依赖实现,而是实现依赖抽象。
依赖倒置的关键是:这个抽象是属于谁的,倒置的是抽象属于谁的;
框架是基于依赖倒置原则设计的一类软件。你不要去调框架,框架会来调用你;即:好莱坞原则:Don't call me, I'll call you.
OOD 原则三:Liskov 替换原则(LSP)
LSP - Liskov Principle 是关于抽象的。
简言之:子类型(subtype)必须能够替换掉它们的基类型(base type)。也就是说使用基类的地方应该能够使用子类来替代。
OOD 原则四:单一职责原则(SRP)
SRP - Single Responsibility Principle
通俗的说:一个类只有一个引起它变化的原因。
OOD 原则五:接口分离/隔离原则(ISP)
ISP - Interface Segregation Principle:不应该强迫客户程序(或应用程序)依赖它们不需要的方法。
不强迫用户依赖他不需要的方法;
不把用户不需要的方法暴露给他们;
评论