Important
大改版中:xxrjun.github.io/cs-resources/
In order to further study knowledge related to Machine Learning, I have created a separate repository named xxrjun/ml-resources. Check the website here!
Changelog
[2024/04/16] 開始大改版並使用 Material for MkDocs
Schedule
[2024/07/15] 預計套入 i18n 語言包
[2024/07/05] 預計導入一頁式功能
[2024/06/31] 預計完成繁中版本 v1.0
作為自己學習 Computer Science 的紀錄與未來規劃,為自己在這茫茫碼海中留下一點痕跡
期許自己的血液裡都流著程式碼的那天
包含中文及英文資源
工欲善其事,必先利其器。
The mechanic, who wishes to do his work well, must first sharpen his tools.
下方軟體許多都可以透過 GitHub Student Developer Pack 免費取得授權或升級至專業版,善用當學生的資源阿阿。
Git - 免費、開源的版本控制軟體
-
GitHub - 目前全球最大的 Git Server、原始碼代管服務平台,各種開源軟體的聚集地。同時也是工程師的社群平台。題外話,2020 年之前的程式碼都存在北極,有 bug 也刪不掉。
-
ProGit Book - 官方提供的完整文件,部分語言翻譯不全,故推薦看英文。
-
-
SourceTree - 一款提供 GUI 界面來管理版本控制內容的軟體,功能完整。
-
GitHub Desktop - 也是提供圖形化介面的軟體,適合新手入門操作,不過功能有限。
-
VSCode - 強大又免費的文字編輯器,可以安裝許多,支援許多語言環境,還可以安裝許多方便好用的套件。
- VSCode Docs - 微軟官方文件教學
-
Intellij IDEA - 專為 Java 而生的 IDE,適合專案開發。有付費版 (Ultimate) 也有免費版 (Community)。
- JetBrains - Intellij IDEA 的開發商,提供許多 IDE,包含 Java、Python、C++、Golang、Rust 等等,都有專業版與免費版,免費版功能也很完整。
-
ChatGPT (Plus is highly recommended)
- Prompt Engineering Guide 提示工程指南 - 2023 顯學?
長期而言,技術來來去去,語言也來來去去,精通一種技術或語言,並不能保證你長期的發展。
你的目標不必侷限在學習甚麼語言或框架,只要吃透基礎知識,你可以學會任何你想要的東西。
-
Learn Java - 官方教學
-
Codecademy Learn Java - Java 基礎,Lesson 部分免費,其他 Quiz、Projects 的部分要付費。
-
OpenHome Java - 林信良老師(良葛格)撰寫的 Java 中文教材。我們永遠記得您的偉大...
- OpenHome Gossip 語言技術:Java Essence - 林信良老師(良葛格)撰寫的 Java 本質部分,「千萬別急著飛翔,卻忘了如何起步」
-
Microsoft 歡迎回到 C++ (現代 C++) - 微軟官方 C++ 中文文件。
-
OpenHome 語言技術:C++ Gossip - 林信良老師(良葛格)撰寫的 C++ 中文教材
-
Standard C++ Library reference (cplusplus) - 英文標準函式庫文件
-
CS106L Standard C++ Programming - Stanfard
-
Fall 2019 Youtube Playlist - Youtube 課程播放清單
-
Winter 2018 Course Website - 課程網站,有 slides 跟 assignments
-
-
The Python Tutorial - Python 官方文件教程,有多種語言可以選擇。
-
CS 61A: Structure and Interpretation of Computer Programs - UC Berkely - 前半部以 Python 為主,後面包含 Scheme, SQL。本課程強調抽象,學習掌握程序來解決實際問題。
-
Rust 程式設計語言 - 由 Steve Klabnik 與 Carol Nichols,以及 Rust 社群的貢獻撰寫而成。由台灣社群翻譯。
-
Learn Rust With Entirely Too Many Linked Lists - 透過許多 Linked Lists 學習 Rust。內容寫得很完整。
-
CS110L: Safety in Systems Programming Spring 2020 - Stanford 大學比較進階的課程,透過這門課學習 Rust 語言。
站在巨人的肩膀上成為下一個巨人
-
CS50 - Harvard 大學知名課程
-
Computer Science - youtube 上介紹機算機科學的一系列影片,不少還挺有趣的
- UC Berkeley CS61B Spring 2021 - UC Berkeley 資料結構課程,使用的程式語言是 Java,作業也很有趣,個人相當喜歡。選擇年份時記得看一下該學期的 autograder 是否有開放以利檢測自己作業的正確性。
-
NTHUOCW 計算機網路 - 由清大黃能富教授所上的計算機網路課程
-
Computer Networking: A Top-Down Approach 8th - 由 JimKurose 撰寫的線上教材
-
Data8: The Foundations of Data Science - UC Berkeley 資料科學導論課程
-
donnemartin/system-design-primer - GitHub 上熱門的系統設計教材。
-
System Design Interview Prep by Exponent - Youtube Playlist,許多 System Design 的模擬面試
工具一直再變動,但核心基礎知識不太會一直更迭
要時時刻刻提醒自己不要盲目追求新工具,先學會走路才能飛得更遠
培養查閱官方文件的能力很重要,往往第二手教學資訊都需要等比較久
-
MDN - 網頁開發開源文件與學習資源
-
Cloudfare 學習中心 - 有關網路安全和 Cloudflare 在網際網路上如何運作的相關學習資源
-
University of Helsinki - Full Stack open 2022 - 開放式全端教學,React、Testing、Server、GraphQL、TypeScript、CI/CD ...等等許多 Web 開發的知識都都錄在裡面
-
2022 網頁開發全攻略(HTML, CSS, JavaScript, React, SQL, Node, more) - Udemy 付費課程,初學者網頁開發中文教學,內容很豐富,推!
- 成為看起來很強的後端 - Web 實驗室 - 用很短的時間就可以了解到後端藍圖,老師講的非常前顯易懂,受益良多。
新世界
-
資工所資源 - 善心人士整理的原文書、筆記、歷屆試題
-
十週考上台清交資工所的那些小事 - 好文推薦
-
LeetCode - 刷題工具
-
Coding Interview University - Github 上自學教程,一個非本科生花八個月自學從網頁前端到成為 Amazon 軟體工程師
-
記錄每周值得分享的科技內容,每周五發布。很多很有趣的科技新聞跟酷酷的東西!
-
GitHub 上有趣、入門級的開源項目。
-
Joma Tech - 最喜歡的工程師頻道之一,許多有關在矽谷以及在科技巨頭的生活,還有很多有趣的影片。特別推薦 Interview 的影片清單。
-
HackBear 泰瑞 - 北美巨巨軟體工程師,非本科出身,分享許多軟體界以及投資的知識與故事。
-
CodeSheep 程序羊 - 中國軟體工程師,分享不少學習軟體工程的想法與心法。
-
SchelleyYuki - 滿滿乾貨...
-
在地上滾的工程師 Nic - 用薪資打臉學歷才能成為好工程師的男人。沒有頂尖的學歷,但絕對有豐富的經歷。
-
freeCodeCamp.org - 大量免費且豐富完整的課程。主旨為 "Learn to code for free". 真的是佛來的。
-
Traversy Media - 海量前端學習課程。從基礎 HTMl, CSS & JavaScript 到前端框架如 React, Vue 在到後端像 Node.js, Python 和 PHP
-
Fireship - 每周更新技術科技相關的大小事,影片時長都不長,非常適合閒暇時刻學習新知或認識新技術。
-
矽谷輕鬆談 Just Kidding Tech - 在矽谷工作的一對很可愛的夫妻錄製的 Podcast,內容包含產業趨勢觀察、軟體開發、職涯發展、美國科技公司的新聞和八卦。
-
程人頻道 - 許多第一線科技產業的訪談以及思維想法分享。