电脑编程设计模式总结

电脑编程设计模式总结

ID:40312679

大小:60.00 KB

页数:9页

时间:2019-07-30

电脑编程设计模式总结_第1页
电脑编程设计模式总结_第2页
电脑编程设计模式总结_第3页
电脑编程设计模式总结_第4页
电脑编程设计模式总结_第5页
资源描述:

《电脑编程设计模式总结》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、深入浅出设计模式总结//注释  此文章内容来自《深入浅出设计模式(中文版)》无符号包含的内容来自原书或者截取自自己收罗的资料(几乎都来自原书)【】  符号包含的内容同样为原书内容为了便于理解充当原版的解释说明{}  符号包含的内容同样为原书内容为了便于理解充当原版的解释说明()  符号包含内容为本人个人理解。Tips:1.设计模式中所谓的实现一个接口泛指实现某个超类型【可以是类或者接口】的某个方法。2.所谓“高层”组件,是由其他低层组件定义其行为的类。3.当我们说“集合”的时候,我们指的是一群对象。其存储方式可以是各式各样的数据结构,

2、4.例如:列表、数组、散列表,无论用什么方式存储,一律可以视为是集合,有时候也被称为聚合。5.内聚这个术语你应该听过,它用来度量一个类或模块紧密地达到单一目的或责任。当一个模块或一个类被设计成只支持一组相关功能时,我们说它具有高内聚;反之,当被设计成支持一组不相关的功能时,我们说它具有低内聚。内聚是一个比单一责任原则更普通的概念,但两者其实关系是很密切的。遵守这个原则的类容易具有很高的凝聚力,而且比背负许多责任的低内聚类更容易维护。设计原则1.OO基础:抽象,封装,多态,继承。2.找出应用中可能需要变化之处,把它们独立出来,不要和那些

3、不需要变化的代码混在一起【封装变化】。3.针对接口编程,而不是针对实现编程。4.多用组合,少用继承。5.为了交互对象之间的松耦合设计而努力。【松耦合的设计之所以能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了最低】。6.类应该对扩展开放,对修改关闭。【用任何你想要的行为来扩展我们的类】【我们花了许多时间得到了正确的代码,还解决了所有的bug,所以不能让你修改现有代码。我们必须关闭代码以防止被修改】。7.要依赖抽象,不要依赖具体类【依赖倒置原则】【这个原则和和第3个原则相比更强调“抽象”,这个原则说明了,不能让

4、高层组件依赖低层组件,而且,不管是高层或底层组件,“两者”都应该依赖与抽象】。8.最少知道原则:只和你的密友谈话。【最少知道原则】(每个类之间知道其他类的东西越少,依赖就越少,就越容易解耦)。9.【好莱坞原则】别调用【打电话给】我们,我们会调用【打电话给】你。【在好莱坞原则之下,我们允许低层组件将自己挂钩到系统上,但是高层组件会决定什么时候和怎么使用这些低层组件。换句话说,高层组件对待低层组建的方式是“别调用我们,我们会调用你”】。10.一个类应该只有一个引起变化的原因。【单一责任】【类的每个责任都有改变的潜在区域。超过一个责任,意味

5、着超过一个改变的区域。这个原则告诉我们,尽量让每个类保持单一责任】。要点知道OO基础,并不足以让你设计出良好的

6、OO系统。良好的OO设计必须具备可复用、可扩展、可维护三个特性。模式可以让我们建造出具有良好OO设计质量的系统。模式被认为是历经验证的OO设计经验。模式不是代码,而是针对设计问题的通用解决方案。你可把它们应用到特定的应用中。模式不是被发明,而是被发现。大多数的模式和原则,都着眼于软件变化的主题。大多数的模式都允许系统局部改变独立与其他部分。我们常把系统中会变化的部分抽出来封装。模式让开发人员之间有共享的语言,能够最大化沟通的

7、价值。(一说什么什么模式我们就知道其内容,和做法,可以省去很多话,而用一个词去代表)关于使用模式的要点:让设计模式自然而然地出现在你的设计中,而不是为了使用而使用。设计模式并非僵化的教条;你可以依据自己的需要采用或调整。总是使用满足的最简单解决方案,不管他用不用模式。(告诉我们模式并不是必须的很多时候我们用oo就可以解决很多问题)。学习设计模式的类目,可以帮你自己熟悉设计模式以及它们之间的关系。模式的分类(或类目)是将模式分成不同的族群,如果这么做对你有帮助,就采用吧!你必须相当专注才能够成为一个模式的作家:这需要时间也需要耐心,同时

8、还必须乐意做大量的精化工作。请牢记:你所遇到大多数的模式都是现有模式的变体,而非新的模式。模式能够为你带来的最大好处之一是:让你的团队拥有共享词汇。模式策略模式:定义了算法家族,分别封装起来,让它们之间,可以互换替换,此模式让算法的变化独立于使用算法的客户。{}观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。{出版者+订阅者=观察者模式如果你了解报纸的订阅是怎么回事,其实就知道观察者模式是怎么回事,只是名称不太一样:出版者改名为“主题”(主要提供数据的一方),订阅者改称为“

9、观察者”(需要使用数据的一方)。主题和观察者定义了一对多的关系。观察者依赖于此主题,只要主题状态一有变化,观察者就会被通知。根据通知的风格,观察者可能因此新值而更新。有新类型的观察者出现时,主题的代码不需要修改。假如我们

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。