• 设计模式简记-设计原则之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和注册时间。其余两个字段可以算出来。
      
  • 相关阅读:
    [转][c#]C# 二维数组到底该如何定义?
    [c++]筛法求素数
    USB驱动问题
    使用Ajax.dll前台调用后台方法及错误示例
    asp.net中前台javascript与后台C#交互
    visual stdio2010 生成的缓存文件
    jQuery.ajax概述[转]
    一种正向最小匹配的中文分词算法
    2010 .NET面试题整理之基础篇[转]
    Winform设计不规则窗体
  • 原文地址:https://www.cnblogs.com/wod-Y/p/12770463.html
Copyright © 2020-2023  润新知