自學程式設計學習資源懶人包

Posted by HappyCoder 自學程式好好玩 on 2017-01-27

隨著資訊科技的發展,目前網路上和坊間有許多的自學電腦科學和程式設計的學習資源,但初學者在面對琳琅滿目的學習資源往往無所適從,因此本文整理了散落各地的自學程式設計學習資源懶人包和學習藍圖提供讀者參考,也歡迎讀者一起補充:)

初學者學習藍圖建議

學習程式設計最重要的是了解電腦科學背後的思考模式和邏輯分析,對於非本科系或是程式設計自學者來說,培養興趣累積成就感是最重要的,建議先從解決生活上著手,透過寫程式解決生活上的問題,等累積了興趣和成就感後重新學習基礎電腦科學知識。以下是初學者學習藍圖建議供讀者參考:

1. 確認你的學習動機、設定個學習目標 -> 2. 選擇一門適合你的程式語言入門和工具 -> 3. 大量閱讀、參與課程、動手實作解決生活上問題,把手弄髒並記錄心得 -> 4. 組織、參與社群、練習問個好問題 -> 5. 熟悉函數程式設計、物件導向、框架、設計模式 -> 6. 重新學習資料結構、演算法等基礎電腦科學知識(程式解題) -> 7. 學習進階電腦科學知識

延伸閱讀:

  1. 非本科生,我想半路出家學寫程式,該如何開始?
  2. Python Web 程式設計入門實戰
  3. JavaScript 程式設計新手村課程
  4. HappyCoder 自學程式好好玩臉書社團

實務程式設計

  1. [中 & 英] Codecademy

    codecademy

    Codecademy 是非常知名的線上學習程式設計的平台(有許多免費的課程),課程設計互動性和趣味性都相當不錯,相當適合初學者練習。課程也運用遊戲化(gamification)徽章和關卡設計也讓學習者更有動力學習。目前除了 HTML/CSS/JavaScript 網頁程式設計外,也有 Python、Ruby、Java 等程式語言可以學習(課程也有持續更新),不過 Codecademy 的內容相對基本,若想要在熟悉語法外更進一步學習實務開發應用程式的話就要額外再找其他學習資源了,但仍不失為一個很好的新手入門方式。

    課程深度:✦
    費用:免費、付費

  2. [英] Code School

    codeschool

    Code School 也是蠻知名的線上程式設計學習平台,與 Codecademy 類似,除了有提供學員線上即時動手實作練習、遊戲化徽章累積的設計外也有影片教學。課程內容也相當豐富貼近實務(JavaScript、Ruby、Git 等)。

    課程深度:✦✦
    費用:免費、付費

  3. [英] Code.org

    code.org

    適合中小學或完全初學的朋友練習,使用圖形化 Scratch 式拖拉程式設計方式。透過簡單的方式體驗程式設計的背後邏輯運作原理。

    課程深度:✦
    費用:免費

  4. [英] W3Schools Online Web Tutorials

    w3schools

    提供豐富的 Web 開發相關學習資源和查詢,適合在實際開發時學習參考查詢使用。

    課程深度:✦
    費用:免費

  5. [中 & 英] Mozilla Developer Network

    MDN

    由 Mozilla 社群維護的技術文件和教學內容,提供 Open Web 相關學習資源(HTML/CSS/JavaScript、Web API、Python)和 API 標準查詢。

    課程深度:✦✦
    費用:免費

  6. [英] FreeCodeCamp

    freecodecamp

    主要提供 HTML/CSS/JavaScript 線上學習資源和討論社群,並提供非營利組織專案實習機會。

    課程深度:✦
    費用:免費

  7. [英] TreeHouse

    teamtreehouse

    TreeHouse 和 Code School 類似,有影片教學也有互動練習,主要提供各種主流程式語言和技術組合的線上課程,包含了行動應用開發、網站開發、遊戲開發等實務課程。

    課程深度:✦✦
    費用:付費

  8. [中 & 英] Udemy

    udemy

    Udemy 是一個全面性的線上課程平台,提供素人講師線上分享技能的機會,課程十分多元貼近實務。除了網站開發、行動應用程式等技術領域外,也有許多非技術領域的課程(例如:行銷管理、創業、攝影、音樂創作等)。

    課程深度:✦✦
    費用:付費

  9. [中 & 英] Udacity

    udacity

    Udacity 與許多知名企業(Google、Facebook)合作提供許多前沿技術的線上教學,例如:人工智慧、深度學習、VR、Web、Mobile 技術等。此外,也提供微專業(Nanodegree)一系列課程和工作機會的媒合。

    課程深度:✦✦✦
    費用:免費、付費

  10. [英] DataCamp

    datacamp

    可以稱作資料科學版本的 Codecademy,使用互動學習方式線上學習資料科學,對於資料科學有興趣的讀者可別錯過了。

    課程深度:✦✦
    費用:免費、付費

基礎電腦科學

  1. [英] Coursera

    coursera

    Coursera 與許多知名大學合作(Stanford、賓州大學、北京大學、台灣大學等),提供教授可以線上授課的平台,學生也可以在家就上到一流學府的課程。與一般課程一樣需要繳交作業,若能完成課程修業規定,可以申請證書。

    課程深度:✦✦✦
    費用:免費、付費

  2. [英] edX

    edx

    edX 與 Coursera 類似與許多知名大學合作(MIT、哈佛大學、UCB等),提供教授可以線上授課的平台。

    課程深度:✦✦✦
    費用:免費、付費

程式解題

  1. [英] LeetCode

    leetcode

    LeetCode 又稱軟體工程師的 GRE(英文檢定),是一個線上解題平台,內含許多演算法和資料結構的題目,是許多準備軟體工程面試的面試者常用的工具。

  2. [英] Hacker Rank

    hackerrank

    Hacker Rank 也是一個線上解題平台,除了解題外也提供教學內容幫助學員學習,適合不想單純解題的使用者。

  3. [英] CodeFights

    codefights

    CodeFights 可以讓你和世界各地的程式設計師對戰,讓寫程式變成像圍棋一樣一場場對奕,十分有趣。

  4. [英] Codewars

    codewars

    Codewars 也是一個程式挑戰的解題平台,提供許多種語言讓使用者可以練習。

  5. [英] Kaggle

    kaggle

    Kaggle 和許多知名企業和單位合作提供資料科學問題,讓參賽者可以解題獲得獎勵和合作機會。

總結

以上整理了散落各地的自學程式設計學習資源懶人包和學習藍圖提供讀者參考,歡迎讀者一起補充,也歡迎加入我們的 臉書學習社群,分享你的自學程式設計心得和經驗。至於初學者若對於程式設計有興趣的話,不妨從 PythonJavaScript 入手,開啟你的程式設計之旅吧:)

參考文件

  1. Google - Guide for Technical Development
  2. Coursera
  3. edX
  4. Udacity
  5. OSS
  6. FreeCodeCamp
  7. Future Learn
  8. Stanford University
  9. MIT Open Courseware
  10. Obtaining a Thorough CS Background Online
  11. JavaScript 程式設計新手村課程
  12. 非本科生,我想半路出家學寫程式,該如何開始?
  13. 卡卡MOOC資源站


喜歡我們的文章嗎?歡迎分享按讚給予我們支持和鼓勵!


在 Facebook 上追蹤我們,立即掌握最新和最豐富的程式設計自學資訊!

Comments: