重构大型C++函数

Jus*_*ier 4 refactoring visual-c++

在工作中,我们有一个用Visual C++编写的遗留流程,它基本上由一个5000行功能组成.从本质上讲,程序只是一个大案例陈述,具有类似的剪切和粘贴代码,处理大量的案例逻辑.显然,我们希望重构此代码以将这些情况提取到单独的函数(或对象)中,并消除任何剪切和粘贴的代码.

我的问题是 - 有没有关于这种规模的重构努力的建议?是否有可以简化流程的自动化工具?

pax*_*blo 6

我的第一步是采取一些较大的案例,并首先将它们分成不同的功能.这将减少视觉混乱的开始,使您更容易进行下一阶段.

其次,确定不同案例的共性,并创建广义函数来代替它们.在一定程度上.如果你走得太远,你将拥有一个与你当前的switch语句一样糟糕的通用函数:-)

我从来没有见过一种工具可以做到头骨内部海绵状物质的一半工作.我建议只使用它.