電腦科學線上課程

Coursera 29 個電腦科學線上課程推薦總整理

如果你在高中發現自己對電腦科學(computer science)很感興趣,或不排斥、願意嘗試了解 CS 這個科系,那學生除了在學校上相關課程以外,也可以在校外額外進修相關課程,獲取更多專業知識。

在今天這篇文章中,我們主要推薦的是 Coursera 上的電腦科學線上課程,開課方多半來自世界知名大學。如果你也感興趣的話,不妨挑幾個你有興趣的主題,開始學習吧!


1. Programming Languages

  • 費用:$39 美元
  • 課程時間: 30 小時
  • 課程條件:需有一些程式語言基礎
  • 彈性的上課時間:
  • 課程證書:

本課程介紹了程式語言的基本概念,特別強調函數式編程。該課程使用 ML、Racket 和 Ruby 作為教授概念的工具,但真正的目的是讓學員了解任何語言如何「組合在一起」的知識,讓你更有效地使用任何語言寫程式。


2. Software Security

  • 費用:7 天免費試用,之後每月 $39 美元
  • 課程時間: 18 小時
  • 課程條件:需有一些程式語言基礎(約大二、大三程度佳)
  • 彈性的上課時間:
  • 課程證書:

這門將探討軟體安全,在撰寫程式的時候需要考慮到軟體漏洞,並想辦法防止或減輕這些攻擊的防禦措施,包括高級測試和程序分析技術。更重要的是,我們必須採取「建構安全性」的心態,在開發程式的每個階段都要考慮加強軟體系統安全性的技術。


3. Algorithms

  • 費用:免費
  • 課程時間: 54 小時
  • 課程條件:需有一些 Java 基礎
  • 彈性的上課時間:
  • 課程證書:

這門課程是免費的,學習完之後也沒有證書。課程內容是要學員了解算法和數據結構的基本資訊,並使用 Java 完成應用程式和科學性能分析。


4. Cryptography

  • 費用:$79 美元
  • 課程時間: 23 小時
  • 課程條件:可能要有不錯的數學程度
  • 彈性的上課時間:
  • 課程證書:

密碼學是保護計算機系統中不可或缺的工具之一,透過這門課,你將了解密碼系統內部的工作原理,以及如何實際運用他們。課程較偏理論性質,並且需要一些不錯的數學邏輯會比較好上手。


5. 計算機導論與 C 語言基礎

  • 費用:7 天免費試用,之後每月 $39 美元
  • 課程時間: 43 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

你有沒有好奇過:計算機為什麼能夠進行計算?計算機程序是怎樣運行的?你是否想知道:計算機未來可能的發展趨勢有哪些?程序是如何編寫出來的?如何學習程序設計語言?程序設計語言的基本成分有哪些?

學完這門課,你將能夠解釋計算機和程序的基本運行原理以及它們的特性、了解計算機歷史與發展趨勢,同時也將充分熱身,為未來的進階課程打好基礎。


6. Programming for Everybody

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間: 19 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

本課程旨在教大家使用 Python 編寫程式的基礎知識,內容涵蓋了如何從 Python 中的一系列簡單指令構建程序的基礎知識。課程除了最簡單的數學能力外,不需要任何基礎也可以學習。


7. SDN

  • 費用:$49 美元
  • 課程時間:32 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

在這門課程中,你將了解軟體定義網絡,以及它如何改變通信網絡的管理、維護及保護方式。


8. Algorithms: Design and Analysis

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:4 個月(4 小時/週)
  • 課程條件:需有一些程式語言基礎
  • 彈性的上課時間:
  • 課程證書:

算法是計算機科學的核心,該學科具有無數的實際應用和知識深度。這堂課適合有一些程式語言基礎的人,完成課程後你將有能力在程式技術中取得相當能力,並能與其他工程師或電腦科學家交流。


9. 計算機程序設計

  • 費用:$39 美元
  • 課程時間:12 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

本課程將介紹 C 語言的所有基礎概念、基本操作方式,以及如何使用 C 語言編寫程式。


10. Functional Programming Principles in Scala

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:56 小時
  • 課程條件:至少一年的程式語言經驗
  • 彈性的上課時間:
  • 課程證書:

函數式程式設計在工業中變得越來越普遍,這種趨勢主要是採用 Scala 作為許多應用程式的主要程式語言。Scala 是許多重要框架的實現語言,包括 Apache Spark、Kafka 和 Akka,它為 Twitter、Netflix、Zalando 和 Coursera 等網站提供核心基礎設施。

在這門課程中,你將發現並學習如何在日常程式撰寫和有效運用這些技術,例如建模、實現業務邏輯等。


11. Computer Architecture

  • 費用:免費
  • 課程時間:50 小時
  • 課程條件:屬於高階課程,須有一定的經驗
  • 彈性的上課時間:
  • 課程證書:

在這門課程中,你將學習設計複雜的現代微處理器計算機架構。課程的所有功能均免費提供,但完成後不提供證書。


12. Andr​​oid Programming

  • 費用:$49 美元
  • 課程時間:28 小時
  • 課程條件:有 Java 基本知識佳
  • 彈性的上課時間:
  • 課程證書:

這門課程有一連串系列,主要為介紹 Android 應用程式的設計跟製作。在課程中,你將從頭開始開發一個 app,因此如果有 Java 的基本知識為佳。


13. Machine Learning Foundations

  • 費用:$39 美元
  • 課程時間:10 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

機器學習旨在讓電腦能由資料中累積的經驗來自我進步,課程將介紹各領域中的機器學習使用者都應該知道的基礎演算法、理論及實務工具。本課程將較為著重數學類的工具,如果想了解著重方法類的工具,可以上另外一門課程。


