破解遗留系统快速重构的5步心法(附实例)

前两天和一个架构师朋友闲聊,说到了 「重构」 这个话题,他们公司早年间上线的项目系统,因一直没专人在演进过程中为代码质量负责,导致现在代码越来越混乱,逐渐堆积成“屎山”,目前的维护成本已远高于重新开发一套新系统,想重构也没有合适的人力物力以及时机,只能继续凑合用。说实在的,这确实不只是朋友他们一家公司会遇到的问题,而造成这种情况的原因大概率有以下几点:

  • 编码之前缺乏有效的设计
  • 成本上的考虑,在原功能堆砌式编程
  • 缺乏有效代码质量监督机制

可以看出,最好的解决办法就是不要堆积遗留问题。对此,业界现有的比较“成熟”的解决思路是:通过持续不断地重构将代码中的“坏味道”清除掉。 可惜说起来容易,做起来却很难,要克服遗留系统重构往往有三大阻力:首要的就是怕出错,不知道怎样保障重构的安全性和效率,其次,很多遗留系统规模及业务复杂度太高 开发人员又缺乏改造的方法及经验,根本不知从何入手 而且如果修改只是单单停留在代码层面上,很难彻底解决问题,从而提高研发效率和提高产品质量。 后来我们扒了不少文章,终于看到一个不错的,一针见血地指出了三个关键点:自动化、系统化及工程化 简单来讲,就是要先通过自动化重构提高开发效率,再通过系统的流程方法,逐一击破,最后通过工程化管理,持续演进,如下图所示。破解遗留系统快速重构的5步心法(附实例)_第1张图片

分享人是 Thoughtworks 资深咨询师、也是中国区 DTO 团队敏捷技术教练**「黄俊彬」**。最近极客时间还特意邀请他做了一个重构系统专栏—— 大型

你可能感兴趣的:(Android,重构,Android,架构,自动化)