实践《重构与模式》(C++)——开篇(一)

本文探讨了重构的概念,强调其重要性在于改善代码设计,提高可读性和编程趣味性。作者引用了Martin Fowler的定义,阐述了重构的动机和过程。同时,介绍了模式的定义,指出模式应当帮助简化代码,提高灵活性,但过度设计需避免。最后,讨论了重构与模式的关系,认为两者相辅相成,是提升软件设计质量的关键。

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

何谓重构

重构就是一种”保持行为的转换“,或者如Martin Fowler定义的那样:重构时一种对软件内部结构的改善,目的是在不改变软件的可见行为的情况下,使其更易理解,修改成本更低。
重构过程包括去除重复、简化复杂逻辑和澄清模糊的代码。重构时,需要对代码无情地针砭,以改进其设计。这种改进可能很小,小到只是改变一个变量名;也可能很大,大到合并两个类层次。

  • 重构的动机:
    • 使新代码的增加更加容易 :补齐设计欠账,这个迟早是要还的。
    • 改善既有代码的设计:持续改善代码的设计,代码将越来越容易处理。
    • 对代码理解更加透彻:代码本身不清晰,就说明存在坏味。通过重构消除,而不是用注释掩饰。
    • 提高编程的趣味性:编程本身就是一件具有创造性、趣味性的事情,而重构将其放大。
  • 可读性好的代码:读起来像自然语言,将重要的代码与分散注意力的代码分离开来。

傻瓜都能写出计算机可以理解的代码。唯有能写出人类容易理解的代码的,才是优秀的程序员。
——Martin Fowler

保持代码清晰就像保持房间整洁。一旦你的房间变得乱七八糟,就更难清理了。变得越乱,就越不想清理。直到某一天乱到你忍受不下去,不得不花费大量的时间和精力进行整理。要保持代码清晰,必须持续地去除代码,简化和澄清代码。决不能容忍代码中的脏乱,决不能把代码置于“焦油坑”的险境(《人月神话》)。
重构最好是持续而不是分阶段地进行。持续性的重构也更符合敏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值