zoukankan      html  css  js  c++  java
  • 演义群侠传(十)【重学设计模式】

    总以为自己明白了。。。。。。

    注:设计模式和设计原则的说明

    1、命名规范不用说了;逻辑和输出界面分离,就是封装一个方法;业务的封装成一个个类;简单的工厂类//学会看UML图

    2、何为简单工厂模式?

    简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类,否则返回object。它又称为静态工厂方法模式。简单工厂模式实质上是由一个工厂类根据传入的参数,动态决定一个应该创建哪产品类。

    3、何为策略模式?

    策略模式(Strategy Pattern),定义了一系列的算法,将每一种算法封装起来并可以相互替换使用,策略模式让算法独立于使用它的客户应用而独立变化。

      对于Strategy模式来说,主要有如下优点:

      1>  提供了一种替代继承的方法,而且既保持了继承的优点(代码重用)还比继承更灵活(算法独立,可以任意扩展)。

      2>  避免程序中使用多重条件转移语句,使系统更灵活,并易于扩展。

      3>  遵守大部分GRASP原则和常用设计原则,高内聚、低偶合。

      对于Strategy模式来说,主要有如下缺点:

      1>  因为每个具体策略类都会产生一个新类,所以会增加系统需要维护的类的数量。

    4、单一职责原则:通过职责划分类,比如界面和逻辑

    5、开放封闭原则:对于扩展是开放的,对于修改时封闭的

    6、依赖倒转原则:抽象不应该依赖细节,细节应该依赖抽象;就是对电脑系统接口编程,而不是针对具体品牌编程

    7、继承接口必须实现所有方法和属性

    8、装饰模式:重要在于传入对象、super使用

    9、代理模式【最常用的模式】:通过代理访问其他对象

    10、工厂模式vs简单工厂模式:创建工厂模式接口,然后继承,生成工厂模式实例,客户端实现;对扩展开放,对修改关闭

    11、迪米特法则:在类的结构设计上,每一个类都应当尽量降低成员的访问权限。

    12、外观模式:为子系统中的一组接口提供一个一致的界面。

    13、观察者模式:当一个对象的改变需要同时改变其他对象的时候使用,而不知道有多少对象需要改变;plus委托模式就是puremvc了,也就是facade注册

    14、状态模式:就是说将不同的状态封装成为不同的类,根据状态不同类之间转换。

    15、单例模式:保证一个类仅有一个实例,并提供一个访问他的全局访问点。

    16、命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;

    17、待续

  • 相关阅读:
    c# 门禁随笔
    DataTable到Access
    C#文件上传
    C#操作文件
    JavaScript 全局封装
    jsavascript 目录的操作(摘抄)
    12-STM32 ADC原理
    11-STM32 高级定时器TIM1/8
    10-STM32 基本定时器TIM
    9-STM32 WWDG窗口看门狗
  • 原文地址:https://www.cnblogs.com/tinytiny/p/2846624.html
Copyright © 2011-2022 走看看