小弟目前在公司負責架構設計及技術導入
由於產品是廣告投放平台
能不能在短時間內快速響應使用者請求是很關鍵的因素
先前產品是由 Scala + Nodejs 所開發
後續選擇 Go 重新開發的原因主要會從幾個面向下去思考
1. 效能
Go 的 benchmark 有很多人做過就不多提
但關鍵的一點是你不必到「非常精通」就能寫出效能還不錯的程式
先前看到文章是底層在運作時
會幫你處理掉許多複雜的東西: goroutine、inlining 等等
建議參考由 Dave Cheney 寫的文章
https://dave.cheney.net/2014/06/07/five-things-that-make-go-fast
該位作者針對 Golang 撰寫許多相當深入的文章
值得參考
2. 上手難度、維護性
Golang 很無聊,保留字很少
不像其他語言有許多 syntax sugar
帶來效益是新手也能夠很快的上手
不會出現新手跟老手程式風格差異很多、效能落差等問題
針對團隊 (不見得是大型,有兩三人共同開發時也算)
由於他實在太無聊,語言層面能玩的花樣很少
(除了 design pattern 要學習以外)
導致每個人開發風格極度類似
是好是壞見仁見智
但團隊要快速開發及方便維護上絕對有其好處
還蠻想在golang/nodejs應用環境工作QQ
作者: kkk003 (海寒) 2017-08-12 17:49:00
推
作者:
chiel (All 噴 將!!)
2017-08-12 23:30:00推大大慶
個人也喜歡風格相近,但有人認為寫起來不像其他語言順手為獲取工程面效益,只能說是權衡後的結果 XD
作者:
ian90911 (xopowo)
2017-08-13 15:51:00推
作者:
Clain66 (酗咖啡是種原罪)
2017-08-13 23:05:00golang 的 package management 目前還是很不方便呀
敝公司使用 glide 管理,也正在等官方的 godep 出現
作者:
Daidouji (Daidouji)
2017-08-14 22:45:00太強ler8 崇拜你的小粉絲
作者:
shedoh (仙道)
2017-08-16 15:43:00推強者大慶
作者:
chrome (老大是Google)
2017-08-16 15:48:00推
作者:
kkdai (Stockton and Malone)
2017-08-21 15:32:00Dave Cheney 九月要來台灣喔