zoukankan      html  css  js  c++  java
  • 设计模式-单一职责原则

    1.单一职责原则

      单一职责原则:改变仅因为一个因素

      《设计模式之禅》,作者提到有人写了个这样的接口

    void changeUser(UserOB userOB,changeOptions option);

      不如分开写

    void changeUserName(String userName);
    void changeUserAddress(String address);
    void changeUserTel(String Tel);

      虽然如作者提到的,下面的替代上面的,到底是不是应该替换呢?看的代码不够多,不知道……

      在我看的HGE的引擎代码中,作者是将两者结合,对外提供第一种接口,对内实现的过程中会将不同的分开写成第二种形式的函数,内部调用。

      那么是喜欢这种

    changeUser(USER_NAME,"lily");
    changeUser(USER_ADDRESS,"heave");
    changeUser(USER_TEL,"138XXXXXX110");

      还是喜欢这种

    changeUserName("Tom");
    changeUserAddress("hell");
    changeUserTel("189XXXXXX911");
    • 对于扩展功能而言,明显上面的不够好,因为要修改changeUser函数
    • 如果要修改相对应的change函数,则上面那种要修改changeUser和对应的change函数

     --151120

  • 相关阅读:
    Map集合
    Collection的另外一个子类LinkedList&Set集合
    多项式牛顿迭代 学习笔记
    《混凝土数学》第二章 和式 学习笔记
    洛谷P5039 最小生成树 题解
    gdfzoj#236 | 提高组练习题16 Set
    CF979E 题解
    CF1039D 题解
    CF886E 题解
    CF1061C 题解
  • 原文地址:https://www.cnblogs.com/yoru/p/4981586.html
Copyright © 2011-2022 走看看