谈软件-Java重构案例之Switch_Statements
1.软件重构,大量swich语句如何重构
2.使用 ide 使用 快捷键ctrl+alt+shift+T调出重构菜单,选择method对之前的for循环重构一个method
3.得到一个新的方法,使用新的单元测试用例对新的方法进行覆盖,(重构是对原有代码的修改,所有一定要加单元测试用例,保证准确性,而且是一步步优化)
4.对新的方法打桩测试,构造对应的参数,并且调用原有方法,使用assert判断
5.对switch case 进行抽取一个方法,使用ctrl+atl+M抽取。
6.抽取完成后,同样新加一个此方法的用例
7.对case里面的语句构造一个抽象的工厂类
8.分别对不同的case写出接口的实现
9.建立一个工厂类,并提供一个公有的方法,用于创建不同case对应的obj对象。
WorkfileParamBuilder builder = BuilderFactory::createBuilder(entiy.getKey);
10.注意,每一步的修改都需要跑用例
11.小结:
坏味道:swich statement
重构步骤:swich case -> 提取方法-> UT覆盖-> 抽取接口-> 搬移方法->简单工厂模式->UT验证
IDE快捷键
ctrl+alt+shift+t重构菜单
ctrl+alt+M抽取方法
ctrl+alt+N内联
shift+F6重命名
Alt+Insert:创建(class,interface)
Ctrl+shift+T 创建测试类
ctrl+shift+F20执行测试用例
Alt+1/ESC,焦点在Project与代码编辑区切换