设计模式

103 阅读1分钟

六大原则

开闭原则

对修改关闭,对扩展开放

单一原则

类似UIView和CALayer的功能,各司其职。

依赖倒置原则

抽象不依赖具体实现,具体实现依赖抽象。

接口隔离原则

使用单一的接口协议,避免使用复杂的臃肿的大协议

里氏替换替换

父类可以被子类无缝替换,原来的功能不受影响。在使用者无感知的情况下,替换原来的方法。

迪米特原则

一个对象应该对其他对象尽可能少的了解。高内聚,低耦合。

创建型模式

单例模式

App生命周期里只存在一个。注意重写copyWithZone、allocWithZone和调用[[super allocWithZone:nil]init]

工厂模式

结构性模式

适配器模式

适应变化,不改变原有对象,然后增加新方法或者使用原有方法

代理模式

组合模式

装饰模式

桥接模式

解除耦合问题

行为型模式

责任链模式

解决调用顺序问题

观察者模式

命令模式

行为参数化,降低代码重合度。比如转发、评论和赞等

MVC

MVP

MVVM