# Summary

* [前言](preface.md)
  * [Go語言起源](ch0/ch0-01.md)
  * [Go語言項目](ch0/ch0-02.md)
  * [本書的組織](ch0/ch0-03.md)
  * [更多的信息](ch0/ch0-04.md)
  * [致謝](ch0/ch0-05.md)
* [入門](ch1/ch1.md)
  * [Hello, World](ch1/ch1-01.md)
  * [命令行參數](ch1/ch1-02.md)
  * [査找重複的行](ch1/ch1-03.md)
  * [GIF動畵](ch1/ch1-04.md)
  * [獲取URL](ch1/ch1-05.md)
  * [併發獲取多個URL](ch1/ch1-06.md)
  * [Web服務](ch1/ch1-07.md)
  * [本章要點](ch1/ch1-08.md)
* [程序結構](ch2/ch2.md)
  * [命名](ch2/ch2-01.md)
  * [聲明](ch2/ch2-02.md)
  * [變量](ch2/ch2-03.md)
  * [賦值](ch2/ch2-04.md)
  * [類型](ch2/ch2-05.md)
  * [包和文件](ch2/ch2-06.md)
  * [作用域](ch2/ch2-07.md)
* [基礎數據類型](ch3/ch3.md)
  * [整型](ch3/ch3-01.md)
  * [浮點數](ch3/ch3-02.md)
  * [複數](ch3/ch3-03.md)
  * [布爾型](ch3/ch3-04.md)
  * [字符串](ch3/ch3-05.md)
  * [常量](ch3/ch3-06.md)
* [複合數據類型](ch4/ch4.md)
  * [數組](ch4/ch4-01.md)
  * [Slice](ch4/ch4-02.md)
  * [Map](ch4/ch4-03.md)
  * [結構體](ch4/ch4-04.md)
  * [JSON](ch4/ch4-05.md)
  * [文本和HTML模闆](ch4/ch4-06.md)
* [函數](ch5/ch5.md)
  * [函數聲明](ch5/ch5-01.md)
  * [遞歸](ch5/ch5-02.md)
  * [多返迴值](ch5/ch5-03.md)
  * [錯誤](ch5/ch5-04.md)
  * [函數值](ch5/ch5-05.md)
  * [匿名函數](ch5/ch5-06.md)
  * [可變參數](ch5/ch5-07.md)
  * [Deferred函數](ch5/ch5-08.md)
  * [Panic異常](ch5/ch5-09.md)
  * [Recover捕獲異常](ch5/ch5-10.md)
* [方法](ch6/ch6.md)
  * [方法聲明](ch6/ch6-01.md)
  * [基於指針對象的方法](ch6/ch6-02.md)
  * [通過嵌入結構體來擴展類型](ch6/ch6-03.md)
  * [方法值和方法表達式](ch6/ch6-04.md)
  * [示例: Bit數組](ch6/ch6-05.md)
  * [封裝](ch6/ch6-06.md)
* [接口](ch7/ch7.md)
  * [接口是合約](ch7/ch7-01.md)
  * [接口類型](ch7/ch7-02.md)
  * [實現接口的條件](ch7/ch7-03.md)
  * [flag.Value接口](ch7/ch7-04.md)
  * [接口值](ch7/ch7-05.md)
  * [sort.Interface接口](ch7/ch7-06.md)
  * [http.Handler接口](ch7/ch7-07.md)
  * [error接口](ch7/ch7-08.md)
  * [示例: 表達式求值](ch7/ch7-09.md)
  * [類型斷言](ch7/ch7-10.md)
  * [基於類型斷言識别錯誤類型](ch7/ch7-11.md)
  * [通過類型斷言査詢接口](ch7/ch7-12.md)
  * [類型分支](ch7/ch7-13.md)
  * [示例: 基於標記的XML解碼](ch7/ch7-14.md)
  * [補充幾點](ch7/ch7-15.md)
* [Goroutines和Channels](ch8/ch8.md)
  * [Goroutines](ch8/ch8-01.md)
  * [示例: 併發的Clock服務](ch8/ch8-02.md)
  * [示例: 併發的Echo服務](ch8/ch8-03.md)
  * [Channels](ch8/ch8-04.md)
  * [併發的循環](ch8/ch8-05.md)
  * [示例: 併發的Web爬蟲](ch8/ch8-06.md)
  * [基於select的多路複用](ch8/ch8-07.md)
  * [示例: 併發的字典遍歷](ch8/ch8-08.md)
  * [併發的退出](ch8/ch8-09.md)
  * [示例: 聊天服務](ch8/ch8-10.md)
* [基於共享變量的併發](ch9/ch9.md)
  * [競爭條件](ch9/ch9-01.md)
  * [sync.Mutex互斥鎖](ch9/ch9-02.md)
  * [sync.RWMutex讀寫鎖](ch9/ch9-03.md)
  * [內存同步](ch9/ch9-04.md)
  * [sync.Once初始化](ch9/ch9-05.md)
  * [競爭條件檢測](ch9/ch9-06.md)
  * [示例: 併發的非阻塞緩存](ch9/ch9-07.md)
  * [Goroutines和線程](ch9/ch9-08.md)
* [包和工具](ch10/ch10.md)
  * [包簡介](ch10/ch10-01.md)
  * [導入路徑](ch10/ch10-02.md)
  * [包聲明](ch10/ch10-03.md)
  * [導入聲明](ch10/ch10-04.md)
  * [匿名導入](ch10/ch10-05.md)
  * [包和命名](ch10/ch10-06.md)
  * [工具](ch10/ch10-07.md)
* [測試](ch11/ch11.md)
  * [go test](ch11/ch11-01.md)
  * [測試函數](ch11/ch11-02.md)
  * [測試覆蓋率](ch11/ch11-03.md)
  * [基準測試](ch11/ch11-04.md)
  * [剖析](ch11/ch11-05.md)
  * [示例函數](ch11/ch11-06.md)
* [反射](ch12/ch12.md)
  * [爲何需要反射?](ch12/ch12-01.md)
  * [reflect.Type和reflect.Value](ch12/ch12-02.md)
  * [Display遞歸打印](ch12/ch12-03.md)
  * [示例: 編碼S表達式](ch12/ch12-04.md)
  * [通過reflect.Value脩改值](ch12/ch12-05.md)
  * [示例: 解碼S表達式](ch12/ch12-06.md)
  * [獲取結構體字段標識](ch12/ch12-07.md)
  * [顯示一個類型的方法集](ch12/ch12-08.md)
  * [幾點忠告](ch12/ch12-09.md)
* [底層編程](ch13/ch13.md)
  * [unsafe.Sizeof, Alignof 和 Offsetof](ch13/ch13-01.md)
  * [unsafe.Pointer](ch13/ch13-02.md)
  * [示例: 深度相等判斷](ch13/ch13-03.md)
  * [通過cgo調用C代碼](ch13/ch13-04.md)
  * [幾點忠告](ch13/ch13-05.md)
* [附録](appendix/appendix.md)
