zoukankan      html  css  js  c++  java
  • 设计模式简记-设计原则之DRY原则

    3.7 DRY原则

    3.7.1 DRY 原则(Don’t Repeat Yourself)

    • 三种代码重复的情况:实现逻辑重复、功能语义重复、代码执行重复。
    • 实现逻辑重复,但功能语义不重复的代码,并不违反 DRY 原则。
    • 实现逻辑不重复,但功能语义重复的代码,也算是违反 DRY 原则。
    • 除此之外,代码执行重复也算是违反 DRY 原则。

    3.7.2 代码复用性

    • 提高代码可复用性的一些方法

      • 减少代码耦合
      • 满足单一职责原则
      • 模块化
      • 业务与非业务逻辑分离
      • 通用代码下沉
      • 继承、多态、抽象、封装
      • 应用模板等设计模式
    • 复用意识也非常重要。在设计每个模块、类、函数的时候,要像设计一个外部 API 一样去思考它的复用性

    • Rule of Three

      第一次编写代码的时候,不考虑复用性;第二、三次遇到复用场景的时候,再进行重构使其复用

    • 辣么大:

      1、注释或者文档违反DRY
      2、数据对象违反DRY

      对于1,例如一个方法。写了好多的注释解释代码的执行逻辑,后续修改的这个方法的时候可能,忘记修改注释,造成对代码理解的困难。实际应用应该使用KISS原则,将方法写的见名知意,尽量容易阅读。注释不必过多。

      对于2、例如类

      class User{
        String id;
        Date registerDate;
        int age;
        int registedDays;
      }
      //其中 age可以由身份证号码算出来,而且每年都会递增。
      //注册会员多少天了,也可以算出来。所以是不是可以考虑,数据只存储id和注册时间。其余两个字段可以算出来。
      
  • 相关阅读:
    Basic Calculator II
    理解与模拟一个简单servlet容器
    括号字符串有效性验证
    理解与模拟一个简单web服务器
    Tomcat日志输出在linux和windows差异
    SqlCommand执行带GO的SQL脚本文件
    《第一行代码》添加百分比布局库依赖问题
    final 和 static之间的区别和联系
    oracle DB 使用注意点小结
    方法重载(method overloading)
  • 原文地址:https://www.cnblogs.com/wod-Y/p/12770463.html
Copyright © 2011-2022 走看看