14. Web Application Development: Basic Concepts

  • 費用:$79 美元
  • 課程時間:19 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

這門課程將為學員提供建構現代網頁應用程式所需了解的基本背景、術語和基本概念。課程將採邊做邊學的模式,先了解架構的主要組件,之後再進行深入的開發。在這個過程中,學員將接觸到網頁開發會運用到的各種工具和開發框架。


15. Data Science – Specializations

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:11 個月(7 小時/週)
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

本課程涵蓋了你在整個數據科學領域中需要用到的概念跟工具,從提出正確類型的問題,到推理與發佈結果。完成課程後,學員將會有一個作品集,展示他們對課程的掌握程度。


16. Model Thinking

  • 費用:$49 美元
  • 課程時間:27 小時
  • 課程條件:需要基本數學概念
  • 彈性的上課時間:
  • 課程證書:

Model Thinking 這門課程適用於各種領域,無論是科學、經濟、政治、商業、社會學,甚至是生活應用,它都可以幫助你成為一個更好的思考者。


17. Cloud Computing Concepts

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:23 小時
  • 課程條件:需要 C++ 方面的知識
  • 彈性的上課時間:
  • 課程證書:

今天的雲計算系統,無論是開源還是公司內部使用,都是使用一套通用的核心技術、算法和設計理念構建的,所有這些都以分佈式系統為中心。其中包括了一些概念如 clouds, MapReduce, key-value/NoSQL stores, classical distributed algorithms, widely-used distributed algorithms, scalability, trending areas等等。

除了課程與作業外,課程還將採訪來自行業和學術界的領先研究人員和管理人員。


18. Pattern Discovery in Data Mining

  • 費用:7 天免費試用,之後每月 $79 美元
  • 課程時間:17 小時
  • 課程條件:需要有一些基礎知識
  • 彈性的上課時間:
  • 課程證書:

學習數據挖掘的一般概念、基本方法及應用,然後深入進行運用,課程還將介紹數據驅動的短語挖掘方法和模式發現的一些有趣應用。


19. Statistical Mechanics

  • 費用:免費
  • 課程時間:16 小時
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

在本課程中,你將從基本計算機程序中學習大量現代物理學(經典和量子),然後你將下載、概括或從頭開始編寫程式、討論,然後上交。


20. Principles of Reactive Programming

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:7 個月(7 小時/週)
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

學習者將通過應用知識和技能來構建中小型 Scala 應用程序,包括:functional programming, parallel programming, manipulation of large data sets, higher-order functions, property-based testing, functional reactive programming。


21. Cloud Computing Applications

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:15 小時
  • 課程條件:需有相關基礎知識
  • 彈性的上課時間:
  • 課程證書:

這是系列課程中的第三門,課程內容會更進階一些,包括 platform as a service, mobile backend as a service,以及 serverless architectures 等等。


22. Machine Learning Specialization

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:7 個月(3 小時/週)
  • 課程條件:需有相關基礎知識
  • 彈性的上課時間:
  • 課程證書:

學習者將在每門專業化的課程中實施預測、分類、聚類和信息檢索機器學習算法,並將其應用於真實數據集,學員還將獲得應用機器學習和 Python 編程經驗。


23. Big Data Specialization

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:8 個月(3 小時/週)
  • 課程條件:
  • 彈性的上課時間:
  • 課程證書:

這門課提供給所有對大數據感興趣的人,不需要有基礎知識也可以上。課程將告訴你如何組織、分析及解釋大數據,並將你的見解運用到現實世界中。


24. Data Science at Scale Specialization

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:5 個月(2 小時/週)
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

這門課程屬於中級的大數據難易度,學員將獲得有關可擴展 SQL 和 NoSQL 數據管理解決方案、數據挖掘算法以及實用的統計和機器學習概念的實踐經驗。


25. Probabilistic Graphical Models

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:67 小時
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

概率圖模型 (PGM) 是一個豐富的框架,用於編碼複雜域上的概率分佈:在大量相互交互的隨機變量上的聯合(多變量)分佈。這些表示位於統計學和電腦科學的交叉點,依賴於概率論、圖算法、機器學習等概念。它們是各種應用中最先進方法的基礎,例如醫學診斷、圖像理解、語音識別、自然語言處理等等,也是製定許多機器學習問題的基礎工具。


26. Functional Programming in Scala

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:7 個月(7 小時/週)
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

學員將透過應用知識和技能來構建中小型 Scala 應用程序,包括:functional programming, parallel programming, manipulation of large data sets, higher-order functions, property-based testing, functional reactive programming。


27. Applied Data Science with Python

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:5 個月(7 小時/週)
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

這門課程透過 Python 程式語言向學員介紹數據科學,因此建議有基礎 Python 知識,並希望透過流行的 Python 工具組(如 pandas、matplotlib、scikit- 等)應用到統計、機器學習、資訊可視化、文本分析及社交網絡分析技術的學習者進行學習。


28. Deep Learning

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:5 個月(8 小時/週)
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

深度學習是一項基礎課程,將幫助你了解深度學習的能力、挑戰和結果,並為參與 AI 技術的開發做好準備。


29. Machine Learning Engineering for Production

  • 費用:7 天免費試用,之後每月 $49 美元
  • 課程時間:4 個月(6 小時/週)
  • 課程條件:需要基礎知識
  • 彈性的上課時間:
  • 課程證書:

在本課程中,你將熟悉機器學習工程在生產中的能力、挑戰和後果。並為參與 AI 技術的開發做好準備,以解決現實世界的問題。


延伸閱讀

Leave a Reply