fbpx

【比較】2024 程式語言排名與分析,該學習哪一種程式語言?

最後更新日期:2024 年 7 月 6 日

2024 年最受歡迎的程式語言排名出爐了!

前 6 名的語言中,我通通都會寫,讓我在職場上取得優勢。

想學程式的人千萬不能錯過,讓我來告訴你我是如何學習這些語言。

【比較】2024程式語言排名與分析,該學習哪一種程式語言?
【比較】2024程式語言排名與分析,該學習哪一種程式語言?

2024 最新程式語言排名

2024 年的程式語言排名出爐了,Java 終於被打敗了,但熱門語言都差不多。

2024 TIOBE 程式語言排名
2024 TIOBE 程式語言排名

程式語言排名前六名依序是:

  1. Python
  2. C
  3. C++
  4. Java
  5. C#
  6. JavaScript

Python 在 2024 年穩居第一名,自 2021 超越以後就不回頭了。

過往十年的老大老二 C、JAVA 也逐漸變動,代表一個程式語言的新世代。

Visual Basic 從 2024 開始已經掉落以往的排名,未來應該會越來越弱勢。

讓我們來看看從 2002 年到 2024 年前 10 名的排名走勢:

歷年程式語言排名走勢
歷年程式語言排名走勢

由上圖可見,2021 開始 Python、C 基本上都在前兩名,所以這兩個算是學程式的必備語言,而 C++ 算是 C 的延伸,我也覺得算是必學。

不過 Python 是從 2018 年開始崛起,因為 AI 以及 Big Data 的崛起,所以算是近期上升幅度最高的語言,在 2022 年開始稱霸第一名。

從語言來說,基礎底層語言、物件導向、高階語言都最好要學會至少一種。

以上四種都是我覺得在今年想學好程式必須學的語言,至於 C#、JavaScript 我覺得就因人而異,看自己的需求。

JavaScript 的學習門檻較低,有閒暇我也會推薦自學。

前六名介紹

Python

Python

Python 是一套直譯式、物件導向、功能強大的語言。

Python的設計哲學強調程式碼的可讀性和簡潔的語法,試圖讓程式的結構清晰明瞭。

優點

  • 容易撰寫,適合初學者寫,非常直觀
  • 功能強大,許多函式庫都可以輕鬆使用
  • 跨平台
  • 容易擴充
  • 應用範圍廣,包含機器學習、數據分析、爬蟲等等

缺點

  • 速度慢,因為是高階語言,底層的處理無法自己改
  • 強制縮排,一定要用4個空白鍵來縮排,否則會編譯錯誤

C

C語言

C語言使一個歷史悠久的語言,也非常通用,在各個平台都能使用。

C語言能以用很簡單的方式編譯,使得它速度快、容量小,方便在硬體上使用。

優點

  • 簡潔緊湊、靈活方便
  • 數據類型豐富
  • 允許直接訪問物理地址,對硬體進行操作
  • 表達力強
  • 跨平台使用

缺點

  • 程式寫錯時,不容易除錯
  • 官方沒有大型的函式庫,要下載別人的或是自己寫
  • 處理字串很麻煩

C++

C++

C++ 是一種使用廣泛的電腦程式設計語言,目的是將將 C 語言實現物件導向的程式語言。

C 的程式基本上都可以在C++直接使用。

優點

  • 結構嚴謹
  • 安全性高
  • 性能強大
  • 比 C 容易處理許多類型

缺點

  • 複雜
  • 遇到錯誤不容易除錯

Java

Java

Java 是一個優秀的語言,它最大的特點就是跨平台,不論 Mac 、Windows、Linux ,程式碼長的都一樣。

Java的開發者對於C++非常熟悉,所以改善了C++的缺點,但是結構上還是非常相似,所以熟悉 C++ 的人,學起來會特別輕鬆。

優點

  • 跨平台、相容性高
  • 可以做各式各樣的應用,像是網頁前後端、GUI開發等等
  • 安全性高

缺點

  • 為了改善 C++ 的便利性,造成Java的執行速度緩慢
  • 編譯過程繁瑣
  • 停止更新免費版本

C#

程式語言排名 - 【比較】2024 程式語言排名與分析,該學習哪一種程式語言? 8

C# 為物件導向的高階程式語言,C# 是由 C、C++ 延伸而來,除了效能不錯以外,又有 .NET Framework 作為根基,因此能讓開發者快速進行專案開發。

優點

  • 更先進的語法體系
  • 強大的周邊服務(微軟支持)

缺點

  • 他是一個產品,只要求穩定,而不是先進
  • 沒有考慮程式碼量,語法不精簡

JavaScript

JavaScript

JavaScript是一種用於網頁開發的程式語言,主要用於瀏覽器中實現動態效果和互動性。

優點

  • 客戶端腳本,無需額外配置。
  • 動態效果,提升用戶體驗。
  • 廣泛瀏覽器支持,標準開放。

缺點

  • 安全攻擊風險,如跨站腳本(XSS)。
  • 單線程執行,可能導致性能問題。
  • 不同瀏覽器兼容性差異,需處理額外代碼。

該如何學習程式語言?

我覺得現在的線上資源有非常多,如果只是單純要開發某個功能,直接上網搜尋關鍵字就好。

但是如果要學好學滿一個程式完整的架構,我還是建議看一本完整的書、線上課程、官方文件

可是官方文件實在不是人看的,所以我找了幾本比較簡單也比較多圖片的書籍,來推薦給大家。


Python 學習資源

