1.電腦一直在演化,64核,128核等等,但是我們依舊在使用為單核設計的技術編程2.Go語言讓分享自己的代碼包更容易3.Go語言重新思考傳統的面向對象,提供了更高效的復用代碼手段4.Go不僅提供高性能而且開發更快速5.Go語法簡潔,編譯速度快,內置併發,自帶垃圾回收器6.Go編譯器只關註直接被引用 ...
1.電腦一直在演化,64核,128核等等,但是我們依舊在使用為單核設計的技術編程
2.Go語言讓分享自己的代碼包更容易
3.Go語言重新思考傳統的面向對象,提供了更高效的復用代碼手段
4.Go不僅提供高性能而且開發更快速
5.Go語法簡潔,編譯速度快,內置併發,自帶垃圾回收器
6.Go編譯器只關註直接被引用的庫,不像java c c++遍歷所有依賴;編譯器也可以捕獲類型錯誤
7.Go的併發模型更傾向於在goroutine之間發送消息channel,而不是去爭奪同一個數據的使用權
8.確保併發運行的進程 線程 goroutine不會意外修改用戶的數據,在其他語言中如果使用全局變數或者共用記憶體,必須使用複雜的鎖規則
9.在goroutine之間利用通道安全的傳輸數據的方法不需要任何鎖或者同步機制,通道並不提供跨goroutine的數據訪問保護機制
10.Go提供了靈活的,無繼承類型系統,避免了傳統面向對象的問題,使用組合設計模式,只需要將一個類型嵌入另一個類型,就能復用所有的功能
11.Go具有獨特的介面實現機制,允許用戶對行為進行建模,不需要聲明某個類型實現了某個介面
12.Go提供簡單類型還支持自定義類型,用戶定義的類型通常包含一組帶類型的欄位,用於存儲數據
13.如果一個類型實現了一個介面的所有方法,這就是鴨子類型實現了這個介面