【AI60問】Q14 哪些資料分析語言受歡迎?

by 提拔我園丁
緯育TibaMe AI小教室-Q14哪些資料分析語言受歡迎?

TIOBE是最具代表性的程式語言的社群,每月皆會更新一次程式語言排行榜。根據今年2021年1月TIOBE發布的熱門程式語言排行榜中,C語言至2020年5月取代JAVA後至今仍是冠軍,成長了1.61%,而第二名的Java占比11.96%,但以總體局勢來看是稍有下滑趨勢下降4.93%,而Python與2020年相比則穩居第三名。

TIOBE每年選出年度熱門獎,評分標準來自各界的工程師、課程和第三方供應商,以及搜尋引擎的搜尋數據,ex:Google、Bing、維基百科…等。

圖14-1 TIOBE發布了2021年1月的熱門程式語言排名

今天將為大家介紹2021年前3名最熱門的程式語言:

1、C — 古老、結構化程式語言

C是幾種語言中最古老的。 但C語言編譯方式簡單,速度快、容量小,方便在硬體上使用。

C語言是結構化語言,有清楚的層次,可依照模塊對程序進行編寫,且C語言的處理和表現能力都非常強大,可以輕易完成各種數據結構的構建,也可用於開發應用軟體。

優點

  • 普遍通用
  • 執行速度快
  • 數據類型豐富
  • 跨平台使用

缺點

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

應用

  • 較底層的程式設計,接近硬體
  • 如:作業系統、驅動程式、嵌入式系統、解碼引擎
*C、C#、C++差別在哪?

C# (C-Sharp) —微軟推出,物件導向的程式語言
優點:應用廣泛、簡化C++複雜性、容易上手
缺點:語法不精簡
應用:桌面app、視窗、資料庫、網頁、手機
特色:遊戲工程師玩Unity必修!

C++ —附著在C語言的程式語言
優點:結構嚴謹、安全性高、比C容易處理
缺點:複雜、想將效能最大化的程式設計師才會使用
應用:強調圖形效果的遊戲、物理模擬、網站伺服器、作業系統

2、Java — 一次編寫、到處執行,最流行語言之一

Java永不過時,發展超過20年,是學程式的必備語言。它適用於任何平台,不論是Mac、Windows、Linux程式碼都是一樣的。而Java的開發者對C++非常熟悉,與C++的結構很類似,但改善C++的缺點,若是有學過C++的人學習起來相對輕鬆,未來跳其他程式語言門檻相對低。

優點

  • 跨平台運作(Mac、Windows、Linux)、相容性高
  • 相對安全便利
  • 發展性高
  • 高市場需求
  • 物件導向(支援大型專案靈活度、可維護性、可擴充性)
  • 豐富框架

缺點

  • 執行速度緩慢
  • 停止更新免費版

應用

  • 架設網站與後台
  • 桌面/網路應用程式
  • Android App
  • 伺服器
  • 桌面/網路應用程式
  • 物聯網、區塊鏈、大數據、遊戲開發…

Java因靈活度高以及可在不同平台使用,因此也運用在不少 AI 的開發中,在金融業、電信通訊業、資訊業、雲端產業、醫療產業、電商…等企業中,對於Java技能的需求仍處不減反增的地位。

【Java課程推薦】

學程式也能很好玩:不背語法寫Java

成為後端工程師|踏上程式起點,逐步掌握Java語言特性與物件導向程式設計

更多Java課程

3、Python—開源程式語言、熱門且容易學習

Python被稱為目前最熱門的程式語言之一,在AI人工智慧興起後,Python更快速成為大家知道的語言。可說是最簡單好學的語言,甚至不少學校將它列完入門的學習語言。

Python可以做網路爬蟲、數據清洗、數據建模,也根據業務場景和實際問題構造,進行資料分析演算法、資料視覺化、機器學習、文本挖掘…等高級資料探勘與分析領域。

但若是跟C語言相比,C語言效率雖高 但程式設計較難;而Python效率低,但程式設計簡單。 機器執行卻是C語言的好幾倍;但C 的程式設計實現的難度較大,在機器上的執行效率很高。 所以許多公司若有大量需要執行,較偏愛C語言。若執行次數少、寫程式碼的速度要快,則更喜歡使用Python。

優點

  • 語法簡單好用,適合初學者撰寫
  • 免費、豐富的函式庫,可以輕鬆使用
  • 完整物件導向
  • 直譯式語言,可用原始碼直接執行
  • 跨平台支援

缺點

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

應用

  • 實務應用廣泛
  • 人工智慧、機器學習可用Python開發
  • 資料分析、科學計算、系統管理、網頁開發…都可用它實現

常用的程式庫

  • Google的 TensorFlow — 用於機器學習與資料集處理。TensorFlow應用包括對象識別、語音識別等。
  • Matplotlib — 利用Python所實作的繪圖套件,可以建構圖表,直方圖、散點圖、非笛卡爾坐標圖。此外,許多流行的繪圖庫都會與它一起使用。顏色、大小、字體、圖例等都有變化。
  • scikit-learn — 訓練機器學習模型。它為許多標準機器學習和數據挖掘任務提供算法,例如聚類、回歸、分類、降維和模型選擇。
  • Facebook的 PyTorch — 計算機視覺和自然語言處理。 提供豐富的API,解決與神經網絡相關的應用。
  • Keras — 用於處理神經網絡的高級庫,運行在TensorFlow、Theano之上。它簡化許多特定任務,並減少了單調代碼的數量。但是,它不適合複雜的事情。
  • Scrapy— 用於創建掃描網站頁面和收集結構化數據的爬蟲庫。

【Python課程推薦】

Python課程推薦

快速複習3種熱門資料分析語言

緯育TibaMe已經有10萬人次來學習AI/資料科學知識或技術,若你想進一步了解或學習 AI / 資料科學的相關知識或技能,歡迎來TibaMe 👉 https://www.tibame.com/eventpage/ai_datascientist 

AI資料科學家-三階段全方位學程班
AI資料科學家-三階段全方位學程班

下篇將與大家分享 資料分析哪些技能需要學習? 

每週4則,每日5分鐘, 提拔我園丁陪你快速添補AI/資料科學知識與技能。

若您想了解更多AI/資料科學的小知識、及各產業的相關應用,歡迎訂閱TibaMe FB及部落格,或你有其他想了解的主題歡迎在下方留言讓我們知道唷!

緯育TibaMe FB

企業人才數位轉型FB

參考資料

  1. iThome– Python第4度拿下TIOBE年度程式語言獎
  2. 選Python還是選Java?2020年,頂尖程式設計師最應該掌握的7種程式語言
分享這篇文章:
0 留言
3

您也許會喜歡

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料