Ios自己面试总结

设计模式

2016-01-30  本文已影响194人  城市之光

设计模式在计算机语言中占有挺大的作用,如果说算法是编程的灵魂,那么设计模式就是编程的艺术殿堂。好的设计模式,在实际开发中就起到很大的作用。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。

Java中总共有23种设计模式,其他这些模式在各个语言上都是相通的,就是语法不同罢了,现在主要是讲iOS平台下的设计模式。

一、设计模式的基本原则

1.1 开闭原则(Open Closed Principle,OCP)
对扩展开放,对修改关闭。
当一个类里的一个属性或方法不用了,但是这个类在很多地方需要用到,而现在要实现的功能不需要某个属性或方法,那就不应该对该属性或方法进行删除或内部修改(即对修改
关闭),而应该继承自该类,进行扩展属性或方法(即对扩展开放)。

1.2 里氏代换原则(Liskov Substitution Principle,LSP)
和多态相似

1.3 依赖倒转原则(Dependency Inversion Principle,DIP)
抽象不依赖于细节(具体实现),而细节(具体实现)依赖于抽象。不应该把具体实现暴露在接口外面。

1.4 接口隔离原则(Interface Segregation Principle,ISP)
不要让接口做与其不相干的(超出它范围之外的)事情。

1.5 合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)

设计模式的类型
1.GoF patterns
2.异发设计模式 Concurrency patterns
处理和线程执行顺序有关的模式
3.框架级别的设计模式 Architectural patterns
MVC,MVVM。
4.other patterns
Software design pattern Wikipedia
Design Patterns - Wikipedia
Gang Of Four
1.6 最小知识原则(Principle of Least Knowledge,PLK,也叫迪米特法则)。

二、主要模式

工厂模式
工厂模式主要包括简单工厂,工厂方法和抽象工厂模式。
1.简单工厂模式
2.工厂方法模式
3.抽象工厂模式

单例模式

组合模式

观察者模式

策略模式

命令模式

责任链模式

适配器模式

构造器模式

装饰器模式

备忘录模式

迭代器模式

原型/外观模式

桥接模式

代理模式

访问者模式

上一篇下一篇

猜你喜欢

热点阅读