`

常用的软件设计原则-DRY

阅读更多

架构设计必须遵循一些原则,这个原则是经过很多年先辈们的总结,好的架构,必须先了解好的软件设计原则,遵循这些原则可以做出更好的架构。

 

今天首先讨论DRY-Don't repeat yourself

DRY 也被称之为DIE,复制即是魔鬼,在我们软件开发过程中,会经常遇到这个问题,copy&paste。

 

DRY 是一个最简单的法则,也是最容易被理解的。但它也可能是最难被应用的(因为要做到这样,我们需要在泛型设计上做相当的努力,这并不是一件容易的事)。它意 味着,当我们在两个或多个地方的时候发现一些相似的代码的时候,我们需要把他们的共性抽象出来形一个唯一的新方法,并且改变现有的地方的代码让他们以一些 合适的参数调用这个新的方法。

 

重复有下面的问题:

1.为了增加功能或者修改bug,我们需要在重复代码的地方应用相同修改,这个是非常糟糕的体验。

2.不利于测试,如果相同的代码应用在不同的类里,导致测试代码的重复。

3.不利于阅读和维护

4.代码重复可能会造成性能等诸多问题,比如产生了许多重复的对象。

 

 


参考:http://en.wikipedia.org/wiki/KISS_principle

 

分享到:
评论

相关推荐

    前端开源库-json-dry

    **压缩包子文件的文件名称列表:** "json-dry-master" 这个文件名暗示了这是项目的主要分支或者源码仓库,通常在Git版本控制系统中,“master”分支代表项目的主线代码。在解压后,这个目录可能包含了项目的所有源...

    软件开发的201个原则 -- 中文版.zip

    4. **DRY(不要重复自己)原则**:避免代码重复,通过重用和模块化来提高代码复用性。 5. **SOLID原则**: - **单一职责原则**:每个类或模块应有一个明确的职责,避免职责过多导致复杂性增加。 - **开闭原则**:...

    一些软件设计的原则一些软件设计的原则

    【软件设计原则详解】 在软件开发领域,遵循一系列设计原则对于构建高质量、可维护和易于扩展的系统至关重要。以下是一些关键的软件设计原则,它们不仅适用于编程,还能应用于更广泛的生产活动和生活。 1. **Don’...

    软件开发设计原则软件开发设计原则

    在软件开发过程中,设计原则是指导开发者构建高效、可维护和扩展软件系统的重要准则。这些原则不仅提高了代码质量,还能确保团队之间的沟通清晰,降低维护成本。以下将详细阐述一些核心的软件开发设计原则。 1. **...

    软件工程中的软件设计原则与模式教程1.pptx

    ### 软件工程中的软件设计原则与模式 #### 第一章:软件设计原则的重要性 在软件工程领域,软件设计原则对于构建高质量、高效率的软件系统至关重要。本章节将重点介绍软件设计原则的重要意义,并深入探讨几种核心...

    软件工程中的设计原则与模式.pptx

    ### 软件工程中的设计原则与模式 #### 第一章:软件工程概述 ##### 软件工程的定义及历史 - **定义**:软件工程是指应用系统化、规范化和可量化的技术和方法来进行软件的开发、运行和维护的过程。它强调的是将...

    软件工程中的软件设计原则与模式1.pptx

    ### 软件工程中的软件设计原则与模式 #### 第一章:软件设计原则与模式概述 ##### 软件设计原则介绍 软件设计原则是在软件开发过程中为提高软件的质量和可维护性而遵循的一系列设计准则。这些原则旨在帮助开发...

    软件工程中的软件设计原则与模式教程.pptx

    ### 软件工程中的软件设计原则与模式教程 #### 第1章 软件设计原则的重要性 在软件工程领域,软件设计原则是构建高质量软件系统的基础。这些原则旨在指导开发者设计出健壮、可维护且易于扩展的系统。本章节重点...

    软件工程中的软件设计原则与模式讲解详评.pptx

    ### 软件工程中的软件设计原则与模式详解 #### 第一章:软件工程概述 **1.1 软件工程简介** 软件工程是一门跨学科领域,它结合了计算机科学、工程学以及管理学等多个领域的知识和技术,旨在解决软件开发过程中...

    软件工程中的软件设计原则与模式.pptx

    ### 软件工程中的软件设计原则与模式 #### 第1章 软件设计原则与模式概述 **软件设计原则介绍** 软件设计原则是指在软件开发过程中为提高软件的质量和可维护性而遵循的一系列设计准则。这些原则主要包括: 1. **...

    软件设计师126-145

    在"软件设计师126-145"中,可能涉及到了设计原则和模式,如DRY(Don't Repeat Yourself)、KISS(Keep It Simple, Stupid)和YAGNI(You Aren't Gonna Need It)。这些原则有助于保持代码的简洁性和可维护性。此外,...

    软件工程中的软件设计与重构技术.pptx

    - **软件设计原则**: - **DRY(Don't Repeat Yourself)原则**:避免代码重复,提高代码可维护性。 - **KISS(Keep It Simple, Stupid)原则**:设计应尽可能简洁明了。 - **YAGNI(You Aren't Gonna Need It)...

    99丨总结回顾:在实际软件开发中常用的设计思想、原则和模式1

    设计原则是评价代码质量的重要标准,如SOLID原则、DRY(Don't Repeat Yourself)原则、KISS(Keep It Simple, Stupid)原则、YAGNI(You Aren't Gonna Need It)原则和LOD(Law of Demeter)原则。SOLID原则包括单一...

    餐饮系统-软件设计.rar

    此外,面向对象的设计原则,如单一职责、开闭原则、里氏替换、依赖倒置等,也是构建高质量系统的关键。 在实现过程中,代码的编写应当遵循良好的编程习惯,包括但不限于:合理的命名规范、注释清晰、避免重复代码...

    软件设计原则

    软件设计原则 软件设计原则是软件开发中遵循的一些基本原则和指导思想,它们指导开发者如何设计、编写和维护软件系统。以下是软件设计原则的详细介绍: 1. 避免重复原则(DRY – Don’t repeat yourself) 避免...

    软件设计师教程(第4版)-全套

    2. **设计原则和最佳实践**:介绍 SOLID 原则,以及其他设计原则,如DRY(Don't Repeat Yourself)、KISS(Keep It Simple, Stupid)等,以及如何在实际开发中遵循这些原则。 3. **软件质量与维护**:探讨软件的可...

    软件工程中的设计原则.pptx

    #### 第二章:软件设计原则 **SOLID原则:** - **单一职责原则(Single Responsibility Principle, SRP):** 一个类应该只有一个引起变化的原因。 - **开放封闭原则(Open/Closed Principle, OCP):** 对扩展开放...

    2009年下半年软件设计师考试真题及参考答案

    * 软件设计原则:SOLID原则、DRY原则、KISS原则等 * 软件设计方法:面向对象设计、结构化设计、基于架构的设计等 例如,第1题的答案是B,考察了软件设计模式的知识点,即工厂模式的应用场景。 二、软件开发 软件...

    代码的抽象三原则-阿沐1

    其次,YAGNI原则源自极限编程(Extreme Programming),它提倡只实现当前真正需要的功能,避免过度设计。这一原则提醒开发者不要预先考虑可能但尚未确定的需求,因为这些功能可能永远不会被使用。快速迭代,保持代码...

    OO设计原则总结

    这些原则旨在解决常见的软件设计问题,如耦合度高、代码重复、不易于扩展等问题。 #### 基本原则 - **封装变化(Encapsulate what varies)**:识别系统中的可变因素,并将其封装起来,以减少变化对整个系统的影响...

Global site tag (gtag.js) - Google Analytics