代码改变世界

随笔档案-2012年07月

switch代码的进化 重构,至策略模式 工厂模式 插件模式 表驱动

2012-07-04 16:53 by stulife, 1404 阅读, 收藏,
摘要: 编程中经常遇到很多条件,以及条件套条件的情况,以至于一个方法会写得非常地长。有多种方法可以规避这个问题。比如反射,策略模式,表驱动等等。先抛开这些方法不讲,从根本需求来探索这个过程。一个switch结构可能是这样:swicth(case) case 1: //do1 break; case 2: //do2 break; .....这里注释的do部分代码可能会是很多很多行,以及嵌套switch,if结构。进一步,这个模型演化成swicth(case) case 1: do1(); break; case 2: do2(); break;... 阅读全文