zoukankan      html  css  js  c++  java
  • 设计模式概述

    一、模式

      模式描述的是重复发生问题的解决方案。设计模式是面向对象设计领域的葵花宝典。(无招八式)

           设计模式组成的核心有:

    • 名称

      名称是设计模式的代号,用来标识设计模式,同时也隐含了模式的问题、设计方案、效果等信息。
    • 问题

      问题即时模式的应用场景,问题是病,模式就是对症下的药。理解问题可以更好的实践模式。
    • 解决方案

             解决方案描述了模式是如何解决问题的,针对的是问题的抽象分析和解决方法,而不是具体实现。按照解决方式组合出来的效果也需要权衡,做什么都是有代价的


          设计模式一书将模式分为创建型模式、结构型模式、行为型模式。
          设计模式有两个特点,可复用,作用域是面向对象的设计。

    二、设计模式之道

       设计模式之道在与找到变化,封装变化。
       找到变化回答了where,即在哪里使用设计模式。
               封装变化回答了why,即为什么使用设计模式以及使用哪个设计模式。

    三、设计原则

       设计原则和设计模式是互补的,体现在,设计原则用来指导类的定义的设计,而设计模式主要用来指导类的行为的设计。
       solid的原则


    设计原则英文名称 名称 说明
    SRP 单一职责原则 一个类只承担一种责任,否则就进行拆分。一生爱一人嘛
    OCP 开放封闭原则 对扩展开放,对修改关闭。可以认识其他异性,但是不能换恋人
    LSP 里氏替换原则(老色批原则) 继承关系时,父类对象可以由任意子类对象进行替换,结果不会发生变化(##)
    DIP 依赖倒置原则 高层模块不应该依赖低层模块,都依赖于抽象。 抽象和细节犹如白蛇和白素贞的区别
    ISP 接口隔离原则 接口设计尽量的小,方法尽量集中。不要大杂烩,尽量白开水。主要原因是实现接口类的负重会降低。(##)

      

  • 相关阅读:
    VueH5页面中input控件placeholder提示字默认颜色修改与禁用时默认字体颜色修改
    Vue页面内公共的多类型附件图片上传区域并适用折叠面板
    怎么通过CSS选择器采集网页数据
    web端生成pdf
    echart基础地图写法
    常用软件工具收藏
    iframe嵌套页面访问被拒绝
    使用httpserver开启一个本地服务器
    npm 的 unsafeperm 参数是有何作用呢?
    微信模板通知内容换行显示 Bing
  • 原文地址:https://www.cnblogs.com/Xilan/p/15046861.html
Copyright © 2011-2022 走看看