SiYu

积少成多 聚沙成塔

欢迎来到我的个人站~


设计模式总结

  一直在看设计模式,断断续续看了一年多。由于在平时开发中鲜有用到,看了的基本都忘了。最近再次捡起来,总结一下。

  套用大家熟知的话就是:设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。

  使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。

ps:HeadFirst书中读书要点

设计模式

  我看的书时HeadFirst设计模式。感觉很亲切,很清晰,通俗易懂。套用一下书中对各个设计模式的定义。

  1.策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。

  2.观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。

  3.装饰模式:动态地将责任附加到对象上,若要扩展功能,装饰着提供了比继承更有弹性的替代方案。

  4.工厂方法模式:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。

  5.抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。

  6.单例模式确保一个类只有一个实例,并提供一个全局访问点。

  7.命令模式:将“请求”封装成对象,以便使用不同的请求队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。

  (待续)

已经学习的设计原则

  1.封装变化

  2.多用组合 少用继承

  3.找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起;

  4.针对接口编程,而不是针对实现编程;

  5.为了交互对象之间的松耦合设计二努力;

  6.类应该对扩展开放,对修改关闭;

  7.要依赖抽象,不要依赖具体类;

  (待续)