C語言中文網 目錄
首頁 > Go語言教程 > Go語言簡介 閱讀:9,572

Go語言上手簡單

Go 語言簡單易學,學習曲線平緩,不需要像 C/C++ 語言動輒需要兩到三年的學習期。Go 語言被稱為“互聯網時代的C語言”。互聯網的短、頻、快特性在 Go 語言中體現得淋漓盡致。一個熟練的開發者只需要短短的一周時間就可以從學習階段轉到開發階段,并完成一個高并發的服務器開發。

Go 語言是 Google 公司開發的一種靜態型、編譯型并自帶垃圾回收和并發的編程語言。

Go 語言的風格類似于C語言。其語法在C語言的基礎上進行了大幅的簡化,去掉了不需要的表達式括號,循環也只有 for 一種表示方法,就可以實現數值、鍵值等各種遍歷。因此,Go 語言上手非常容易。

很多讀者表示自己是在看了介紹后才開始了解這門語言的,他們一般也會使用兩到三門編程語言。Go 語言對于他們來說,也就是一到兩天的熟悉過程,之后就可以開始使用 Go 語言解決具體問題了,大約一周左右已經可以使用 Go 語言完成既定的任務了。

Go 語言這種從零開始使用到解決問題的速度,在其他語言中是完全不可想象的。學過 C++ 的朋友都知道,一到兩年大強度的理論學習和實戰操練也只能學到這門語言的皮毛,以及知道一些基本的避免錯誤的方法。

那么,Go 語言到底有多么簡單?下面從實現一個 HTTP 服務器開始了解。

HTTP 文件服務器是常見的 Web 服務之一。開發階段為了測試,需要自行安裝 Apache 或 Nginx 服務器,下載安裝配置需要大量的時間。使用 Go 語言實現一個簡單的 HTTP 服務器只需要幾行代碼,如下所示。
package main

import (
    "net/http"
)

func main() {
    http.Handle("/", http.FileServer(http.Dir(".")))
    http.ListenAndServe(":8080", nil)
}
下面是代碼說明:
  • 第 1 行,標記當前文件為 main 包,main 包也是 Go 程序的入口包。
  • 第 3~5 行,導入 net/http 包,這個包的作用是 HTTP 的基礎封裝和訪問。
  • 第 7 行,程序執行的入口函數 main()。
  • 第 8 行,使用 http.FileServer 文件服務器將當前目錄作為根目錄(/目錄)的處理器,訪問根目錄,就會進入當前目錄。
  • 第 9 行,默認的 HTTP 服務偵聽在本機 8080 端口。

把這個源碼保存為 main.go(Go 語言的源文件后綴就是.go),安裝 Go 語言的開發包(后續我們會講解如何安裝),在命令行輸入如下命令:

$ go run main.go

在瀏覽器里輸入http://127.0.0.1:8080即可瀏覽文件,這些文件正是當前目錄在HTTP服務器上的映射目錄。

Go 語言工程結構簡單

Go 語言的源碼無須頭文件,編譯的文件都來自于后綴名為.go的源碼文件。

Go 語言無須解決方案、工程文件和 Make File,只要將工程文件按照 GOPATH 的規則進行填充,即可使用 go build/go install 進行編譯,編譯安裝的二進制可執行文件統一放在 bin 文件夾下。

后面的章節會介紹 GOPATH 及 go build/go install 的詳細使用方法。

Go 語言編譯速度快

Go 語言可以利用自己的特性實現并發編譯,并發編譯的最小元素是包。從 Go 1.9 版本開始,最小并發編譯元素縮小到函數,整體編譯速度提高了 20%。

另外,Go 語言語法簡單,具有嚴謹的工程結構設計、沒有頭文件、不允許包的交叉依賴等規則,在很大程度上加速了編譯的過程。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo