進入預習祖很。
go標準庫文檔
? 開源書籍
書籍名 | 地址 | 推薦理由 |
---|---|---|
Go 指南 | https://tour.go-zh.org/ | 初學者熟悉 Go 語法的 palyground,無須搭建本地 Go 的環(huán)境随橘,在線就編寫 Go 的代碼 |
Go實戰(zhàn)開發(fā) | https://github.com/astaxie/go-best-practice | 這本書還沒有完成拥褂,但是基礎的基本都講完了,這個書的作者就是著名的 Go 開源項目 beego 的作者 @astaxie,他的最佳實踐非常值得閱讀 |
Go Web 編程 | https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/preface.md | |
gitbooks地址 | 這個本的作者也是上本書的作者 @astaxie干奢,從開發(fā)環(huán)境搭建到構建一個 Web 應用,講解的都非常詳細盏袄,@astaxie 的這兩本書非常值得深度學習和閱讀忿峻,本書已經完全寫完了 | |
GO 命令教程 | https://github.com/hyper0x/go_command_tutorial | 《Go并發(fā)編程實戰(zhàn)》作者郝林書中的示例 |
Go入門指南 | https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/directory.md | 這本書也非常適合初學者,不過看了上面幾本書以后辕羽,看這本書逛尚,前面一些基礎內容都可以很快的刷過去了,這本書可以主要看高級編程和實際應用這兩大部分 |
Go語言圣經 | http://docs.ruanjiadeng.com/gopl-zh/index.html | 這本書是 Go 語言著名書籍《The Go Programming Language》的中文翻譯版刁愿,如果覺得翻譯的書不好绰寞,可以直接去看原著 |
Go by Example | https://gobyexample.com/ | 推薦這個網站的原因是這里有好多值得初學者學習的例子,這里可以作為初學者“抄”(學習)代碼的地方 |
Go-SCP | https://checkmarx.gitbooks.io/go-scp/content/ | 這本書是關于 Go 安全相關的铣口,本人還沒有讀過滤钱,為何放在這里?因為是我老大推薦的? |
? 編譯器
1. Vim黨
Vim黨當然是不需要 IDE 的枷踏,直接 Vim + Vim-go(或者 Emacs)
2. 文本編輯器 + 插件
目前最常用最火的文本編輯器有 VSCode菩暗、Sublime、Atom
他們都可以安裝相應的插件旭蠕,就可以支持 Go 的編碼了停团。我暫時用的是 Atom + go-plus,界面還比較美掏熬,如下圖:
3. IDE
目前用的比較多的 IDE 有:IntelliJ idea佑稠、Goland、LiteIDE旗芬。
? 學習網站
網站名 | 地址 | 推薦理由 |
---|---|---|
The Go Programming Language | https://golang.org/ | Go 的官方網站 |
Go 編程語言 | https://go-zh.org/ | Go 官網對應的中文網站 |
The Go Blog | https://blog.golang.org/ | Go 的官方博客 |
The Go Packages | https://golang.org/pkg/ | Go 的包官方文檔 |
Go 標準庫中文文檔 | http://cngolib.com/ | Go 標準庫中文文檔 |
? 視頻
這個也看個人吧舌胶,有些人不喜歡看文檔,或者有時候文檔看累了看會視頻疮丛。下面這些視頻本人看過開頭的幔嫂,覺得講的還可以辆它,不過后面的我沒有繼續(xù)看下去了,因為覺得看視頻學習有點慢履恩,我還是選擇看刷書刷題啦~?
網站名 | 地址 | 推薦理由 |
---|---|---|
Go 編程基礎 | https://github.com/Unknwon/go-fundamental-programming | 這套視頻適合初學者 |
Go Web 基礎 | https://github.com/Unknwon/go-web-foundation | 這是一套針對 Google 出品的 Go 語言的視頻語音教程锰茉,主要面向完成《Go 編程基礎》教程后希望進一步了解有關 Go Web 開發(fā)的學習者。 |
Go名庫講解 | https://github.com/Unknwon/go-rock-libraries-showcases | 這是一套針對 Google 出品的 Go 語言的第三方庫進行評測講解的集博客切心、示例與語音視頻為一體的綜合教程飒筑,適合完成學習完成《Go編程基礎》教程的學習者。 |
Go語言第一課 | 慕課網上的課程 | 這個課程的錄制者是郝林绽昏,如果你是他的粉絲协屡,可能你就不想錯過這個課程 |
?社區(qū)
Go語言社區(qū)(排名不分先后) |
---|
https://gocn.io |
http://studygolang.com |
http://www.golangtc.com |
http://www.golangweb.com |
最后,多多練習全谤,多多實踐 Go肤晓,只要功夫深,鐵杵磨成針认然!
GitHub Repo:Halfrost-Field
Follow: halfrost · GitHub
Source: https://halfrost.com/new_gopher/
go編譯器的四個階段材原,可分為兩類:
- 前端:這個階段從源代碼進行分析,并生成一個抽象的源代碼語法結構季眷,稱為AST。
- 后端:第二個階段將源代碼的表示轉換成機器碼卷胯,并進行一系優(yōu)化子刮。
- 在編譯的第一階段,對源代碼進行標記(詞法分析)窑睁、解析(語法分析)挺峡,并為每個源文件構建語法樹。
- 構建 AST(抽象語法樹) 的簡單過程担钮,還將包括內聯(lián)等優(yōu)化
- SSA(靜態(tài)單賦值)階段進行優(yōu)化:消除死代碼橱赠,刪除不使用的分支,替換一些常量表達式等等箫津。Go 編譯器現(xiàn)在將生成一個中間匯編代碼狭姨。
- 下一階段將把機器碼生成到二進制文件中。生成目標文件后苏遥,現(xiàn)在可以使用 go tool link 將其直接傳遞給鏈接器饼拍,二進制文件將最終就緒。