2 qq 24859323 qq_24859323 于 2016.09.14 09:10 提问

下代码如何使用委托减少switch case,达到便于维护,高可扩展的目的。

1个回答

qq_29594393
qq_29594393   Ds   Rxr 2016.09.14 09:12

默默问一句,你的代码呢?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
比Switch case 更高效的方法:字典(Dictionary) + 委托(delegate)
在C#中。一条switch语句允许测试一个变量在等于多个值的时的情况。每一个值作为一个case,去判断,当条件达成则执行。 并且,被测试的变量会对每一个case进行检查,直至找到符合条件的。 由于它是以遍历的方式一个个对比。当数据小的时候影响不大。
分解大量switch-case分支的两种方法
项目经过长期多人的维护,所谓人多手杂,出现不少过多过长的switch-case分支,或者多重switch-case嵌套。每每添加功能,我都会紧皱眉头,然后带着罪恶感向已经成百上千行的函数里再添上一个case分支,然后纠结地收工了事。 于是乎,在我的内心深处,switch-case俨然成了代码坏味道的代名词,写代码时总小心翼翼地避开它们,可往往又事与愿违。 事实上,switch-case语句并不
开发出编写可重用、可扩展、可维护、灵活性高的代码需要经历遵循以下原则
1,"开-闭"原则(OCP):一个软件实体应当对扩展开放,对修改关闭。这个原则说的是,在设计一个模块的时候,应当       使这个模块可以在不被修改的前提下被扩展。 换言之,应当可以在不必修改源代码的情况下改变这个模块的行为。   2,里氏代换原则(LSP):一个软件实体如果使用的是一个基类的话,那么一定使用于其子类,而且它根本不能察觉        出基类对象和子类对象的区别。 3,依赖倒转
设计模式——行为型模式之借助策略模式(Strategy Pattern)减少使用不必要的if-else if -else和switch-case(三)
策略模式(Strategy Pattern)是一种比较简单的行为型模式——定义一组算法,将每个算法都封装起来,并且使它们之间可以互换(Define a family of algorithms,encapsulate each one,and make them interchangeable),首先定义一组算法继承同一接口或者抽象类,然后将算法封装到一个上下文类中,最后通过上下文类去调用算法而非算法自身的实现类
如何降低函数的圈复杂度
圈复杂度就是统计一个函数有多少个分支(if,while,for等)每增加一个分支,复杂度加1。 简单来说,就是相当于需要多少个测试用例才能对这个函数做到全路径覆盖。 计算方法: (1)由1计算,一直往下通过程序。 (2)一旦遇到以下关键字或同类的词,如if ,while,repeat,for,and ,or,CC加1。 (3)switch-case语句的每一种情况加1。 降低函
从可复用、可维护、可扩展角度浅析《简单工厂模式》
《大话设计模式》这本书现在已经到了总结的阶段,翻看目录,23个模式+6个基本原则,but为什么我看到了24个模式???第一反应,盗版书!!!However,遇到问题要先从自己的角度分析,经过查资料,又名不属于23个模式之中,So,疑惑解答了,But,我认为这个模式在学习这本书的过程中起到了承前启后的作用,是对面向对象思想的高度浓缩,下面就来对其进行细致的分析吧。 案例分析 一、笔试部分:  
替换switch case方法的方式1--多态
double getSpeed() { switch (_type) { case EUROPEAN: return getBaseSpeed(); case AFRICAN: return getBaseSpeed() - getLoadFactor() * _numberOfCoconuts; case NORWEGI
重构:switch语句改成策略模式还是状态模式
在重构篇里,可以用多态来取代switch语句,但是因为:一部影片可以在生命周期内修改自己的分类,一个对象却不能在生命周期内修改自己所属的类。所以这里不能用策略模式,用多态取代switch,而应该用状态模式(State)。public class Movie { public static final int CHILDRENS = 2; public static final int
如何写出高效可维护并且规范的js代码
设计原则: 1.原子思想:即每个function就做一件事; 2.归纳思想:将同一类的操作,全部整合到一起; 3.方便维护:可以便于后来人进行快速维护; 4.方便拓展:即可以根据每个不同的项目进行不同的更改; 5.通用前端设计模式:一些前端可以通用的设计模式 6.注意写好注释,将注释写的具体点; 具体实例 /** * Created by ge
如何干掉那又丑又长的switch..case语句
1、前言     在实际的编程中,我们经常会使用到switch..case语句,这通常也是对一长串if..else if语句的优化。对于一些简单的情况(只每个case代码中代码长度不会很长,而且case分之并不多的情况),用switch..case语句即可,此时代码的可读性并不会很差,结构也算是清晰。但是一旦case分支数目众多,每个case语句块中代码长度也很长,这时对于维护这段代码的同学则是