美文网首页
[6]Shotgun Surgery[散弹式修改]

[6]Shotgun Surgery[散弹式修改]

作者: rxdxxxx | 来源:发表于2015-12-20 20:18 被阅读207次

Shotgun Surgery[散弹式修改]


Shotgun Surgery类似Divergent Change, 但恰恰相反. 如果没遇到某种变化.你都必须再许多不同的类内做出许多小修改, 你所面临的坏味道就是Shotgun Surgery. 如果需要修改的代码散布四处,你不但很难找到它们,也很容易忘记修改某处重要的修改.

这种情况应该使用Move MethodMove Field把所需要修改的代码放进同一个类.如果眼下没有合适的类可以安置这些代码,就创造一个.通常可以运用Inline Class把一系列相关行为放进同一个类. 这可能造成少量Divergent Change, 但你可以轻易处理它.

Divergent Change是指"一个类受多种变化的影响", *Shotgun Surgery则是指"一种变化印发多个类相应修改". 这两种情况下你都会希望整理代码,使得"外界变化"与"需要修改的类"趋于一一对应.

相关文章

网友评论

      本文标题:[6]Shotgun Surgery[散弹式修改]

      本文链接:https://www.haomeiwen.com/subject/bmlmhttx.html