# 6.4 總結
我最近聽go被描述成一門無聊的語言。無聊時因為很容易學,容易寫,更重要的是容易讀。也許,我實際幫了個倒忙。我已經用了3章談論類型并介紹了如何聲明變量。
如果你有靜態類型語言的編程背景,最好情況下,我們看到的大多數可能只是復習一下而已。go語言讓指針用起來更明顯且易用了,并且go將數組封裝成切片,對經驗豐富的java和c#程序員來說,不是什么壓倒性的優勢。
如果你主要是使用動態型語言,你可能覺得有點不一樣。這是一個公平的學習。不僅僅是各種各樣的語法聲明和初始化。盡管作為一個go語言的粉絲,盡管作為Go的粉絲,我發現,對于所有的簡單性的進展,也有一些不太簡單。雖然如此,這里也涉及到一些基本規則(比如你可以使用:=聲明變量,但是只能聲明一次)和基本理解(比如使用new(x)或者&X{}只能分配內存,但是切片、映射和通道需要更多的初始化所以使用make)。
除此之外,go語言讓我們以一種簡單有效的方式組織代碼。接口,基于返回值的錯誤處理方式,通過defer管理資源,并且以一種簡單的方式實現組合。
最后但是也最重要的是go內置支持并發。關于go協程沒有什么要說的了,除了協程簡單有效(無論如何使用簡單)。這是一個很好的抽象。通道更為復雜。我一直認為在使用高水平封裝之前先理解最基本使用方法。我認為不通過通道學習并發編程是很有用的。但是,對我來說,我覺得通道的實現方式不像一個簡單的抽象。它們幾乎都是自己的基本構建塊。我這樣說是因為它們改變了你如何編寫和思考并發編程。考慮到并發編程是多么的不易,這肯定是一件好事。
## 鏈接
- [目錄](directory.md)
- 上一章:[繼續之前](6.4.md)
- 關于本書
- 引言
- 準備工作
- 安裝 Go語言開發環境
- 開始使用Go
- 創建一個Go模塊
- 第一章 手把手系列
- 1.1 教你搭建Nginx教程
- 1.2 教你搭建Jupyter教程
- 1.3 教你搭建Node教程
- 1.4 教你搭建Fabric教程
- 1.5 教你搭建Ethereum教程
- 1.6 教你搭建Bitcoin教程
- 1.7 教你搭建Systemd教程
- 第二章 架構師之路
- 2.1 微服務開發筆記
- 2.2 Docker開發筆記
- 2.3 ElasticSearch開發筆記
- 2.4 Linux開發筆記
- 2.5 Mysql開發筆記
- 2.6 Nginx開發筆記
- 2.7 Redis開發筆記
- 第三章 區塊鏈教程
- 3.1 Bitcoin開發筆記
- 3.2 Ethereum開發筆記
- 3.3 USDT開發筆記
- 第四章 網絡知識庫
- 4.1 比特幣白皮書
- 4.2 以太坊白皮書
- 第五章 技術博客園
- 5.1 Fabric架構詳解
- 5.2 技術開發指南
- 5.3 共識機制詳解
- 第六章 項目管理
- 6.1 項目運行環境
- 6.2 項目經理的角色
- 6.3 第6、7、8章框架
- 第七章 公務員考公
- 7.1 程序員成功上岸經歷
- 7.2 程序員備考的最佳實踐
- 7.3 程序員備考過程中會遇到哪些問題?
- 7.4 公考公平嗎,35歲再去考可以么?
- 7.5 資料、工具推薦和擴展閱讀
- 結論
- 附錄