如何配置Go應用程序,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
Go正在成為流程的編程語言。
每個編程語言都有自己的語法或結構,有屬于自己的風格,這才是每個語言的獨特所在。Go語言也不例外,它以自己的方式,輕松優雅,讓軟件開發變得更有趣。
Go程序結構
要了解Go程序的結構,先寫一下Go程序,我們先重新審核我們最喜愛的Hello,World!程序。
package main import "fmt" func main() { fmt.Println("Hello, World!")}
每個源文件均以.go擴展名為結構,頭部首行必須進行包聲明。在上面的helloworld.go文件中,第一行的package main告訴go編譯器,這個源文件將包含go的入口main(主函數)函數。包聲明和主函數這種組合使它成為一個獨立的可執行go程序。
在上面的代碼中,是打印字符串到控制臺,這是標準輸出。為此,我們使用 import 關鍵字導入 fmt 包。 fmt軟件包是format的綜合,它附帶了Go標準庫。
fmt軟件包提供了許多用于寫入標準輸出的選項。接下來我們會分別講解導入多個包的語法。
運行Go程序
我們使用 go run 或 go build 來運行相關Go程序。使用這些命令,來告訴Go編譯器來運行Go程序。
使用go運行hello-world.go
我們還可以使用go build命令,該命令將生成一個叫做hello-world的可執行文件,它可以像其它可以的執行文件一樣脫離go來獨立運行。
某此時候,我們可能希望更改可執行文件的名字,可以使用go build -o <file-name>命令來實現,該命令會創建一個可執行的二進制文件。例如:
$go build -o exe #being in the hello-world directory
$./exe #running the executable Hello,World!
還有一些時候,我們希望讓自己的應用程序可以被安裝。我們使用go install <package-name>命令。該命令會創建一個二進制可執行文件并存儲到$GOPATH/bin目錄中。
我們需要確定將GOBIN添加到系統的PATH環境變量中,這樣就可以在系統的任何地方運行該二進制文件。
代碼注釋
在正確的位置添加代碼注釋,與編寫可維護的代碼同樣重要。
在Go中,注釋不僅僅是添加關聯解釋的一種方式,同時也是一種記錄API的良好方式。我們將在討論函數時看到它們。
有兩種代碼注釋:一種是行注釋,一種是塊注釋。
1.行注釋,使用//開頭,后面就是注釋掉的文本
2.塊注釋是將文本放在 /* 和 */之間。以下是兩個例子:
// package main defines the entry point
package main
// import the 'fmt' package from standard library
import "fmt"
/*
The main function is the entry point in a Go program.
The main function does not have a return type.
Also, it does not accept any parameters.
*/
func main() {
fmt.Println("Hello, World!")
}
為什么沒有分號
正如您在上面的代碼中所觀察到的那樣,我們的代碼中沒有放置單個分號。 嗯,那是因為幕后Go為你做了。 與C一樣,Go的語法也使用分號來終止語句,但它們不必出現在源代碼中。 以下是Go文檔所說的內容:
與C一樣,Go的形式語法使用分號來終止語句,但與C語言不同,這些分號不會出現在源語句中。 相反,詞法分析器使用一個簡單的規則在掃描時自動插入分號,因此輸入文本大多沒有分號。
規則是這樣的:如果換行符之前的最后一個標記是一個標識符(包括int和float64類的單詞),一個基本文字,如數字或字符串常量,或其中一個標記break continue fallthrough return ++ -- ) }
詞法分析器總是在令牌后插入分號。 這可以概括為“如果換行符出可以結束語句的標記,則插入分號”。
在結束括號之前也可以省略分號,因此諸如tokens break continue fallthrough return ++ -- ) }的語句tokens break continue fallthrough return ++ -- ) }
不需要分號。
tokens break continue fallthrough return ++ -- ) }
要閱讀有關內幕的更多信息,請繼續花些時間閱讀Go Docs 。
重新代碼守則
如前所述,每個獨立應用程序必須具有package main聲明,并且具有此聲明的.go文件必須具有main函數。 這個main功能是我們應用程序的入口點,就像其他編程語言一樣,如C,Java,C#等。
不同的是,在Java或C#中, main函數可以接受參數(string [],args),而在Go中main函數不接受任何參數。 此外,主要功能不返回任何內容。
請注意我們如何導入fmt包: import "fmt" 。 僅當我們導入單個包時,此語法才有效。 如果我們要導入多個包,那么我們需要在import ()對包進行分組。 這是一個例子:
// importing multiple packages in Go import ( "context" "database/sql" "fmt" "log" )
請注意,我們還沒有放一個; 在任何導入包的末尾,因為這將由詞法分析器為我們完成。
小結
Go有一個非常簡單的程序結構,其感覺和讀取更像是C.遵循相同的模式,我們將main功能作為我們應用程序的入口點。 Go提供了一種編寫干凈代碼的便捷方式,可以在需要時巧妙地插入分號。 我們的代碼中的邏輯描述有不同類型的注釋。 稍后我們將看到這些注釋如何為我們的包構建文檔。
看完上述內容,你們掌握如何配置Go應用程序的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。