推薦書籍:深入淺出Python(第二版)

推薦原因:Python不像是低階語言,有很多規則要學習,它非常的直觀,所以這本書幾乎全部都是實作,讓你可以做出許多作品。

推薦線上課程:

深入淺出Python(第二版)
深入淺出Python(第二版)

C 語言學習資源

推薦書籍:C語言入門精要

推薦原因:每個章節都有很簡短的範例,內容寫的很精要,C 語言的原文書本身很枯燥,但這本書將它表達的比較活潑。

推薦線上課程:

C語言入門精要
C語言入門精要

Java 學習資源

推薦書籍:從零開始!Java 程式設計入門

推薦原因:這本書有大量的範例,文字不會過於密集,很適合閱讀以及入門。

推薦線上課程:

從零開始!Java 程式設計入門
從零開始!Java 程式設計入門

C++ 學習資源

推薦書籍:C++程式設計入門(第二版)

推薦原因:大量範例+詳細解析+實作練習,並且提供「APCS大學程式設計先修檢測」的觀念技巧,如果是讀資工系的,絕對不能錯過這本。

推薦線上課程:

C++程式設計入門(第二版)
C++程式設計入門(第二版)

C# 學習資源

推薦書籍:新觀念 Visual C# 程式設計範例教本(第五版)

推薦原因:針對程式設計觀念的結構化程式設計、物件基礎和物件導向程式設計,可以讓讀者建立正確的程式設計觀念。

推薦線上課程:

新觀念 Visual C# 程式設計範例教本(第五版)
新觀念 Visual C# 程式設計範例教本(第五版)

JavaScript 學習資源

推薦書籍:最完整跨平台網頁設計:HTML + CSS + JavaScript + jQuery + Bootstrap + Google Maps王者歸來(第二版)

推薦原因:JavaScript 學習的途徑最好與其他的網頁語法一起,這是我覺得最實戰、最應用的方式,看完這本就有前端基礎了。

推薦線上課程:

最完整跨平台網頁設計:HTML + CSS + JavaScript + jQuery + Bootstrap + Google Maps王者歸來(第二版)
最完整跨平台網頁設計:HTML + CSS + JavaScript + jQuery + Bootstrap + Google Maps王者歸來(第二版)

結論

我在大學的時候,很慶幸地學會了前五名的語言,所以在履歷表列出來的時候,基本上不可能找不到工作。

如果未來是念資工系的或是想要轉行當工程師,一定至少要看過一兩本程式語言書籍,才能學到完整的架構。

我在上面推薦的書籍,大多都是包含非常多的範例,我覺得這樣有以下幾個好處:

  1. 可以立即知道自己讀的內容,實做出來的樣子。
  2. 工作要的是實作能力,不是嘴巴空談。
  3. 增加自己的作品集,可以放上 GitHub,曾經有 Google 的 HR 透過我的 GitHub 找我面談。
  4. 遇到錯誤才會知道自己哪裡觀念還不清楚

阿璋的 Instagram 有一系列的 #工程師之路,追蹤這個 IG 會對你們學程式更有幫助,到 IG 搜尋這個標籤就可以找到過去分享的內容。

工程師之路
工程師之路

支持阿璋的新書《打開網路就有錢》,裡面分享許多自媒體以及投資理財的知識,非常適合網路創業者以及想要增加額外收入的上班族閱讀。

打開網路就有錢 呂明璋(工具王阿璋)

我正在進行數位遊牧,如果你對我的生活感興趣,歡迎訂閱阿璋數位遊牧週報

如果你對幣圈資訊有興趣,可以加入新手社群:阿璋 – 幣圈新手討論群

12篇文章手把手教你如何透過部落格開始賺錢:站長之路

更多相關社群連結:工具王阿璋社群列表

本站有部分連結與商家有合作關係,透過我的連結購買,我會獲得少數佣金,讓我可以持續營運網站,但並不會影響您的任何權益,詳情查看免責聲明

如果我的文章對你有幫助,歡迎贊助我一杯咖啡!

本站所有內容皆為阿璋個人經驗分享,如有涉及投資請謹慎評估,阿璋不做任何投資建議。

贊助我一杯咖啡

文章引用請來信索取授權,否則將保留法律追訴權。

by Johntool-工具王阿璋

在〈【比較】2024 程式語言排名與分析,該學習哪一種程式語言?〉中有 19 則留言

  1. 你好,我是中壢高商的學生,目前正在修程式語言設計這門課,想要做學習歷程檔案,請問能引用您的資料做為參考嗎,會把您的網址附在參考文獻裡

  2. Python並非強制規定使用4個空格進行縮排
    而是強制規定「同一層級的同一區塊」必須使用相同數量的空格(或縮排符號)來進行縮排
    實際上以下寫法是合法的

    x=0
    while x<4:
    if x%3:
    print(x)
    x+=1

    for i in range(10):
    print(i)

  3. C#的缺點我覺得可以改一下了

    他是一個產品,只要求穩定,而不是先進 -> 現在能跨平台了,Docker啥的都可以支援。從網頁到視窗到遊戲開發這語言都能幹
    沒有考慮程式碼量,語法不精簡 -> 現在語法糖越來越多了,比起來java才是那個語法很不精簡的

  4. 不好意思,想請教一下,
    若一位程式的初學者想要能撰寫一個程式,
    讓機器設備中的數據資料可傳送到程式中,
    並將數據資料匯出CSV檔,
    再將CSV檔匯入另一個程式中(例如ERP)
    請問應該學習的有哪些呢?

發表回覆