我们团队中的许多开发人员都避免重构。对这种情况的讨论揭示了以下原因。
为什么许多人不重构
吓坏现有功能
耗时:如果您重构的代码发生更改,那么从主分支合并(多次)会很麻烦
可能没有按时完成任务
同时,重构几乎是开发过程中不可或缺的一部分。它的需要与以下先决条件有关:
最初的需求几乎永远不会完成,并且开发是根据某些假设进行的,其中一些假设后来被证明是不正确或不准确的
通常,您需要进行快速编辑以使其在当前和现在运行,而无需考虑进一步的支持
需要重构时(需要)
我看到以下更改代码结构的原因:
重复代码
拥有重复代码的理由很少,通常,您需要摆脱它
普遍化
为了使您的代码更易于理解并减少操作问题,您通常可以创建将相似代码组合在一起的抽象。此抽象至少要有3个原型很重要,否则可能不准确
, GooglePay. , ApplePay SamsungPay . VendorPay
,
/
, 50 500 ,
: , , .
, . , , , , . , () , .
?
, , :
(unit )
-
, -
feature- master' .
, , , . , , , . , , .
- (- + ) , , ( master'), - - .
, master rebase - master.
这种方法会产生一些开销,但减轻了重构的主要困难:
审查和合并重构并不是那么令人恐惧,因为它基本上不会带来功能上的变化,或者这些功能上的变化在一个很小的请求中就清晰可见
无需支持其他开发人员的更改,因为更改几乎立即被合并到主分支中
如果是最后期限,则可以在接下来的两到三天的周期后停止进行重构