回覆列表
-
1 # enochliu
-
2 # 趙黑臉
首先宣告一下,本人是go語言的骨灰級粉絲,下面表述難免偏向於主觀,謹慎閱讀。
我覺得最應該說就是go語言的goroutine,這個機制使得該語言特別適合於網路程式設計和io較多的場景,它從程式語言層次很好解決了多執行緒程式設計的難點,比如傳統執行緒記憶體消耗大,程式設計難度高等問題。在go語言精心的設計下,我這種小白也可以整天大刀闊斧的多執行緒程式設計了,難度真的降了好幾個數量級。
再著,我喜歡它獨特的程式設計模式。他拋棄了大多數面嚮物件語言的那種宣告類的語言,採用結構體加方法的形式組織型別。這使得該語言傾向於”不倫不類”,它既有面向物件語言的特點,又有面向過程需要的特點,我相信這樣的結果正恰恰是go語言設計者的初衷。他們都是有著豐富的程式設計經驗的世界級工程師,他們對此有著自己深刻的認識以及經驗。因此,他們將語言設計為這樣。
其中有一個讓我拍案叫絕的小設計是,它們去掉了無用的while迴圈,直到這裡,我才明白了程式碼到底可以多簡單,這麼多年的while語句原來是廢物,它們只是讓一門語言變得更加複雜而已。
最後,go語言真的值得一學!
開發效率高於C,執行時又不像java這麼耗資源,釋出軟體時候不需要像其它的解釋性語言一樣連原始碼也釋出了,是適合中國國情的一款語言。