重构与模式(一)

本文深入探讨了重构的概念,将其定义为在不改变软件行为的前提下,优化内部结构的过程。文章阐述了重构的目的、动机,以及如何通过复合重构与测试驱动重构提升代码质量。同时,介绍了设计模式作为前人经验的总结,强调了理解和应用模式的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

重构与模式  


重构


重构就是一种“保持行为的转换”,是一种对软件内部结构的改善,目的是在不改变软件的可见行为的情况下,使其更容易理解,修改的成本更低  
重构过程包括去处重复,简化复杂逻辑和澄清模糊的代码,重构是,需要对代码的无情针砭,以改进其设计。这种改进可能很小,比如只是一个变量名,也可能很大比如合并类。  
重构的动机,比较具有普遍性的就是:
- 新增代码更加容易
- 改善既有代码的设计
- 对代码理解更为透彻
- 提高编程趣味性


复合重构与测试驱动的重构


复合重构是有多个低层次重构组成的高层次重构,也就是说将一个大部分进行拆分,拆成多个小部分进行重构,通过测试来验证他的正确性。
测试驱动的重构,说到这里就不得不提起TDD,先写单元测试,再根据测试写出相应解决代码。这样好的地方是,能确保实现结果正确。  


模式


设计模式不过是将前人的经验总结起来的几种既定的方法。具体的模式在使用过程中是需要根据实际情况进行演变,而不是使用既定的模式套用。  
对设计模式的理解是需要大量的应用,每个开发阶段对模式的理解都是不一样的,完全可以通过重构的方式来实现对模式的理解。  


希望在我下一个3年经验的时候能回头看看再来看一遍设计模式,也许会有不一样的理解

中文版(共6个文件)  本书荣获第15届生产效率大奖!《设计模式》和《重构》之后又里程碑式著作,凝聚众多业界专家经验领悟,帮你打通重构模式任督二脉。   1994年,《设计模式》为我们带来了常见设计问题的经典解决方案,从而改变了整个面向对象开发的面貌。   1999年,《重构》为我们带来了种改进代码的高效过程,从而彻底改变了面向对象设计的方式。   现在,在众所期盼之中,Joshua Kerievsky的《重构模式》第次深入和全面地论述了设计模式的运用演进式的重构过程,并揭示了两者之间至关重要的联系,又次革命性地改变了我们的设计方式。   本书阐述了模式导向重构的理论实践,提出使用模式改善既有设计优于在设计早期使用模式的重要观点。书中包含了27种模式导向重构,每种重构通过系列较小的重构,安全地在设计中实现、趋向和去除模式。实例均出自真实项目的代码。通过本书,读者不仅能够更好地学习和理解模式重构,了解两个领域的新进展和业界最新领悟,还能够学到实战中实现模式的多种方式,学会如何在不同情况下进行选择。   设计模式重构对我们来说早已不是什么陌生的字眼了。1994年,GoF的巨著《设计模式》初次向世人展示了设计模式的魅力。2002年,Martin Fowler的《重构:改善既有代码的设计》则刮起了重构的旋风。记得在《重构》刚刚出版的时候,软件开发界和评论界就赞扬它是本具有设计模式》同等高度的图书。我相信本书的每位读者都和我样,早已收藏了这两本书,反复阅读,仔细品味,并从中获益匪浅。   Ralph Johnson序设计模式书中叙述了使用模式的几种方式。有些人在编写任何代码之前,都要很早地为模式做计划,而有些人在编写了大量代码之后才开始添加模式。第二种使用模式的方式就是重构,因为是要在不增加系统特性或者不改变其外部行为的情况下改变系统的设计。有些人在程序中加入模式,只是因为觉得模式能够使程序更容易修改;更多人这样做只是为了简化目前的设计。如果代码已经编写,这两种情形都是重构,因为前者是通过重构使修改更容易,而后者则是通过重构在修改后进行整理。虽然模式是在程序中能够看到的东西,但是模式也是种程序转换。
本书开创性地深入揭示了重构模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了种应用模式重构的创新方法,而且有助于读者结合实战深入理解重构模式。书中讲述了27种重构方式。.    本书适于面向对象软件开发人员阅读,也可作为高校计算机专业、软件工程专业师生的参考读物。    1994年,《设计模式》为我们带来了常见设计问题的经典解决方案,从而改变了整个面向对象开发的面貌。    1999年,《重构》为我们带来了种改进代码的高效过程,从而彻底改变了面向对象设计的方式。..    现在,在众所期盼之中,joshua kerievsky的《重构模式》第次深入和全面地论述了设计模式的运用演进式的重构过程,并揭示了两者之间至关重要的联系,又次革命性地改变了我们的设计方式。    本书阐述了模式导向重构的理论实践,提出使用模式改善既有设计优于在设计早期使用模式的重要观点。书中包含了27种模式导向重构,每种重构通过系列较小的重构,安全地在设计中实现、趋向和去除模式。实例均出自真实项目的代码。通过本书,读者不仅能够更好地学习和理解模式重构,了解两个领域的新进展和业界最新领悟,还能够学到实战中实现模式的多种方式,学会如何在不同情况下进行选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值