去年的時候曾經有做過一篇關於新手最適合入門的程式語言,在現在這個時代寫程式這項技能已經越來越普及,很多學校也開始導入相關的課程。那到了 2022 年,又有哪些程式語言最受大眾的歡迎以及最適合學習呢?
在軟體工程界相當知名的統計網站 Stack Overflow Developer Survey 在今年的調查顯示目前最受歡迎的程式碼就是 Javascript,忽略掉 HTML/CSS 這種比較基礎的語言,以及關於資料庫操作的 SQL,接下來緊接的排名就是 Python、TypeScript 以及 Java,所以今天就主要以這三種語言為主跟想要入坑的朋友們好好聊聊吧!
內容目錄
1. Javascript (TypeScript)
Javascript 簡稱 JS,它算是最廣為人知的一種語言之一,大家有所耳聞的前端框架像是 Vue、React 以及後端框架 Node、Golang 都是以 JS 為基底去開發,而JS 會這麼受到歡迎不是沒有原因的,不管是要寫網頁應用程式、手機 App、遊戲等等基本上所有東西都能夠做得出來,像是著名的影音串流平台 Netflix 以及前幾年爆紅的Candy Crush 都是以 JS 為基底,總體來說是非常強大的程式語言。
至於 TypeScript 比較像是標準化的 JS,最大的區別就是純 JS 是不會去定義資料的格式,以至於很多的開發者會不小心使用了錯誤的格式導致程式無法運作,TypeScript 做的事情就是強制再定義變數的時候加上 type 來避免很多開發時會犯的錯誤。
現在 TypeScript 在市場上的接受度已經越來越高,對於常在使用 JS 的朋友來說,如果不是要維護叫老舊的代碼的話,非常建議了解一下 TypeScript 的寫法並套用在之後的開發,目前已經有很多大公司比如 Google 都已經開始慢滿導入 TypeScript,所以如果你已經打算入坑 JS 了,也可以考慮直接從 TypeScript 學起。
課程推薦:
Typescript: The Complete Developer’s Guide
書籍推薦:
2. Python
再來第二個熱門選項就是 Python,如果你本身對於後端的興趣大於前端,或是對於機器學習、演算法、AI 這類領域有興趣的話,可以考慮把 Python 當成第一個程式語言來學習。Python 是屬於高階程式語言,也就是程式編寫邏輯更貼近我們一般生活的語言,相對於初學者來說也更容易上手。Python 可用於從相當簡單的腳本到相當複雜的資料計算,拿來建構網站、應用程式、遊戲等等各方面都能滿足,也是因為近幾年人工智慧的議題正夯,具有相當多 Library 比如 TensorFlow、PyTorch 以及 OpenCV 等也讓 Python 順水推舟地成為開發者的新寵兒。
Python 的實際應用與需求與日俱增,像是 MIT 以及哈佛大學都利用 Python 來作為研究的工具,科技龍頭包含 Google、Facebook、YouTube、Instagram 甚至 NASA 也都有使用到 Python。目前市面上一些較為前緣的技術像是物聯網、嵌入式系統、影像辨識、語音辨識、虛擬實境等等幾乎都是 Python 的涉獵範圍,還有像是 Django 這樣的網頁設計框架讓開發者不用從頭寫 code,大大提升開發效率,因為他的易學性很多美國的大學都把 Python 列入必修課之一。
課程推薦:
書籍推薦:
3. Java
Java 是一種歷史悠久的語言,他從 1995 年由 Sun Microsystems 所開發,自從被 Oracle 收購以來,Java 成為使用最為廣泛的語言之一。Java 是一種後端程式語言,他主要被應用在金融業交易、撰寫文件、資料處理、ATM 等等。除此之外,Java 不僅是 Andriod 作業系統背後的主要語言,他還是物聯網的首選語言,比如 Facebook、Google 等大科技公司目前正朝向物聯網佈局,也都是仰賴 Java 來撰寫。而由於其靈活性以及平台獨立性,也讓他與各種方式參與到 AI 的開發中,比如 TensorFlow、OpenNLP、Neuroph。
Java 相對於 Python 來說學習曲線較陡一點,他的結構風格比較貼近於 C++,採用了其物件導向的特性,也改善了 C++ 缺點,對於已經略懂 C++ 的朋友來說學習起來也會比較輕鬆。Java 的編譯過程相對比較繁瑣,而且執行速度比較緩慢,這也是為什麼它排在 Javascript 和 Python 之後的原因之一,不過根據求職平台 LinkedIn 的數據顯示,目前市面上的 Java 的職缺數仍然名列前茅,整體來說還是相當推薦的。
課程推薦:
書籍推薦:
怎麼選擇最適合自己的語言?
很多人在剛開始入門程式語言的時候,都會想說要去學當下最熱門、最多人學習的語言。當然小編一開始也是這樣,不過後來請教過在這個領域有好幾年經驗的朋友,他跟我分享最重要的應該是先釐清自己想要完成的「目標」,比如說想要寫出一個購物網站、想要做大數據分析、機器學習,或是寫出一套 App。不管是未來想要轉職還是只是想經營副業或興趣,每一種程式語言都有各自適用的領域,先多去涉略一些再來考慮也不遲~