2010-03-14 106 views
2

讓我們假設我們有一輛汽車。
你會如何命名帶兩輛不同汽車的功能參數?具有相同類型的幾個物體的名稱

void Race(Car first, Car second); 

也許

void Race(Car car1, Car car2); 

與功能相同的情況是需要汽車和汽車的列表作爲參數。
我已經習慣了名「車」汽車的名單,所以不方便使用名稱類似:

void Race(Car car, List<Car> cars); 

有關名稱有什麼建議?

回答

4

我個人選擇代表汽車將如何使用的名稱。

在你的例子中,我可能只有void Race(IList<Car> cars),因爲每輛車都是相同的。

如果總是有兩個相同的選項,使用firstCar和secondCar似乎是合理的。

但是,如果你在做類似的東西從一個汽車運動部件到另一個,我會非常的描述,即:

static void StealParts(Car targetCar, Car sourceCar); 

更具描述性的,你可以在你的參數命名,將更方便您的API成爲使用。

+0

+1 - 這也是我會做的。 – kiwicptn 2010-03-14 18:32:10

1

將這些數字相函數參數通常是一個不好的做法,所以我會用void Race(Car first, Car second);

走關於你第二個功能我沒有看到一個名爲cars汽車列表中的任何問題,但我不明白的想法將一輛汽車作爲單獨的參數傳遞,因此我建議將其重命名以顯示它與列表中的汽車的區別,或者如果它可以作爲cars列表的成員傳遞,請將其刪除。

P.S.只要您的IDE的intellisense可以檢索到它們的類型,就可以將cars列表肯定地重命名爲participantscompetitors

Upd .:基本上,參數的名稱應該首先取決於函數的名稱,如果需要,則取決於參數的類型。所以,我會去Car GetSimilar(Car targetCar, IList<Car> cars)

+0

也許比賽功能不是第二個問題的最佳主意。而不是種族你可以想象一個功能,從列表中返回最類似的汽車,類似於作爲第一個參數傳遞的汽車。 – 2010-03-14 18:31:02

相關問題