我有一个关于重构的问题。 我想检查一下在更改后系统和对象的状态是否相同。 由于系统类型,我不能同时创建相同的2个对象,而是一个接一个地创建。对象很大。
我想将它们序列化为一个文件并进行比较。
答案 0 :(得分:1)
我的第一个想法是回到重构规则。
虽然我没有使用它,但Orsol的答案(Object Comparison API)听起来很有希望(问题1)。至于序列化路径,.NET包装器应该可以帮助处理序列化对象,但最终可能会破坏自动生成的代码,因此这是一个短期解决方案。序列化到文件和比较是一个短路径选项。
我仍然认为花时间设置单元测试是一项值得的练习,即使您未来计划再次重构(或扩展,更改等)代码。
答案 1 :(得分:0)
答案 2 :(得分:0)
是的,如果你想重构你的代码,首先要有一个测试安全网。然后,尝试重建婴儿步骤。
有时候,你知道你想重构什么;然而,很多次你不知道要重构什么(虽然,你可能会猜测出错了)。在这种情况下,您可以使用设计气味检测工具,例如Designite。