Go劍復國-30天導入Golang Day1 為何選擇golang?
敝公司當初的technology stack 都是以 linux + php + nginx 為公司標配的開發的 模式,以初期的發展模式來說php 有幾個優點:
- 社群龐大
- 學習曲線低
- framework百家爭鳴
- 招募人才容易
選擇php的確是一時之選,但到了中後期公司的業績逐步成長,追求的不再是快速開發,>反而是需要穩定,而且在執行效率優良的方案。
以我個人來說,當初接到這個任務,評估過的語言有nodejs、java、python、golang,我自己列出我自己想要的需求為下:
- 強型別
- 高效能
- 學習曲線中等
- 社群不能太小
- 官方文件好閱讀
至於各語言的淘汰原因為下:
- nodejs,在一些啟動相關前置套件,我覺得過於龐大,所以不採用。
- java則是官方api文件太過於龐大複雜,而且個人不太喜歡那麼純oop的語言,所以也不 採用。
- python 則是 2跟3之間的戰爭實在是拖太久,我無法深入的去了解到底要以哪個版本當 切入,所以也不採用。