Go語言
接觸Go
語言差不多有一年了,一些零星筆記,總結一下彙總成Go
語言系列。
go語言解決了現代程式設計難題。
go語言的編譯器速度非常快。
-
很多go程式可以在1秒內編譯完。
-
go使用了更加智慧的編譯器,並簡化了解決依賴的演算法,最終提供了更快的編譯速度。
-
編譯go程式時,編譯器只會關注那些直接被引用的庫,而不是像Java、C和C++那樣,要遍歷依賴鏈中所有依賴的庫。
go語言內建併發機制。
- 所以不用被迫使用特定的執行緒,就能讓軟體擴充套件,使用更多的資源。在現代硬體上,編譯整個go語言原始碼樹只需要20秒。
go語言的型別系統簡單且高效。
-
Go是靜態型別的語言,它的型別系統沒有層級。不需要為面向物件開發付出額外的心智,讓開發者能專注於程式碼複用。
-
無繼承的型別系統,無需降低執行效能就能最大程度上覆用程式碼。
-
go開發者使用組合(composition)設計模式,只需簡單地將一個型別嵌入到另一個型別,就能複用所有的功能。支援面向物件開發,避免了傳統面向物件的問題,花費很長時間去考慮如何抽象類和介面。
-
獨特的介面實現機制,允許使用者對行為進行建模,而不是對型別進行建模。不需要宣告某個型別實現了某個介面,編譯器會判斷一個型別的例項是否符合正在使用的介面。