
Go 語言趣學(xué)培訓(xùn)
課程循序漸進(jìn)地介紹了使用 Go 語言所必需的知識,
展示了非常多生動有趣的例子,
并通過提供大量練習(xí)來加深讀者對課程中所述內(nèi)容的理解。
1 循環(huán)和分支
2 實數(shù)和整數(shù)
3 維吉尼亞加密法
4 組合與轉(zhuǎn)發(fā)
5 變量作用域
6 類型轉(zhuǎn)換
7 函數(shù)和方法
8 goroutine 和并發(fā)
1
預(yù)備,Go!
1.了解Go與眾不同的地方
2.了解如何訪問GoPlayground
3.學(xué)會將文本打印到屏幕上
4.對包含任意自然語言的文本進(jìn)行
2
被美化的計算器
1.學(xué)會讓計算機執(zhí)行數(shù)學(xué)運算
2.學(xué)會聲明變量和常量
3.了解聲明和賦值的區(qū)別
4.學(xué)會使用標(biāo)準(zhǔn)庫生成偽隨機數(shù)
3
循環(huán)和分支
1.學(xué)會使計算機通過if和switch做選擇
2.學(xué)會使用for循環(huán)重復(fù)執(zhí)行指定的代碼
3.學(xué)會基于條件實現(xiàn)循環(huán)和分支處理
4
變量作用域
1.知悉變量作用域的好處
2.學(xué)會用更簡潔的方式聲明變量
3.了解for、if和switch是如何與變量作用域交互的
4.學(xué)會如何控制作用域的范圍
1
前往火星的航行票
5
實數(shù)
1.學(xué)會用兩種不同的類型表示實數(shù)
2.學(xué)會在內(nèi)存占用和精度之間進(jìn)行取舍
3.學(xué)會妥善處理儲錢罐中的舍入錯誤
6
整數(shù)
1.學(xué)會使用10種不同的整數(shù)類型
2.學(xué)會選擇合適的類型
3.學(xué)會使用十六進(jìn)制表示和二進(jìn)制表示
7
大數(shù)
1.學(xué)會通過使用指數(shù)來減少鍵入0的次數(shù)
2.學(xué)會使用Go的big包處理非常大的數(shù)
3.學(xué)會使用大常量和字面值
8
多語言文本
1.學(xué)會訪問和操作單個字母
2.學(xué)會加密和解密機密消息
3.學(xué)會開發(fā)支持多語種的程序
9
類型轉(zhuǎn)換
1.學(xué)會在數(shù)值、字符串和布爾值之間實施類型轉(zhuǎn)換
挑戰(zhàn) 2
維吉尼亞加密法
10
函數(shù)
1.認(rèn)識函數(shù)聲明的各個組成部分
2.學(xué)會編寫可復(fù)用的函數(shù)以構(gòu)建更大型的程序
11
方法
1.學(xué)會聲明新類型
2.學(xué)會將函數(shù)重寫為方法
12
一等函數(shù)
1.學(xué)會將函數(shù)賦值給變量
2.學(xué)會將函數(shù)傳遞給函數(shù)
3.學(xué)會編寫能夠創(chuàng)建函數(shù)的函數(shù)
挑戰(zhàn) 3
溫度表
13
勞苦功高的數(shù)組
1.學(xué)會聲明和初始化數(shù)組
2.學(xué)會賦值和訪問數(shù)組中的元素
3.學(xué)會迭代數(shù)組
14
切片:指向數(shù)組的窗口
1.學(xué)會使用切片,通過窗口觀察太陽系
2.學(xué)會使用標(biāo)準(zhǔn)庫對切片實施字母排序
15
更大的切片
1.學(xué)習(xí)將更多元素追加至切片
2.了解長度和容量的運作機制
16
無所不能的映射
1.學(xué)會將映射用作非結(jié)構(gòu)化數(shù)據(jù)的收集器
2.學(xué)會聲明、訪問和迭代映射
3.探索多用途的映射類型的一些用法
17
切片人生
1.切片
2.數(shù)組
18
結(jié)構(gòu)
1.學(xué)會為火星上的坐標(biāo)創(chuàng)建小型結(jié)構(gòu)
2.學(xué)會如何將結(jié)構(gòu)編碼為流行的JSON數(shù)據(jù)格式
19
Go 沒有類
1.學(xué)會通過編寫方法為結(jié)構(gòu)化數(shù)據(jù)提供行為
2.學(xué)會應(yīng)用面向?qū)ο笤O(shè)計原則
20
組合與轉(zhuǎn)發(fā)
1.學(xué)會通過組合合并多個結(jié)構(gòu)
2.學(xué)會將方法轉(zhuǎn)發(fā)至其他方法
3.學(xué)會將傳統(tǒng)的類繼承拋諸腦后
21
接口
1.學(xué)會讓類型“說話”
2.學(xué)會按需使用接口
3.了解標(biāo)準(zhǔn)庫中的接口
4.學(xué)會幫助人類免受火星入侵
挑戰(zhàn) 4
火星上的動物避難所
22
關(guān)于指針的二三事
1.學(xué)會聲明和使用指針
2.理解指針和隨機訪問存儲器(RAM)之間的關(guān)系
3.了解指針的使用時機
23
關(guān)于 nil 的紛紛擾擾
1.學(xué)會處理沒有值的情況
2.理解nil引發(fā)的問題
3.了解Go是如何改進(jìn)nil機制的
24
孰能無過
1.學(xué)會寫入文件并處理錯誤
2.學(xué)會以創(chuàng)造性的方式處理錯誤
3.學(xué)會創(chuàng)建并標(biāo)識特定錯誤
4.學(xué)會處理驚恐
挑戰(zhàn) 5
數(shù)獨規(guī)則
25
goroutine 和并發(fā)
1.學(xué)會啟動goroutine
2.學(xué)會使用通道進(jìn)行通信
3.理解通道流水線
26
并發(fā)狀態(tài)
1.學(xué)會維持狀態(tài)安全
2.學(xué)會使用互斥鎖和應(yīng)答通道
3.學(xué)會實現(xiàn)服務(wù)循環(huán)
