日期:2014-05-16  浏览次数:20954 次

这么写的好处
最近接收一个项目,原先的代码里都喜欢这么写
 IDictionary propertyDic = new Hashtable();
IChannel tcpChnl = new TcpChannel(propertyDic, null, formatter);
诸如此类,还有就是他们不喜欢用List<T>声明变量,而是IList<T>。
不知道这么写有啥好处呢? 
------解决方案--------------------
写程序当然是越简单越好。能不定义类型(和interface),就不要定义。能不用当然就不用。

其实这道理谁都知道。不是每一个人都是标题党去追求时髦的。

为什么要用?那么你应该去跟你的同事——当事人——沟通,看看是不是有自己不了解的必须这样做的理由发生。

而不要在csdn上来晒这种问题。
------解决方案--------------------
引用:
写程序当然是越简单越好。能不定义类型(和interface),就不要定义。能不用当然就不用。

其实这道理谁都知道。不是每一个人都是标题党去追求时髦的。

为什么要用?那么你应该去跟你的同事——当事人——沟通,看看是不是有自己不了解的必须这样做的理由发生。

而不要在csdn上来晒这种问题。


有点不大理解。。。先记住慢慢品味吧。。。
------解决方案--------------------
对线接口对象编程!比如“诸如此类,还有就是他们不喜欢用List<T>声明变量,而是IList<T>。”在C#中有很多对象都实现了IList<T>接口,它就类似于“父类”,当然接口不存在父类这么一说。它IList<T>就相当于一个抽象,让所有实现它的对象,在创建的时候都用抽象的“父类IList<T>”去接收,让细节依赖于抽象,而不是抽象依赖于细节--依赖倒转原则
------解决方案--------------------
没有好处。应该用List<T>。

编程的一个原则就是,尽量使用确定的类型,比如
int i = 3;
object i = 3;
那么前者int就是更确定的类型,比后者好。