模式原则
模式设计不只是简单的描述问题的解决方案,而且很重视解决方案的可重用性和灵活性
通过以灵活的关系来组合对象,组件能在运行时被定义
运行时组合对象所达到的灵活性非常高,而这在单独的继承树中是不可能达到的
组合优于继承
把变化的概念封装起来
-------《设计模式》
继承是应对变化的环境及上下文设计的有效方式,然而它会限制灵活性,尤其当类承担多重职责的时候。在父类的代码中使用条件语句是一种倒退,通常用多态来替代条件语句
策略模式适用于将一组算法移入到一个独立的类型中
显示调用另一个对象的方法来执行一个请求的方式便是委托。动态的组合及重组对象,远胜于将功能静态的建立在代码结构中。
组合使用对象比使用继承体系更灵活,因为组合可以以多种方式动态地处理任务,不过这可能导致代码的可能性下降。
重用性是面向对象设计的主要目标之一,而紧耦合便是它的敌人。
《设计模式》建议积极搜寻类中变化的元素,并评估它们是否适合用新类型封装。根据一定条件,变化的元素可被提取出来形成子类,而这些元素共同拥有一个抽象父类。而这个新类型能被其他类使用。好处:
专注于职责 通过组合提高灵活性 使继承层级体系更紧凑和集中 减少重复极限编程原则:
你还不需要它 用最简单的方式来完成任务模式:
用于生成对象的模式(对象实例化) 用于组织对象和类的模式(帮助组织对象的组成关系) 面向任务的模式 企业模式 数据库模式更多文章在 http://wenjun.in
http://www.cnblogs.com/wenjuncool/archive/2012/03/22/2412473.html
作者: Leo_wl
出处: http://www.cnblogs.com/Leo_wl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
版权信息