開始一項新語言前需要先了解該語言的語法(如果你有其他語言的編程知識的話),開始學習前,我們一起了解下Go的格式。
如果大家都統一編碼風格,那么在維護他人代碼時就能帶來便利。同時我們在提交代碼前執行一次fmt命令,以便提交統一風格的代碼。
注釋
Go支持C語言風格的“//”塊注釋,也支持C++風格的行注釋,同時可使用/**/進行包的 注釋. 我們看string包的源代碼,使用//注釋了包,方法以及行。我們需要養成好的習慣,盡量去多寫些注釋,這樣不但有利於自己以后的回顧,已給他人閱讀你的代碼提供了方便,當然Go下的源代碼使用Go命令能夠生成文檔,而文檔的描述內容源自注釋,在編碼階段就同步書寫注釋,而不要在整理代碼時書寫注釋(此時的思維沒有編碼時清晰,補救中總容易丟失些東西)。
命名
在Go中名稱不但具有表達含義的功能,同時也具有約束使用的特點。如果一個函數的名稱是小寫的則表示該函數不能在其他包中使用。
-
命名必須使用駱駝命名法,而不能使用下划線法。
-
任何需要對外暴露的名字必須大寫字母開頭,不需要暴露在包外的名字必須以小寫字母開頭。
-
接口的命令,按照慣例,如果接口只有一個方法,則該接口命名為方法名成加上”ER“后綴。
分號
Go和C語言一樣使用“;”來結束一個語句,但不一樣的是,在Go中由編譯器去處理“;”,所以你必須在編寫代碼是省略“;”。當然也有例外,for循環(使用;將初始部分、條件部分和遍歷元素區分),一行中有多個語句,多賦值語句等。
需要注意,不能將控制語句(for,if else,switch,select)的左括號另起一行。如
-
//錯誤的方式
if(1==2)
{
fmt.Println("God!")
}
//正確的書寫
if(1==2) {
fmt.Println("God!")
}
學到新的知識后,再補充。
---------2013-04-10 補充---------------------
Go語言編程規范:
官方地址:http://golang.org/doc/effective_go.html (牆了)
中文翻譯:http://zh-golang.appsp0t.com/ref/spec?lang=en
------------------end------------------------------
