我正在和一些同事一起在網絡應用程序上工作。事實證明,我們都有自己的方式來命名類,方法或我們目前正在編寫的任何函數。常規保持方法,類和函數的名稱有組織?
這已經開始變得非常煩人了,所以我知道如果我們繼續這樣的話,我們有前進的一座冰山。
顯然,最好的方法是找到一個例程並堅持下去 - 但具體的例程應該如何看待? - 命名件,對象,函數或其他什麼時常用的常識?那裏有任何標準嗎?
非常感謝!
我正在和一些同事一起在網絡應用程序上工作。事實證明,我們都有自己的方式來命名類,方法或我們目前正在編寫的任何函數。常規保持方法,類和函數的名稱有組織?
這已經開始變得非常煩人了,所以我知道如果我們繼續這樣的話,我們有前進的一座冰山。
顯然,最好的方法是找到一個例程並堅持下去 - 但具體的例程應該如何看待? - 命名件,對象,函數或其他什麼時常用的常識?那裏有任何標準嗎?
非常感謝!
你可以看看下面的例子:http://www.dagbladet.no/development/phpcodingstandard/
我的工作來實現這一點,雖然我並不總是同意,至少它產生的一致性。
使用命名空間。聚在一起並提出一個邏輯名稱空間層次結構策略,然後在名稱空間內爲元素使用邏輯名稱。你可以採取
與同事坐在一起,解釋你正在觀察的問題,然後寫下你們都同意的標準。
正如您已經確定的,唯一的問題是一致性。因此,不要說服自己,你也需要一個經過科學證明是最佳的標準。
看看PEAR Coding Standards。它非常全面,如果您使用任何梨包,會使事情變得更加簡單。
它也可能有助於查找維基百科上的CRUD (Create Read Update Delete)。
至於單數對複數,我傾向於試圖堅持我的代碼的概念風格。我發現使用OOP時,當你使用單數形式時,對象名通常更容易纏繞你的頭腦。
即使您的課程將包含有關多個狗的信息,而不是將其命名爲Dogs,也可以將其命名爲Pack,即使它不是技術上的包。圍繞多個包裝比多個狗包裝你的頭腦更容易,並且「包裝」在概念上比無定形的「狗」更強。 「狗」聽起來不像一個單一的對象,而「包」卻是。
我想這是一個很明顯的例子,但是如果你的類只是用來單獨定義對象,那麼不要把它作爲複數。或者,如果您的函數一次只格式化一個字符串,則不要將其稱爲formatStrings()。
數組有點不同。如果你使用一個數組作爲你所有的狗的列表,你不會將它命名爲$ pack,因爲你期望包含一個包的信息。相反,你會把它命名爲$狗。
這是由什麼引起的衝突的例子?對大寫字母的關注,使用特定單詞的選擇還是別的? – VoteyDisciple 2010-10-11 20:16:18
大寫字母,單數,複數,$ this->在一個模型中創建,$ this->在另一個模型中添加等等。試圖瞭解其他人在做什麼 – Industrial 2010-10-11 20:17:41