重要提示:
- 番茄時鐘: 每個番茄鐘為25分鐘學習,之后休息5分鐘。每完成4個番茄鐘,進行一次15-30分鐘的長休息。
- 動手實踐: DevTools 的使用和 Git 命令的掌握都需要大量的實際操作。請務必邊學邊練。
- 環境準備:
- 確保您有一個現代瀏覽器(如 Chrome 或 Firefox)用于學習 DevTools。
- 提前安裝 Git (https://git-scm.com/downloads)。
- 提前安裝 Node.js 和 npm (https://nodejs.org/ - npm 會隨 Node.js 一起安裝)。可以稍后按需安裝 yarn (https://classic.yarnpkg.com/en/docs/install)。
- 資源利用:
- Chrome DevTools 文檔: https://developer.chrome.com/docs/devtools/
- Pro Git (中文版): https://git-scm.com/book/zh/v2 (重點看前三章)
- Learn Git Branching (交互式學習 Git): https://learngitbranching.js.org/
- NPM 文檔: https://docs.npmjs.com/
- 當前日期: 2025年5月17日
學習目標 Day 19-20:開發工具與 Git
- Day 19:瀏覽器開發者工具 (DevTools) 精通
- 熟練使用 Elements 面板檢查和修改 HTML/CSS。
- 熟練使用 Console 面板進行日志輸出和代碼調試。
- 掌握 Sources 面板進行 JavaScript 斷點調試。
- 了解 Network 面板分析網絡請求。
- Day 20:Git 版本控制與包管理器入門
- 理解版本控制的概念和 Git 的基本工作原理。
- 掌握 Git 的核心命令,能夠進行本地版本管理和與遠程倉庫交互。
- 了解 npm/yarn 的作用,并掌握其基礎初始化、安裝和腳本運行命令。
- 為階段項目做好版本控制和包管理的準備。
每日學習計劃 (3小時/天)
Day 19: 瀏覽器開發者工具 (DevTools) 精通
- 第1個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: DevTools 概覽與 Elements 面板 (一)。
- 內容: 打開任意網頁,熟悉 Chrome DevTools 的界面布局。重點學習 Elements 面板:檢查 DOM 樹、查看和修改元素的 HTML 屬性、實時編輯 CSS 樣式 (Styles 標簽頁, Computed 標簽頁)。
- 實踐: 選中頁面上的不同元素,嘗試修改它們的文本內容、CSS 顏色、邊距等。查看元素的盒模型。
- 第2個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Elements 面板 (二) 與 Console 面板 (一)。
- 內容: Elements 面板:強制元素狀態 (如
:hover
),事件監聽器查看。Console 面板:使用console.log()
,console.warn()
,console.error()
,console.table()
等進行信息輸出。 - 實踐: 在 Elements 面板找到一個有 hover 效果的按鈕并強制其狀態。在 Console 中打印不同類型的日志信息,嘗試打印一個對象或數組并用
console.table()
查看。
- 第3個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Console 面板 (二) - 交互與表達式。
- 內容: 在 Console 中執行 JavaScript 代碼片段,與當前頁面上下文交互 (例如,獲取 DOM 元素,調用頁面中的函數)。
- 實踐: 在 Console 中使用
document.querySelector()
獲取頁面元素并修改其屬性。聲明變量,執行簡單的計算。
- 第4個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Sources 面板 (一) - 查看源碼與斷點基礎。
- 內容: 學習 Sources 面板如何查看頁面的 HTML, CSS, JavaScript 文件。理解什么是斷點 (breakpoint) 以及如何在 JavaScript 代碼中設置斷點。
- 實踐: 找到你之前寫的 JavaScript 文件,在某一行代碼前設置一個斷點。刷新頁面或觸發相應操作使代碼執行到斷點處。
- (長休息: 15-30分鐘)
- 第5個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Sources 面板 (二) - 斷點調試技巧。
- 內容: 學習調試控制按鈕:Resume (繼續), Step over (單步跳過), Step into (單步進入), Step out (單步跳出)。查看作用域 (Scope) 和調用棧 (Call Stack)。觀察變量的值。
- 實踐: 使用不同的調試控制按鈕來逐行執行代碼,觀察變量在每一步的變化,理解函數調用過程。
- 第6個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Network 面板基礎。
- 內容: 了解 Network 面板的作用:監視頁面加載的所有網絡請求 (HTML, CSS, JS, 圖片, XHR 等)。查看請求的 URL, 方法, 狀態碼, 耗時, 大小。
- 實踐: 刷新一個網頁,觀察 Network 面板列出的所有請求。篩選不同類型的請求 (如 JS, CSS, Img)。點擊某個請求查看其 Headers, Preview, Response 等詳細信息。
Day 20: Git 版本控制與包管理器入門
- 第1個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: 版本控制系統 (VCS) 與 Git 簡介。Git 安裝與配置。
- 內容: 理解為什么需要版本控制。Git 的核心概念 (倉庫 Repository, 工作區 Working Directory, 暫存區 Staging Area)。確保 Git 已正確安裝。進行首次 Git 配置 (
git config --global user.name "Your Name"
和git config --global user.email "youremail@example.com"
). - 實踐: 閱讀 Pro Git 第一章。在命令行中檢查 Git 版本 (
git --version
) 并完成配置。
- 第2個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Git 基本命令 (一):
git init
,git status
,git add
,git commit
. - 內容: 學習
git init
在本地創建一個新的 Git 倉庫。git status
查看工作區和暫存區的狀態。git add <file>
或git add .
將文件更改添加到暫存區。git commit -m "commit message"
將暫存區的更改提交到本地倉庫。 - 實踐: 創建一個新的項目文件夾,初始化為 Git 倉庫。創建一些文件,使用
git add
和git commit
進行首次提交。多次修改文件并提交,體會工作流程。
- 主題: Git 基本命令 (一):
- 第3個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Git 基本命令 (二):
git log
,git diff
,git clone
. - 內容: 學習
git log
查看提交歷史。git diff
查看工作區與暫存區、暫存區與最新提交、或不同提交之間的差異。git clone <repository_url>
從遠程倉庫克隆項目到本地。 - 實踐: 查看提交歷史。修改文件后不
add
,使用git diff
查看。找一個 GitHub 上的公共倉庫,嘗試git clone
下來。
- 主題: Git 基本命令 (二):
- 第4個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Git 分支 (Branching):
git branch
,git checkout
(或git switch
),git merge
. - 內容: 理解分支的重要性。
git branch <branch-name>
創建分支。git branch
查看分支。git checkout <branch-name>
(或新命令git switch <branch-name>
) 切換分支。git merge <branch-name>
將指定分支合并到當前分支。 - 實踐: 在本地倉庫中創建一個新分支 (如
feature/new-button
),切換到該分支并進行一些修改和提交。然后切換回主分支 (通常是main
或master
) 并將新分支合并進來。可以嘗試在 Learn Git Branching 上練習。 - (長休息: 15-30分鐘)
- 主題: Git 分支 (Branching):
- 第5個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: Git 遠程倉庫交互:
git remote add
,git push
,git pull
. - 內容: 學習如何關聯本地倉庫到遠程倉庫 (如 GitHub)。
git remote add origin <repository_url>
。git push origin <branch-name>
將本地分支的提交推送到遠程倉庫。git pull origin <branch-name>
從遠程倉庫拉取最新更改并合并到本地分支。 - 實踐: 在 GitHub 上創建一個新的空倉庫。將本地項目與該遠程倉庫關聯,并將本地的提交推送到遠程。如果有協作者,可以模擬拉取操作。
- 主題: Git 遠程倉庫交互:
- 第6個番茄鐘 (25分鐘學習 + 5分鐘休息):
- 主題: npm/yarn 基礎命令:
npm init
(或yarn init
),npm install
(或yarn add
),npm run
(或yarn run
). - 內容: 了解 npm/yarn 作為包管理器的作用。
npm init
初始化項目,生成package.json
文件。npm install <package-name>
安裝依賴包。在package.json
的scripts
中定義命令,并通過npm run <script-name>
執行。 - 實踐: 在項目文件夾中運行
npm init -y
快速生成package.json
。嘗試安裝一個簡單的包 (如lodash
或dayjs
)。在scripts
中添加一個簡單的命令 (如"start": "echo Hello"
), 然后運行它。
- 主題: npm/yarn 基礎命令:
關于階段項目:
在 Day 20 結束時,您應該已經具備了使用 DevTools 調試代碼的基本技能,以及使用 Git 進行版本控制和 npm/yarn 管理項目的基礎知識。這些都是開始“階段項目:使用 HTML, CSS, 原生 JS 實現一個帶簡單交互的靜態頁面”所必需的。
項目啟動建議:
- 創建項目文件夾。
- 使用
git init
初始化 Git 倉庫。 - 使用
npm init -y
(或yarn init -y
) 創建package.json
文件。 即使項目初期不依賴第三方庫,這也是個好習慣,方便后續擴展和腳本管理。 - 創建你的 HTML, CSS, 和 JavaScript 文件。
- 進行初次 Git 提交 (
git add .
,git commit -m "Initial project setup"
). - 在開發過程中,頻繁使用 DevTools 進行調試,并定期使用 Git 提交你的更改。
- (可選)在 GitHub 或類似的平臺上創建一個遠程倉庫,并將你的項目推送上去。