新聞中心
Go語言語法類似于C語言,因此熟悉C語言及其派生語言( C++、 C#、Objective-C 等)的人都會迅速熟悉這門語言。

創(chuàng)新互聯(lián)建站長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為陵川企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè),陵川網(wǎng)站改版等技術(shù)服務。擁有十載豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
C語言的有些語法會讓代碼可讀性降低甚至發(fā)生歧義。Go語言在C語言的基礎(chǔ)上取其精華,棄其糟粕,將C語言中較為容易發(fā)生錯誤的寫法進行調(diào)整,做出相應的編譯提示。
1) 去掉循環(huán)冗余括號
Go語言在眾多大師的豐富實戰(zhàn)經(jīng)驗的基礎(chǔ)上誕生,去除了C語言語法中一些冗余、煩瑣的部分。下面的代碼是C語言的數(shù)值循環(huán):
// C語言的for數(shù)值循環(huán)
for(int a = 0;a<10;a++){
// 循環(huán)代碼
}
在Go語言中,這樣的循環(huán)變?yōu)椋?
for a := 0;a<10;a++{
// 循環(huán)代碼
}
for 兩邊的括號被去掉,int 聲明被簡化為
:=,直接通過編譯器右值推導獲得 a 的變量類型并聲明。
2) 去掉表達式冗余括號
同樣的簡化也可以在判斷語句中體現(xiàn)出來,以下是C語言的判斷語句:
if (表達式){
// 表達式成立
}
在Go語言中,無須添加表達式括號,代碼如下:
if 表達式{
// 表達式成立
}
3) 強制的代碼風格
Go語言中,左括號必須緊接著語句不換行。其他樣式的括號將被視為代碼編譯錯誤。這個特性剛開始會使開發(fā)者有一些不習慣,但隨著對Go語言的不斷熟悉,開發(fā)者就會發(fā)現(xiàn)風格統(tǒng)一讓大家在閱讀代碼時把注意力集中到了解決問題上,而不是代碼風格上。
同時Go語言也提供了一套格式化工具。一些Go語言的開發(fā)環(huán)境或者編輯器在保存時,都會使用格式化工具對代碼進行格式化,讓代碼提交時已經(jīng)是統(tǒng)一格式的代碼。
4) 不再糾結(jié)于 i++ 和 ++i
C語言非常經(jīng)典的考試題為:
int a, b; a = i++; b = ++i;
這種題目對于初學者簡直摸不著頭腦。為什么一個簡單的自增表達式需要有兩種寫法?
在Go語言中,自增操作符不再是一個操作符,而是一個語句。因此,在Go語言中自增只有一種寫法:
i++
如果寫成前置自增
++i,或者賦值后自增
a=i++都將導致編譯錯誤。
網(wǎng)站標題:創(chuàng)新互聯(lián)GO教程:Go語言代碼風格清晰、簡單
文章地址:http://www.dlmjj.cn/article/dhsgogp.html


咨詢
建站咨詢
