• 《Head First设计模式》 读书笔记14 真实世界中的模式


      

    《Head First设计模式》 读书笔记14 真实世界中的模式

     

    定义设计模式

      模式是在某情境(context)下,针对某问题的某种解决方案。

      情境就是应用某个模式的情况。这应该是会不断出现的情况。

      问题就是你想在某情境下达到的目标,但也可以是某情境下的约束。

      解决方案就是你所追求的:一个通用的设计,用来解决约束、达到目标。

    设计模式模板

      名称

      意图 Intent

      动机 Motivation

      适用性 Applicability

      结构 Structure

      参与者 Participants

      协作 Collaborations

      结果 Consequences

    组织设计模式

      最广为人知的分类方式,根据模式的目标分成三个不同类目:创建型、行为型和结构型。

      创建型模式涉及到将对象实例化,这类模式都提供一个方法,将客户从所需要实例化的对象中解耦。

      行为型模式,涉及到类和对象如何交互及分配职责。

      结构型模式可以让你把类或对象组合到更大的结构中。

      

      另一种分类方式:模式所处理的是类或对象。

      类模式描述类之间的关系如何通过继承定义。类模式的关系是在编译时建立的。

      对象模式描述对象之间的关系,而且主要是利用组合定义。对象模式的关系通常在运行时建立,而且更加动态、更有弹性。

     

     

    反模式

      反模式(Anti-Pattern)看起来总像是一个好的解决方案,但是当它真正被采用后,就会带来麻烦。

      通过将反模式归档,我们能够帮助其他人在实现它们之前,分辨出不好的解决方案。

      像模式一样,有许多类型的反模式,包括了开发反模式、OO反模式、组织反模式和领域特定反模式。

     

    设计模式的使用

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

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

      总是使用满足需要的最简单的解决方案,不管它用不用模式。

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

  • 相关阅读:
    [iOS] 在Storyboard中使用GHSidebarNav侧开菜单控件
    [iOS] UIScrollView与软键盘配合心得——点击空白处隐藏软键盘(完美方案,不增代码)
    MySQL 表解锁
    centos7 两种定时任务
    代码统计工具git_stats部署
    Linux inode索引节点使用率100%解决
    IKVM 0.42.0.3 .NET平台上的Java实现
    Centos7最小化安装后(minimal)安装图形界面
    服务器linux发行版排名
    word为什么总是出现未响应
  • 原文地址:https://www.cnblogs.com/mengdd/p/3071146.html
Copyright © 2020-2023  润新知