choice
程式語言的選擇
考量因素
速度
- 一般的認知 編譯式(GO, C#, C++) > 直譯式 (Python , php, js) >
- 如果跑的是網路服務, 瓶頸通常會在DB,網路或架構, 語言通常會依據各自特性找到最佳化的方式, 其實語言沒那麼重要
工作機會
- 看看當地哪些需求多, 也可以參考薪資
- 有些語言在台灣需求不高, 但在國外需求很高 ex: Go, Rust
大公司
- 台灣製造業通常會用C#, (python for data analysis)
- 金融業會用Java, (python for data analysis)
吉祥物
- at last but not last important, 吉祥物很重要!!!
以下是一些常見程式語言及其吉祥物的表格呈現:
程式語言 | 吉祥物 |
---|---|
PHP | 大象 |
Python | 蛇 |
Java | 咖啡杯 |
JavaScript | 無官方吉祥物 |
C# | 無官方吉祥物 |
Dart | Dash (擬人化的鳥) |
Swift | Swift Bird (抽象化鳥) |
Go | Gopher (地鼠) |
Ruby | 紅寶石 |
Rust | Ferris (螃蟹) |
一開始學的是 Php 和 javascript 後來學了 python(工作需求) 還有 golang (看到吉祥物會想到老婆XD), 後續想學Rust(因為新竹海邊有很多招潮蟹), 學習語言不需要理由, 但如果是要找工作, 千萬別學我... 和其他同事聊過, 很少人是看語言在找工作的, 大家看的都是公司和薪水XD , 有些公司會願意讓你進來後再學相關語言,目前聽過台積少數部門有用到Go, 新竹 go 和 rust 的缺真的不多, 當興趣可以, 拿來吃飯比較困難(2019-2024 觀察)
如果是兒子或女兒要學程式, 可能會叫他們選 javascript (前後端通用), python (後端,資料流, AI 通用), 簡單就好... 會建議他們學習邏輯, 而不是語言, 語言只是工具, 邏輯才是核心, 未來的語言可能會是全新的語言, 但邏輯是不變的, 加上善用AI 工具可輕易轉換語言, 還可以說明給你聽, 選擇什麼語言其實沒那麼重要.