重构第二章:重构的原则

第二章主要说明了重构的原则,也就是应该怎么做、为什么要做的问题,咱们把编程可以想象成一场魔法演奏会,每一段代码都是魔法师们弹奏的音符。然而,有时候这个魔法世界可能会变得有点混乱,代码像个调皮捣蛋的小精灵,让人有点摸不着头脑。于是,登场的就是重构,就像是给这场魔法演奏会做了一次华丽的变奏。

1.为啥得搞重构?

重构可不仅仅是修修补补或者优化代码这么简单。它就像是一场不停调整音符的魔法演奏,时刻迎合变化的旋律。通过这个过程,我们的代码就变成了悠扬动听的旋律,易懂、好扩展,还能提高软件的质量和维护起来也轻松多了。

2.两个角色:新增功能和改头换面

想象一下我们是音乐大师,需要穿上两个帽子:一个是"加新魔法"的帽子,另一个是"改头换面"的帽子。这两者并不矛盾,反而像是魔法的主旋律和伴奏,互相呼应,共同营造出华美的编程音乐。

3.何时施展魔法?

当代码就像是个调皮的小精灵,需要你在旁边不断解释时,或者嗅到了一些奇怪的味道(Bad Smells),或者准备修复一些小错误时,说不定这就是给代码来个变奏的好时机。掌握何时施展魔法,就像是在演奏的时候掌握音乐的脉搏,准确而有趣。

4.安全的魔法

安全的魔法就是在变奏的时候不搞砸整个魔法秀。为了确保安全,得像为演奏准备可靠的乐谱一样,建立结实的测试体系。而小步骤的魔法则是每次只微调一下,确保整个魔法秀一切正常。

5.学会这门魔法

学会这门魔法就像是逐渐成为了一个魔法大师,是一个渐进的过程。通过小步骤的魔法,你可以培养出对这场编程魔法的感觉和技能。实际的实践经验就像是魔法演出,只有在真正的项目应用中,你才能真正理解何时以及如何运用各种魔法技术。

6.施展魔法的核心原则

复制代码
持续施法: 重构就是不停施法的过程,而不是一次性的任务。它贯穿于整个编程的魔法演奏会。

安全施法: 安全的魔法就是变奏时不让观众感受到任何异常。建立可靠的测试体系就像是确保魔法表演安全的防护罩。

时机抓住: 了解何时施法至关重要。奇怪的味道出现、魔法需求变更等都可能是施法的好时机。

两者齐飞: 加新魔法和改头换面并不矛盾,它们像是编程的旋律与伴奏,相辅相成,通过不断的魔法变奏,代码得以悠扬地演化。

学以致用: 通过实践中的学习,逐步掌握魔法的技艺。小步骤的魔法就像是不断练习魔法技能,是学习的有效策略。

各位法师请好~~我们跟着马先生(Martin Fowler)继续看他如何将我们引导成一个好法师。

相关推荐
卡奥斯开源社区官方3 小时前
多模态革命!拆解夸克AI相机技术架构:如何用视觉搜索重构信息交互?(附开源方案对比)
人工智能·重构
说私域15 小时前
开源AI智能名片链动2+1模式S2B2C商城小程序源码赋能下的社交电商创业者技能跃迁与价值重构
人工智能·小程序·重构·开源·零售
路人与大师1 天前
基于大模型底座重构司法信息系统
重构
文火冰糖的硅基工坊1 天前
[创业之路-390]:人力资源 - 社会性生命系统的解构与重构:人的角色嬗变与组织进化论
重构·架构·管理·公司·战略
说私域1 天前
基于开源技术体系的品牌赛道力重构:AI智能名片与S2B2C商城小程序源码驱动的品类创新机制研究
人工智能·小程序·重构·开源·零售
高峰君主1 天前
数字巴别塔:全栈多模态开发框架如何用自然语言重构软件生产关系?
重构
高峰君主1 天前
全栈量子跃迁:当Shor算法破解RSA时,我们如何用晶格密码重构数字世界的信任基岩?
重构
九河云1 天前
汽车制造行业如何在数字化转型中抓住机遇?
科技·重构·云计算·汽车·制造
riveting2 天前
SD2351核心板:重构AI视觉产业价值链的“超级节点”
大数据·linux·图像处理·人工智能·重构·智能硬件
Hello kele2 天前
解构与重构:“整体部分”视角下的软件开发思维范式
大数据·经验分享·程序员·重构·项目管理·人月神话·沟通困局