我被分配了识别重构项目的任务。目的是查看表示层代码并确定是否存在任何编码的业务逻辑。然后确定需要移动到服务/业务层的内容以及演示文稿中剩余的内容。 我在设计中看到的代码似乎没有使用任何设计模式;有单一的代码块,几乎没有任何或无用的评论。对于我如何能够完成这项任务有什么建议 - 哪些方法有效?
目前我正在尝试逆向工程并理解哪些似乎是实现此任务的难点。 此活动的目的是重用业务逻辑。
答案 0 :(得分:2)
摘自Sandro Mancuso的好视频[1]
开始从最短到最深的分支建立测试。
从最深到最短的分支开始重构,
[1] http://www.youtube.com/watch?feature=player_embedded&v=_NnElPO5BU0#!
并且,为了指导您在哪里进行重构,请考虑责任:“此代码是否负责/知道其他代码”?
答案 1 :(得分:1)
首先构建安全网 - 对现有类和方法进行单元测试,以证明其正常运行。如果你成功了,你将能够一次重构一次并且仍然可以通过单元测试。
单元测试需要您对自己的部分有深刻的理解,这在您重构时会派上用场。
以小步骤完成:重构,测试,重复。
另一个想法是尽可能尝试引入接口。如果你能隔离客户,这些将作为变革的火灾中断。
获得支持重构的好IDE。如果您正在编写Java,我建议使用IntelliJ。它是最好的IDE,它支持很好的重构。