zoukankan      html  css  js  c++  java
  • 【HeadFirst设计模式】13.与设计模式相处

    模式:

      是在某情境下,针对某问题的某种解决方案。

    要点:

      让设计模式自然而然地出现在你的设计中,而不是为了使用而使用。

      设计模式并非僵化的教条,你可以依据自己的需要采用或者进行调整。

      总是使用最简单的解决方案,不管它用不用设计模式。 学习设计模式的类目,可以帮你自己熟悉这些模式以及它们之间的关系。

      模式的分类(或类目)是将模式分成不同的族群,如果这么做对你有帮助,就采用吧。

      你必须相当专注才能成为一个模式的作家:这需要时间也需要耐心,同时还必须乐意做大量的精化工作。

      请牢记:你所遇到的大多数的模式都是现有模式的变体,而非新的模式。

      模式能够为你带来的最大好处之一是:让你的团队拥有共享词汇。

      任何社群都有自己的行话,模式社群也是如此。

      别让这些行话绊着,在读完本书之后,你已经能够应用大部分的行话了。(哈哈,听了好开心啊有木有!)

    重温OO原则:

      封装变化。

      多用组合,少用继承。

       针对接口编程,不针对实现编程。

      为交互对象之间的松耦合设计而努力。

      类应该对扩展开放,对修改关闭。

      依赖抽象,不要依赖具体类。

      只和朋友交谈。

      别找我,我会找你。

      类应该只有一个改变的理由。

    重温设计模式:

      装饰者:包装一个对象,以提供新的行为。

      状态:封装了基于状态的行为,并使用委托在行为之间切换。

      迭代器:在对象的集合之中游走,而不暴露集合的实现。

      外观:简化一群类的接口。

      策略:封装可以互换的行为,并全用委托来决定使用哪一个。

      代理:包装对象,以控制对此对象的访问。

      工厂方法:允许客户创建对象的家庭,而无需指定他们的具体类。

      适配器:封装对象,并提供不同的接口。

      观察者:让对象能够在状态发生改变时被通知。

      模板方法:由子类决定如何实现一个算法中的步骤。

      组合:客户用一致的方式处理对象集合和单个对象。

      单件:确保有且只有一个对象被创建。

      抽象工厂:由子类决定要创建的具体类是哪一个。

      命令:封装请求成为对象。

  • 相关阅读:
    js 读取XML
    JavaScript DOM 交换节点笔记
    JDBC学习总结 -- JDBC 快速入门 教程
    SQL 语句易错点讲解
    JAVA 他人博客收藏 (To be continue)
    <<MYSQL必知必会>> 入坑指南
    OpenGL 纹理学习总结
    BZOJ 3456 NTT图的计数 容斥
    洛谷1002 容斥原理+dfs OR DP
    51nod1565 FFT
  • 原文地址:https://www.cnblogs.com/laizhd/p/3657643.html
Copyright © 2011-2022 走看看