← 返回文章列表

golang學習記錄(2)

Go 基礎學習系列第 2 篇,記錄語法、示例與學習過程。

Golang開發基礎

Golang程式開發和基本結構

首先要建立golang開發的目錄,可以建立成下面的形式

go_project

  • src
    • go_code
      • project01
        • main
          • hello.go
        • package
      • project02
        • main
        • package

其中hello.go就是一個簡單的go程式,程式碼如下:

package main
import "fmt"
func main(){
    fmt.Println("hello world!")
}

說明: (1)go的檔案字尾就是“.go”,在go中,一個檔案就是一個包,一個包可以包含多個檔案,但是一個檔案只能包含一個包。 (2)package main 表示當前檔案所在的包名,必須是main包,否則無法執行。 (3)在go中,每個檔案都必須歸屬於一個包 (4)import “fmt” 表示引入fmt包,fmt包是go語言標準庫中的一個包,提供了格式化輸入輸出的功能。引入後,就可以使用fmt包的函式,比如fmt.Println()。 (5)func main() 表示main函式,是程式的入口函式,程式從main函式開始執行。其中func是關鍵字,表示一個函式,main是函式名,是一個主函式,是程式的入口。 (6)fmt.Println(“hello world!”)表示呼叫fmt包中的Println函式,列印輸出hello world!。

Golang執行流程分析

Golang程式的執行流程

首先,我們要寫完一個go程式

然後,要對寫完的程式進行編譯,生成一個可執行檔案,使用“go build”命令

go build hello.go

最後,執行可執行檔案,得到執行結果。

同時,也可以直接使用“go run”命令,直接執行go程式,不需要編譯,也不需要生成可執行檔案。但是,每次執行都會重新編譯,效率較低,並且執行時間較長。

go run hello.go

總的來說,go語言的執行流程是:編寫程式碼 -> 編譯生成可執行檔案 -> 執行可執行檔案。

go

前者執行時間短 後者執行時間長 實際開發中用到的是前者,後者一般用於測試。

不同執行流程區別

(1)go語言是編譯型語言,需要先編譯成可執行檔案,然後才能執行。

(2)如果先編譯生成了可執行檔案,可以將可執行檔案複製到其他機器上,直接執行。

(3)如果使用 go run 命令執行原始碼,想要在另一臺機器上執行,需要先安裝go環境,否則無法執行

(4) 在編譯時,編譯器會將程式執行依賴的庫檔案包含在可執行檔案中,所以可執行檔案會變得很大,且能夠獨立執行。

Golang編譯執行說明

編譯

透過編譯器將go原始碼編譯成二進位制檔案

在編譯時指定生成的檔名:go build -o test.exe hello.go,其中在Windows下生成檔案的字尾必須是exe,在Linux下生成檔案的字尾可以是exe或者沒有字尾。

如果原始碼中沒有錯誤,能夠正常執行編譯,如果原始碼中有錯,會在錯誤的那行報錯,並且編譯失敗。

執行

1、生成可執行檔案,然後執行。

2、直接使用go run命令執行,不需要編譯,不需要生成可執行檔案。

Golang語法要求和注意事項

golang原始檔以go為副檔名,編譯後生成的可執行檔案以exe為副檔名。

go程式的執行入口是main函式

go語言嚴格區分大小寫

go方法由一條條語句構成,語句後面不需要分號

在go語言中,一行代表一條語句結束。一行就寫一條語句,go編譯器是一行行進行編譯的,一行中不能寫多條語句。

go語言中定義的變數或者import的包如果沒有使用到,程式碼就不能透過編譯(提升程式碼的效能)

括號是成對出現的,缺少會編譯錯誤。

Golang的跳脫字元

  • \t 一個製表位,實現對齊功能
  • \n 換行符與
  • \ 一個反斜槓字元
  • ” 一個雙引號字元
  • \r 一個回車符

Golang開發註釋

1、單行註釋://

2、多行註釋(塊註釋):/* */

Golang程式碼風格

1、 儘量使用行註釋,註釋方法和語句

2、要有正確的縮排和空行(空白),shift+tab向左縮排,tab向右縮排,或者使用gofmt命令進行格式化,例如:gofmt -w main.go(可以將格式化後的內容重新寫入檔案),gofmt main.go(可以將格式化後的內容輸出到終端,不能寫入檔案)

3、 運算子兩邊加空格

4、函式的大括號 go

5、 關鍵字和運算子之間加空格

6、 函式名、變數名、常量名、結構體欄位名使用駝峰式命名法

7、一行不要超過80個字元,超過80個字元需要換行

Golang官方指南(可能要科學上網)

官方網站:執行和學習

中文程式設計指南:中文指南,也有其它語言的

官方的包:關於包的使用和說明

在官網可以檢視程式碼的執行結果 tour run 可以執行程式碼

Golang語言標準API

什麼是API?

應用程式程式設計介面(Application Programming Interface),就是一個函式

Golang提供了大量的標準庫

Golang中文網 : 中文關於包的介紹和使用說明

在Go中:包->原始檔->函式 go

要使用函式就直接import匯入

Golang開發常見錯誤和解決方法

註釋的目的是提升可閱讀性,讓程式碼更容易理解

1、顯示找不到檔案 原始檔名寫錯、不存在或者當前的路徑錯誤。

2、語法錯誤 違反語法規則,括號,引號匹配失敗海諾這拼錯單詞。 透過檢視錯誤提示資訊,找到錯誤的位置,然後修改。

注意:“1”和”l”在程式設計的時候比較難區分

關於這篇文章的日期

保留舊站原始文章標註的日期;實際開始寫作的時間可能更早。

原始日期: 2024-09-23 09:28:36 +0800

同一系列 · Go 基礎學習

上一篇golang學習記錄(1)-在win搭建go環境 ←下一篇golang學習記錄(3) →