随笔分类 - 设计模式学习笔记
摘要:原文地址:21种设计模式作者:lilian1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。2、BUILDER—MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按
阅读全文
摘要:1.依赖倒置原则(Dependence Inversion Principle,DIP)High level modules should not depend upon low level modules.Both should depend upon abstractions. Abstractions should not depend upon details should depend upon abstractions翻译过来:n 高层模块不应该依赖低层模块,两者都应该依赖其抽象。n 抽象不应该依赖细节n 细节应该依赖抽象高层模块和低层模块容易理解,每一个逻辑的实现都是由原子逻辑组
阅读全文
摘要:1.里氏替换原则(Liskov Substiution Principl,LSP)如果要说里氏替换原则,就必须说继承,因为里氏替换原则就是继承的缺点的解决方案。继承好处l 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性。l 提高代码的重用性l 父类可以形似父类,但又异于父类l 提高代码的可扩展性,很多开源框架的扩展接口都是通过继承父类完成的。l 提高产品或醒目的开放性继承缺点l 继承是入侵性。只要继承,就必须拥有父类的所有属性和方法l 降低代码的灵活性。子类必须拥有父类的属性和方法,让子类自由的世界中有了很多约束l 增强耦合性。当父类的常量、变量和方法发生更改时,就要考虑子类的修
阅读全文
摘要:1.里氏替换原则(Liskov Substiution Principl,LSP)如果要说里氏替换原则,就必须说继承,因为里氏替换原则就是继承的缺点的解决方案。继承好处l 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性。l 提高代码的重用性l 父类可以形似父类,但又异于父类l 提高代码的可扩展性,很多开源框架的扩展接口都是通过继承父类完成的。l 提高产品或醒目的开放性继承缺点l 继承是入侵性。只要继承,就必须拥有父类的所有属性和方法l 降低代码的灵活性。子类必须拥有父类的属性和方法,让子类自由的世界中有了很多约束l 增强耦合性。当父类的常量、变量和方法发生更改时,就要考虑子类的修
阅读全文

浙公网安备 33010602011771号