方法参数的设计大家平时可能都容易忽略,其实也是有规则可循,下面是我总结的几点规则。

返回参数
    返回参数用于从方法中取数据,对于函数本身来说就是向外部抛出数据,从继承的角度来说就是要尽量能用具体类就用具体类,比如,如果一个函数返回列表数据,可以装列表数据的容器很多,IEnumerable<T>、ICollection<T>、IList<T>、List<T>,尽量使用具体类,比如 IList 和 List比尽量使用List,因为具体类对外部来说可以使用得空间更大。
    例子: public List<UserData> GetData();

输入参数
    输入参数用于接收外部数据进行处理,按照接口设计原则,尽量设计的方法通用性更广,所以参数要尽量弱化,IList<T>、List<T>就可以尽量选择IList,因为实现IList的类不止List,这样外部适用性就更广。
    例子: public List<UserData> ConfigData(IList<Config> paraConfig);