做爲一個用過很多編程語言的人,我不看好Go語言

Go在不知不覺中在國內崛起了,然而網上有文章說,Go在國外不怎麼樣,卻在國內的關注度很高,當然我沒有考證過,不做評論。這篇文章主要是從語言本身客觀的說下Go的問題

Go的設計者宣稱Go大道至簡,的確,Go語言非常簡單,容易掌握。然而這個世界是一個矛盾的綜合體,簡單未必就好,也未必不好。

1、Go語言簡單,然而過於簡單,自然語言表現力上要差很多,應用場景自然有侷限性

2、Go不能手動管理內存(麻煩,不建議手動內存管理,和沒有也差不多)所以不適合做內存服務,典型的應用是memcahce,redis等

3、Go的目標可以說是現好的C,然而C裏面的一些語法結構它並沒有對應的支持,導致一些C實現的函數無法調用,最重要的是一些系統調用(或者叫系統API),所以從這個角度看它只能代替C的大部分能力,既然定位爲一個系統編程語言,那就一定要對C非常的友好,因爲windows也好,linux也好,核心都是C語言實現的,總是避免不了要和它打交到,除非你的應用系統相關的任務恰好Go能滿足

4、故意做了些語法糖以標新立異,比如省掉了括號等,這能做爲這點嗎?反正我覺得不算,可能是因爲習慣了括號,就像人的闌尾是多餘的,但是大多數人還是保留着,除非切除是必要的。當然有人說這可以少敲鍵盤,能少敲爲什麼要多敲。首先這對開發速度的提升是很微小的,因爲開發不是打字比賽,況且也沒有省多少,就像是縮進一樣,不縮進也一樣寫代碼,那爲什麼還要縮進,有人說爲了排版看着舒服,這樣就看着舒服了嗎,其實這也不一定,剛學編程的人很少有人注意縮進,而且他自己看着也挺好,想想我們現在各種對齊的縮進其實都是被培養了的習慣,開始誰也沒有這個習慣,既然養成了這個習慣,也沒有什麼不好的爲什麼要改掉呢


其實要說的還可以有更多,但本文的目的只是想提醒大家,不要盲從,大公司的東西未必全都好,最流行的東西也未必是最適合的,小衆的未必不是更好的選擇,學歷高的也未必有能力,有能力的未必學歷高,專家的話也未必是它自己真想說的,媒體的報道也經常是假象。這個世界真的需要認真思考

最後還是感謝Google公司的貢獻,有作爲總好過無作爲

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章