原文:大话重构 之 防止“加个需求,到处改代码”

上一篇 职责单一原则真的简单吗 中我们认识了 发散式变化 ,它是一个类包含多个维度的变化,职责不单一。本文讨论的代码坏味道是 散弹式修改 ,与 发散式变化 恰好相反,一个维度的变化涉及到多个类。 在商业项目开发过程中,经常会碰到 加个需求,到处改代码 的情况,也就是 散弹式修改 ,典型后果是漏改某些地方,导致整个系统表现不一致。 要解决 散弹式修改 ,对重构 设计技能有较高要求。一如既往,一码上个 ...

2015-07-01 05:57 10 2968 推荐指数:

查看详情

大话重构 之 解决万恶之首“重复代码

排在坏味道之首的是重复代码。为什么它如此臭名昭著?各位看客可以看《消除坏味道》系列的开篇文章《重构,企业级应用的圣经》,本文不再重复说明,仅引用其中的观点: 提示:对于任何事物,代码中只应该出现一次,而且是唯一的一次。 下面我们将介绍如何消除几种典型的重复代码,以及如何培养消除重复 ...

Wed May 20 17:41:00 CST 2015 0 4507
大话重构 之 消除巨无霸类

当你看到别人写的超过千行的巨无霸类,以及随着时间的累积,自己写的类也稳步迈向巨无霸的时候,是不是既恐惧又无奈?一码今天就带小伙伴们征服巨无霸,打造属于自己的成就感。 过长类的缘由 当业务逻辑随着时 ...

Wed Jun 03 17:16:00 CST 2015 11 2484
大话重构 之 答读者问

越来越多人关注《大话重构》系列,一码感谢大家的支持。从系列开始到现在,有提出疑问的,有说好的,有说坏的,一码在此一并回答。 问:单篇篇幅长,知识点多,看起来很吃力 答:如果觉得有难度,不要气馁,你学习的机会就在眼前。《大话重构》的每篇文章都针对一种代码坏味道,务求讲清“坏”在哪儿,有哪些方法 ...

Tue Jun 09 02:37:00 CST 2015 8 838
大话重构 之 原来反OO天天见

在OO(面向对象)时代长大的小伙伴们一定记得: 面向对象的基石:把数据和依赖该数据的行为封装在一起。 但我们经常遇到一个类依赖其它类的数据的情况。不多的话,正常,对象间势必存在交互,毕竟 ...

Thu Jul 23 09:02:00 CST 2015 2 1504
大话重构 之 消除过长方法

在面向对象程序中活的最好最长久的是短方法。对于新手而言,很困恼面向对象的程序中完全找不到计算逻辑,反而是无穷无尽的方法调用,但是当你习惯面向对象后就会了解到短方法的价值所在。 短方法的价值 从较早 ...

Mon May 25 15:49:00 CST 2015 2 1831
代码重构:函数重构规则

转:https://www.cnblogs.com/ludashi/p/5223241.html 重构是项目做到一定程度后必然要做的事情。代码重构,可以改善既有的代码设计,增强既有工程的可扩充、可维护性。随着项目需求的不断迭代,需求的不断更新,我们在项目中所写的代码也在时时刻刻的在变化之中 ...

Thu Jun 20 04:51:00 CST 2019 0 744
代码重构(二):类重构规则

在上篇博客《代码重构(一):函数重构规则(Swift版)》中,详细的介绍了函数的重构规则,其中主要包括:Extract Method, Inline Method, Inline Temp, Replace Temp with Query, Introduce Explaining ...

Mon Mar 07 17:19:00 CST 2016 4 5241
代码重构(三):数据重构规则

在《代码重构(一):函数重构规则(Swift版)》和《代码重构(二):类重构规则(Swift版)》中详细的介绍了函数与类的重构规则。本篇博客延续之前博客的风格,分享一下在Swift语言中是如何对数据进行重构的。对数据重构是很有必要的,因为我们的程序主要是对数据进行处理。如果你的业务逻辑非常复杂 ...

Mon Mar 14 17:48:00 CST 2016 0 3003
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM