貢獻者:Script Money 全棧工程師,熟悉 Web3 開發生態,編寫過一些技術教程
本文是 CryptoChasers 出品的 Web3 優質教育資源推薦的第一期 —— 編程基礎篇。適用於完全不會編程的新手,或想要接觸新語言的初級程序員。所有教程均可免費訪問。
合適的學習方式#
選擇合適自己的學習方式很重要,後面的教程都會標註類型。
最推薦的方式是視頻類教程,新手容易被麻煩的開發環境搭建卡住導致失去興趣,跟著視頻操作可以減少這類問題。視頻一般節奏會慢一些,可倍速播放或跳著看。
其次是交互式教程,輸入代碼後馬上就能得到成功的反饋,能增強學生信心。
最後是文字類教程,這對於理解理論細節非常有幫助。相較於可能會過時的書籍,我更推薦那些持續更新的開源教程項目。
後面的推薦包括了視頻、交互和文字類教程,你可以選擇其中一個作為入門,或者交叉學習以加深印象。
至於選擇哪門語言,會有不少爭論。至於應該選擇哪門語言進行學習,雖然有許多爭論,但我個人建議從 JavaScript 和 Python 中選擇一門。
JavaScript#
對於 Web3 領域來說,使用量最大且擁有最全的工具庫的是 JavaScript。無論何時,只要進行前端開發,就會用到它。只要你需要的 SDK 和 demo,都可以找到 JavaScript 版本。請注意,如果你打算進行開發工作,你可能會更多地使用 JavaScript 的超集 ——TypeScript,這就需要額外的學習時間。
現代 Javascript 教程#
- 網站: https://zh.javascript.info/
- 語言:中文
- 類型:文字
該教程是開源項目,內容詳盡,難度曲線平滑,包含小任務。後半部分的進階內容不適合新手,所以完成第二章的 JavaScript 基礎知識 後,可以直接嘗試實踐。
Learn JavaScript - Full Course for Beginners#
- 網站: https://www.youtube.com/watch?v=PkZNo7MFNFg
- 語言:英文
- 類型:視頻
freeCodeCamp 是國外最知名的編程教育網站之一。這個課程總共有 3 個多小時,你可以直接在基於瀏覽器編輯器中進行學習,同時在時間軸上還細分了各個知識點,方便你來回查閱。
TypeScript 官方 Playground#
- 網站: https://www.typescriptlang.org/zh/play
- 語言:中 / 英文
- 類型:交互
這是個網頁編輯器,示例(examples)裡面有 JavaScript 和 TypeScript 基礎教程。輸入代碼後點擊 “運行” 即可出結果,說明都在代碼註釋裡。推薦嘗試全部過一遍。
實踐#
如果需要實踐,可以跟著視頻編碼做小項目,Youtube 上可以搜到很多視頻,比如模擬人在頁面點擊的puppeteer 網頁自動化,搭建運行網站的Next.js 13 Crash Course,用 React 編寫 TODO,不做單獨推薦了。
Python#
Python 的特點是簡單易學,相比 JavaScript 更容易上手。同時,在大熱的 AI 領域,Python 的使用量也非常大。但在 Web3 領域,Python 的生態相較於 JavaScript 稍微遜色一些。
learn-python-3 by codecademy#
- 網站: https://www.codecademy.com/learn/learn-python-3
- 語言:英文
- 類型:交互
超過 200 萬人註冊,在網頁編輯器即可完成,涉及的內容剛好夠用,推薦完整學習。該網站也有 JavaScript 的入門課。
Python 編程與實踐 (2021)#
- 網站: https://www.bilibili.com/video/BV1mQ4y167q8
- 語言:中文
- 類型:視頻
著名博主愛可可 - 愛生活,北郵的計算機老師開設的課程,內容加入了學習理念、方法等內容,一開始的環境安裝講得很詳細。請注意,這門課程有 2020 年和 2021 年兩個版本,你可以直接學習內容更精簡的 2021 年版本。
面向初學者的 Python#
- 網站: https://learn.microsoft.com/zh-cn/training/paths/beginner-python/
- 語言:中 / 英文
- 類型:文字
微軟學習中心的 Python 教程,上來就介紹安裝 VSCode 開始上手編碼,由於 VSCode 是用得最多的 Python 編輯器,跟著該教程學習更容易過渡到開發項目。
實踐#
可以在視頻網站嘗試搜索 Python+ 爬蟲、深度學習、Bash 腳本、LangChain 等關鍵詞。
Rust?#
很多圈裡的高手都是用 Rust 的,很多工具和公鏈也是 Rust 開發。都說 Rust 很難,實際上也基礎部分也不難上手。如果是想要接觸學習 Rust,推薦 rust 語言聖經,首先它是中文的開源項目,文字為主,難以理解的地方都有人反饋優化過了。其次有配套的練習,邊學邊做,循序漸進。
至於實踐,跟著搭建文本編輯器 hecto 的教程,可以幫助你從語法過渡到項目實踐。
Solidity?#
Solidity 是合約開發語言,並不適合編程新手學習,後面部分會單獨出一篇來介紹。