2012-02-11 71 views
1

在Go中命名片的約定是什麼?具體來說,你使用複數? 我注意到進入App Engine不(例如,它使用key沒有keys):轉:切片變量/參數的命名約定?

func GetMulti(c appengine.Context, key []*Key, dst interface{}) error 

我還沒有看到任何相當於在我讀過的標準包或文檔。單數還是複數是正常的?

+1

也許它被稱爲'key',因爲它的唯一用法是索引,'key [0]'聽起來比實現者的keys [0]好。它不會改變很多。 Go的原則之一是沒有一致性,但靈活性。 – 2012-03-12 14:03:02

回答

2

這應該是一個錯字,我猜。

切片和數組的名稱是複數。在標準庫中找到一些樣本並不難:功能SetCookies in CookieJar,ReaddirnamesArgs變量variables of os package中的變量。

但是,對於任何變量使用更好地解釋其目的的名稱。

這種全數字方法的一個明顯例外是argv,它的名字已有數十年之久。

+1

我認爲'argv'的例外不是一個例外。這是一個單數:「參數向量」,而不是「向量」。 – zzzz 2012-02-11 12:35:34

+0

@jnml我明白了。謝謝。 – Mostafa 2012-02-11 13:04:49