显式参数 VS 隐式参数

尽量使用显示参数,而不是隐式参数,看下面实例代码。

示例1采用显示参数,示例2采用隐式参数。对于一个不熟悉MonitorManager内部构造的调用者来说,在构造MonitorManager的时候,对于示例1,调用者看到Computer参数后,就很清楚,需要传递什么样的参数,而对于示例2,调用者看到Hanstable参数,就需要去了解Hashtable中需要放入哪些参数,会占用调用者更多的时间去了解MonitorManager的内部构造,相对而言示例1的代码要简单明了,易读。

    public class MonitorManager
    {
        ...
        public MonitorManager(Computer computer)
        {
            ...
        }
    }

    public class Computer
    {
        String MachineName {get; set;}
        String IP {get; set;}
    }
    public class MonitorManager
    {
        ...
        public MonitorManager(Hashtable computer)
        {
            ...
        }
    }

 

posted on 2013-06-20 20:32  荡秋千  阅读(2353)  评论(0编辑  收藏  举报