我被分配了识别重构项目的任务。目的是查看表示层代码并确定那里是否有任何业务逻辑编码。然后确定需要移动到服务/业务层的内容以及呈现中的内容。我按设计查看的代码似乎没有使用任何设计模式;有几乎没有任何或无用注释的单片代码块。对我如何完成这项任务有什么建议 - 哪些方法有效?
目前,我正在尝试进行逆向工程并了解这似乎是完成这项任务的艰难方法。此活动的目的是重用业务逻辑。
我被分配了识别重构项目的任务。目的是查看表示层代码并确定那里是否有任何业务逻辑编码。然后确定需要移动到服务/业务层的内容以及呈现中的内容。我按设计查看的代码似乎没有使用任何设计模式;有几乎没有任何或无用注释的单片代码块。对我如何完成这项任务有什么建议 - 哪些方法有效?
目前,我正在尝试进行逆向工程并了解这似乎是完成这项任务的艰难方法。此活动的目的是重用业务逻辑。
摘自 Sandro Mancuso 的这段精彩视频 [1]
开始从最短到最深的分支构建测试。
从最深到最短的分支开始重构,
[1] http://www.youtube.com/watch?feature=player_embedded&v=_NnElPO5BU0#!
并且,为了指导您在哪里重构,请考虑责任:“这段代码是否有责任执行/了解另一段代码”?
首先构建一个安全网 - 为现有的类和方法编写单元测试,以证明它们的正确操作。如果你成功了,你将能够一次重构一点,并且仍然可以通过单元测试。
单元测试需要您深入了解,这将在您重构事物时派上用场。
分小步进行:重构、测试、重复。
另一个想法是尝试在可能的地方引入接口。如果您可以隔离客户,这些将充当更改的防火线。
获得一个支持重构的好 IDE。如果您正在编写 Java,我建议您使用 IntelliJ。它是目前最好的 IDE,它非常支持重构。