真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

go語(yǔ)言需不需要分號(hào)

這篇文章主要介紹了go語(yǔ)言需不需要分號(hào)的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇go語(yǔ)言需不需要分號(hào)文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。

為欒川等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及欒川網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、欒川網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

Go語(yǔ)言不需要在語(yǔ)句或者聲明的末尾添加分號(hào),除非一行上有多條語(yǔ)句。Go語(yǔ)言默認(rèn)一行就是一條數(shù)據(jù),編譯器會(huì)主動(dòng)把特定符號(hào)后的換行符轉(zhuǎn)換為分號(hào),因此換行符添加的位置會(huì)影響Go代碼的正確解析。

Go語(yǔ)言不需要在語(yǔ)句或者聲明的末尾添加分號(hào),除非一行上有多條語(yǔ)句。實(shí)際上,編譯器會(huì)主動(dòng)把特定符號(hào)后的換行符轉(zhuǎn)換為分號(hào), 因此換行符添加的位置會(huì)影響Go代碼的正確解析(譯注:比如行末是標(biāo)識(shí)符、整數(shù)、浮點(diǎn)數(shù)、虛數(shù)、字符或字符串文字、關(guān)鍵字 break 、 continue 、 fallthrough 或 return 中的一個(gè)、運(yùn)算符和分隔符 ++ 、 -- 、 ) 、 ] 或 } 中的一個(gè))。

舉個(gè)例子, 函數(shù)的左括號(hào) { 必須和 func 函數(shù)聲明在同一行上,且位于末尾,不能獨(dú)占一行,而在表達(dá)式 x + y 中,可在 + 后換行,不能在 + 前換行(譯注:以+結(jié)尾的話(huà)不會(huì)被插入分號(hào)分隔符,但是以x結(jié)尾的話(huà)則會(huì)被分號(hào)分隔符,從而導(dǎo)致編譯錯(cuò)誤。

Go語(yǔ)言的代碼風(fēng)格

(1)縮進(jìn)和折行

縮進(jìn)直接使用gofmt工具格式化即可(gofmt是使用tab縮進(jìn)的)

折行方面,一行最長(zhǎng)不超過(guò)120個(gè)字符,超過(guò)的請(qǐng)使用換行展示,盡量保持格式優(yōu)雅

我們使用GoLand開(kāi)發(fā)工具,直接使用快捷鍵:Ctrl+Alt+L即可。

(2)語(yǔ)句的結(jié)尾

Go語(yǔ)言中是不需要類(lèi)似于Java需要分號(hào)結(jié)尾,默認(rèn)一行就是一條數(shù)據(jù)。

如果你打算將多個(gè)語(yǔ)句寫(xiě)在同一行,它們則必須使用。

(3)括號(hào)和空格

括號(hào)和空格方面,也可以直接使用gofmt 工具格式化(go會(huì)強(qiáng)制左大括號(hào)不換行,換行會(huì)報(bào)語(yǔ)法錯(cuò)誤),所有的運(yùn)算符和操作數(shù)之間要留空格。

//正確的方式
if a > 0 {

}
//錯(cuò)誤的方式
if a>0  // a,>,0之間應(yīng)該使用空格
{       //左大括號(hào)不可以換行,會(huì)報(bào)語(yǔ)法錯(cuò)誤
	
}

(4)import規(guī)范

import在多行的情況下,goimports會(huì)自動(dòng)幫你格式化,如果你在一個(gè)文件里面引入了一個(gè)package,建議采用如下格式:

import {
	"fmt"
}

如果你的包引入了三種類(lèi)型的包,標(biāo)準(zhǔn)庫(kù)包,程序內(nèi)部包,第三方包,建議采用如下方式進(jìn)行組織你的包

inport{
	"encoding/json"
	"strings"
	
	"myproject/models"
	"myproject/controller"
	
	"github.com/astaxie/beego"
}

有順序的引入包,不同的類(lèi)型采用空格分隔,第一種實(shí)際準(zhǔn)庫(kù),第二是項(xiàng)目包,第三是第三方包

在項(xiàng)目中不要使用相對(duì)路徑引入包

(5)錯(cuò)誤處理

  • 錯(cuò)誤處理的原則就是不能丟棄任何有返回err的調(diào)用,不要使用_丟棄,必須全部處理。接收到錯(cuò)誤,要么返回err,或者使用log記錄下來(lái)

  • 盡早return:一旦有錯(cuò)誤發(fā)生,馬上返回

  • 盡量不使用panic,除非你知道你在做什么

  • 錯(cuò)誤描述如果是英文必須為小寫(xiě),不需要標(biāo)點(diǎn)結(jié)尾

  • 采用獨(dú)立的錯(cuò)誤流進(jìn)行處理

// 錯(cuò)誤寫(xiě)法
if err != nil {
	// error handing
} else {
	//normal code
}

// 正確寫(xiě)法
if err != nil {
	// error handing
	return // or continue, etc.
}
//  normal code

(6)測(cè)試

單元測(cè)試文件命名規(guī)范為 example_test.go

測(cè)試用例的函數(shù)名稱(chēng)都必須以Test

每個(gè)重要的函數(shù)都要首先編寫(xiě)測(cè)試用例,測(cè)試用例和正規(guī)代碼一起提交方便進(jìn)行回歸測(cè)試

關(guān)于“go語(yǔ)言需不需要分號(hào)”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“go語(yǔ)言需不需要分號(hào)”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


新聞名稱(chēng):go語(yǔ)言需不需要分號(hào)
本文URL:http://weahome.cn/article/pjddgg.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部