通常我的方法主要有以下幾點:最佳實踐返回的值(.NET)數組時
public List<int> Method1(int input)
{
var output = new List<int>();
//add some items to output
return output;
}
但FxCop的另一個建議IList實現的,而不是名單,但我不記得是哪。該方案包括返回它作爲一個IList,ICollection的或IEnumerable的更多的靈活性,或者一個完全不同的方式如下:
public int[] Method2(int input)
{
var output = new List<int>();
//add some items to output
return output.ToArray();
}
所有替代品的代碼,都提供了和所有的可能性,這被認爲是最好的做法呢?
我同意,但你可以擴展爲什麼? – mmcdole 2009-02-20 15:55:52
因爲它允許您更改函數內部的實現細節,如果需要的話,不會破壞調用該函數的代碼。 – 2009-02-20 16:04:20
例如,也許現在你實際上返回一個數組,但是在將來的某個時候,你更新代碼返回一個List來代替。如果你所承諾的只是返回IEnumerable ,調用代碼仍然可以正常工作。 –
2009-02-20 16:05:51