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

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

最後更新日期:2024 年 1 月 13 日

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#

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. 阿璋老師您好:

    我大學是念化工系(2010-2014),在就學過程中曾學習過 Fortran 與 MATLAB 這兩個程式語言,用於描述與解決工廠內管線輸送內的相關參數與問題

    因為有鑑於近幾年,國內外學習程序語言逐漸年輕化,連國小開始就要學程式語言,且跨領域學科合作越來越普遍

    想想自己應該要學習1~2個較為主流的程式語言,避免落後社會主流或趨勢,根據本篇文章(【比較】2020 程式語言排名與分析,該學習哪一種程式語言?程式語言, 精選)

    所描述的內容,目前想學習 Python 為主,次要的學習語言應該為 JAVA 或是 C 語言

    想請問阿璋,我學習過 Fortran 與 MATLAB 這兩個程式語言,對於完全從零開始學習 Python 與 JAVA 或是 C 語言,會有很大的幫助嗎?

    謝謝!

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

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

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

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

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

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

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

  6. 使用c#開發很久
    如同你說的,C#特臭長,同一個描述,C#開發起碼增加相對python ruby javascript兩倍以上語法,
    其實C#搭配的.net很多創新概念非常激進,只是不一定實用,甚至有時候會拔除,這跟其他語言相比,如果新推出的框架或語言還可以諒解,但是C#跟JAVA都算成熟,但是C#過度創新的語法常常會失效,另外我也有遇過作業系統升級後,有些C#衍伸的應用會失效。
    所以C#如果要讓專案穩定,真的就是使用老派的寫法沒有之二

    還有C#再怎樣就是黏死在.net,不像java有openJDK各種解,所以.net有事全部有事。

    其實台灣人不太在意javascript,但國外卻用得非常猛,尤其在各種框架、nodejs與tensorflowjs盛行之後,其實js是很可怕的大魔王,就算是變化過的dart跟ts,其實都算是JS領域。

    python真的好寫又好用,我從C#過來用馬上迷上了,效率與品質都高太多了,不過要搭配工具與套件,要不然你會不好寫。

發表迴響

返回頂端