码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式随笔

时间:2015-12-18 06:28:13      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

设计模式的定义:

    模式是在某种情境下,针对某问题的某种解决方案。
 
这里面关键的就是问题,情境,解决方案
 
模式应该是可以重复利用的。
 
 
面向对象设计的原则:
封装变化
    找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混合在一起。
     如果新的需求过来,都会使某方面的代码发生变化,那么你就可以确定,这部分代码需要被抽离出来,和其他稳定的部分有所区别。这样一来,以后新的需求过来
就可以轻易地只改动或者扩充这个部分,而不影响其他不需要变化的部分。
多用组合,少用继承
    1、子类对父类的继承式全部的公有或受保护的继承,这样的话子类可能继承了对子类无用或者有害的父类。也就是说可能子类并不想要父类的方法怎么办(例如矩形和正方形)
    2、继承的子类实际上是运行时就确定下来了,满足不了运行时确定下来的要求,运用组合可以非常灵活,可以在运行时才决定某个对象。
针对接口编程,而不要针对实现编程
    一个简单的例子,比如ICDComm的接口发送消息和接受消息。
为交互对象之间的松耦合设计而努力
     这样我们可以建立有弹性的OO系统,能够应对变化,因为对象之间的依赖程度降到了最低。
类应该对扩展开放,对修改关闭(开闭原则)
      我们的目标就是允许类更容易扩展,在不修改现有代码的情况下,就可以适配新的行为。这样就可以使用更多改变,可以接受改变来应对新的需求。
依赖抽象,而不依赖具体类(依赖倒置原则)
      依赖倒置原则中的倒置是指和一般的OO设计的思考方式完全相反。高层和底层的实现都依赖相同的抽象。
只和朋友交谈 
 
别找我,我会去找你
 
类应该只有一个改变的理由
 
 
抽象工厂的任务是定义一个负责创建一组产品的接口,这个接口内的每个方法多可以创建一个具体的产品,同时我们利用实现抽象工厂的子类来提供这些具体的做法。所以在
抽象工厂中利用工厂方法实现生产方法是很自然的。
简单工厂主要是为了解耦,针对接口编程而不是针对实现编程。

 

设计模式随笔

标签:

原文地址:http://www.cnblogs.com/amongv587/p/5055812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!