You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/mo/README.md

213 lines
23 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "ae32f39b259a395c57b209d9e5b8c10b",
"translation_date": "2025-08-28T00:21:29+00:00",
"source_file": "README.md",
"language_code": "mo"
}
-->
[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/)
[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott)
[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
[![Microsoft Azure AI Foundry Discord](https://dcbadge.limes.pink/api/server/ByRwuEEgH4)](https://discord.com/invite/ByRwuEEgH4)
按照以下步驟開始使用這些資源:
1. **Fork 儲存庫**:點擊 [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork)
2. **Clone 儲存庫** `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git`
3. [**加入 Azure AI Foundry Discord與專家和其他開發者交流**](https://discord.com/invite/ByRwuEEgH4)
# 初學者的網頁開發課程 - 教學大綱
透過 Microsoft Cloud Advocates 提供的 12 週完整課程,學習網頁開發的基礎知識。每個 24 節課程都透過實作專案(如生態瓶、瀏覽器擴充功能和太空遊戲)深入探討 JavaScript、CSS 和 HTML。參與測驗、討論和實際作業提升技能並加強知識吸收。立即開始您的程式設計旅程吧
#### 🧑‍🎓 _你是學生嗎_
造訪 [**學生中心頁面**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon),在這裡您可以找到初學者資源、學生套件,甚至獲得免費證書兌換券的方法。這是您想要收藏並定期查看的頁面,因為我們每月都會更新內容。
### 📣 公告 - _新課程_ 關於 JavaScript 的生成式 AI 已正式推出
不要錯過我們的生成式 AI 新課程!
造訪 [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) 開始學習!
<div>
<img src="./images/background.png" width="600px" />
</div>
- 課程涵蓋從基礎到 RAG 的所有內容。
- 使用生成式 AI 和我們的伴侶應用程式與歷史人物互動。
- 有趣且引人入勝的故事情節,您將進行時光旅行!
<div>
<img src="./images/character.png" width="600px" />
</div>
每節課都包含作業、知識檢查和挑戰,幫助您學習以下主題:
- 提示設計與提示工程
- 文本與圖像應用程式生成
- 搜尋應用程式
造訪 [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) 開始學習!
## 🌱 開始使用
> **教師們**,我們已[提供一些建議](for-teachers.md)供您使用此課程。我們期待您在[討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)中提供回饋!
**[學習者](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**,每節課開始前,先進行課前測驗,接著閱讀課程內容,完成各種活動,並透過課後測驗檢查您的理解程度。
為了提升學習效果,與同儕合作完成專案!我們鼓勵您在[討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions)中交流,我們的版主團隊將隨時回答您的問題。
為了進一步提升您的教育,我們強烈建議探索 [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) 以獲取更多學習資源。
### 📋 設置您的環境
此課程已準備好開發環境!開始時,您可以選擇在 [Codespace](https://github.com/features/codespaces/)_基於瀏覽器無需安裝的環境_中運行課程或在本地電腦上使用文字編輯器如 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon))。
#### 建立您的儲存庫
為了方便保存您的工作,建議您建立此儲存庫的副本。您可以點擊頁面頂部的 **使用此模板** 按鈕,這將在您的 GitHub 帳戶中建立一個包含課程副本的新儲存庫。
按照以下步驟:
1. **Fork 儲存庫**:點擊頁面右上角的 "Fork" 按鈕。
2. **Clone 儲存庫** `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git`
#### 在 Codespace 中運行課程
在您建立的儲存庫副本中,點擊 **Code** 按鈕並選擇 **Open with Codespaces**。這將為您建立一個新的 Codespace 以供使用。
<img src="./images/createcodespace.png" alt="Create codespace" style="width:270px;"/>
#### 在本地電腦上運行課程
要在本地電腦上運行此課程,您需要一個文字編輯器、瀏覽器和命令行工具。我們的第一節課 [程式語言與工具介紹](https://github.com/microsoft/Web-Dev-For-Beginners/tree/main/1-getting-started-lessons/1-intro-to-programming-languages) 將引導您了解各種工具選項,幫助您選擇最適合您的工具。
我們推薦使用 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 作為編輯器,它還內建了 [終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon)。您可以在[這裡](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)下載 Visual Studio Code。
1. 將您的儲存庫克隆到電腦。您可以點擊 **Code** 按鈕並複製 URL
<img src="./images/createcodespace.png" alt="Copy your repository URL" style="width:270px;"/>
然後,在 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 的 [終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) 中運行以下命令,將 `<your-repository-url>` 替換為您剛複製的 URL
```bash
git clone <your-repository-url>
```
2. 在 Visual Studio Code 中打開資料夾。您可以點擊 **檔案** > **打開資料夾**,選擇您剛克隆的資料夾。
> 推薦的 Visual Studio Code 擴充功能:
>
> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - 在 Visual Studio Code 中預覽 HTML 頁面
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - 幫助您更快撰寫程式碼
## 📂 每節課包含:
- 可選的手繪筆記
- 可選的補充影片
- 課前暖身測驗
- 書面課程
- 專案型課程的逐步指南
- 知識檢查
- 挑戰
- 補充閱讀
- 作業
- [課後測驗](https://ff-quizzes.netlify.app/)
> **關於測驗的說明**:所有測驗都包含在 Quiz-app 資料夾中,共有 48 個測驗,每個測驗包含三個問題。它們可在[這裡](https://ff-quizzes.netlify.app/)找到,測驗應用程式可以在本地運行或部署到 Azure請按照 `quiz-app` 資料夾中的指示操作。
## 🗃️ 課程
| | 專案名稱 | 教學概念 | 學習目標 | 課程連結 | 作者 |
| :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: |
| 01 | 入門課程 | 程式語言與工具介紹 | 學習大多數程式語言的基本原理以及幫助專業開發者完成工作的軟體 | [程式語言與工具介紹](/1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | 入門課程 | GitHub 基礎,包含團隊合作 | 學習如何在專案中使用 GitHub以及如何與他人協作程式碼庫 | [GitHub 基礎](/1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | 入門課程 | 無障礙設計 | 學習網頁無障礙設計的基礎知識 | [無障礙設計基礎](/1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS 基礎 | JavaScript 資料型別 | JavaScript 資料型別的基礎知識 | [資料型別](/2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS 基礎 | 函數與方法 | 學習如何使用函數與方法管理應用程式的邏輯流程 | [函數與方法](/2-js-basics/2-functions-methods/README.md) | Jasmine 和 Christopher |
| 06 | JS 基礎 | 使用 JS 做出決策 | 學習如何使用決策方法在程式碼中建立條件 | [做出決策](/2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | JS 基礎 | 陣列與迴圈 | 使用 JavaScript 中的陣列與迴圈處理資料 | [陣列與迴圈](/2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [生態瓶](/3-terrarium/solution/README.md) | HTML 實作 | 建立 HTML 以創建線上生態瓶,專注於建立版面配置 | [HTML 介紹](/3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [生態瓶](/3-terrarium/solution/README.md) | CSS 實作 | 建立 CSS 以設計線上生態瓶,專注於 CSS 的基礎知識,包括使頁面響應式 | [CSS 介紹](/3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](/3-terrarium/solution/README.md) | JavaScript 閉包與 DOM 操作 | 建立 JavaScript 使生態瓶具備拖放介面功能,重點在於閉包與 DOM 操作 | [JavaScript 閉包與 DOM 操作](/3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Typing Game](/4-typing-game/solution/README.md) | 建立打字遊戲 | 學習如何使用鍵盤事件來驅動 JavaScript 應用程式的邏輯 | [事件驅動程式設計](/4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Green Browser Extension](/5-browser-extension/solution/README.md) | 瀏覽器操作 | 學習瀏覽器的運作方式、歷史,以及如何搭建瀏覽器擴充功能的基本架構 | [關於瀏覽器](/5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Green Browser Extension](/5-browser-extension/solution/README.md) | 建立表單、呼叫 API 並將變數儲存在本地存儲中 | 建立瀏覽器擴充功能的 JavaScript 元件,使用儲存在本地存儲中的變數來呼叫 API | [API、表單與本地存儲](/5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Green Browser Extension](/5-browser-extension/solution/README.md) | 瀏覽器中的背景處理與網頁效能 | 使用瀏覽器的背景處理來管理擴充功能的圖示;學習網頁效能以及一些優化方法 | [背景任務與效能](/5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Space Game](/6-space-game/solution/README.md) | 更進階的 JavaScript 遊戲開發 | 學習使用類別與組合的繼承,以及 Pub/Sub 模式,為開發遊戲做準備 | [進階遊戲開發介紹](/6-space-game/1-introduction/README.md) | Chris |
| 16 | [Space Game](/6-space-game/solution/README.md) | 繪製到畫布 | 學習如何使用 Canvas API將元素繪製到螢幕上 | [繪製到畫布](/6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Space Game](/6-space-game/solution/README.md) | 移動螢幕上的元素 | 探索如何使用笛卡爾座標與 Canvas API 讓元素產生移動 | [移動螢幕上的元素](/6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Space Game](/6-space-game/solution/README.md) | 碰撞檢測 | 使用按鍵事件讓元素碰撞並相互反應,並提供冷卻功能以確保遊戲效能 | [碰撞檢測](/6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Space Game](/6-space-game/solution/README.md) | 計分 | 根據遊戲的狀態與表現進行數學計算 | [計分](/6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Space Game](/6-space-game/solution/README.md) | 結束與重啟遊戲 | 學習如何結束與重啟遊戲,包括清理資產與重置變數值 | [結束條件](/6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](/7-bank-project/solution/README.md) | 網頁應用程式中的 HTML 模板與路由 | 學習如何使用路由與 HTML 模板來搭建多頁網站的架構 | [HTML 模板與路由](/7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](/7-bank-project/solution/README.md) | 建立登入與註冊表單 | 學習如何建立表單並處理驗證邏輯 | [表單](/7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](/7-bank-project/solution/README.md) | 獲取與使用資料的方法 | 學習資料如何在應用程式中流動,如何獲取、儲存與處理資料 | [資料](/7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](/7-bank-project/solution/README.md) | 狀態管理的概念 | 學習應用程式如何保留狀態以及如何以程式方式管理狀態 | [狀態管理](/7-bank-project/4-state-management/README.md) | Yohan |
## 🏫 教學理念
我們的課程設計基於兩個關鍵的教學原則:
* 專案導向學習
* 頻繁的小測驗
本課程教授 JavaScript、HTML 和 CSS 的基礎知識,以及當今網頁開發者使用的最新工具與技術。學生將有機會透過建立打字遊戲、虛擬生態瓶、環保瀏覽器擴充功能、太空侵略者風格的遊戲,以及商業銀行應用程式來獲得實作經驗。完成課程後,學生將對網頁開發有扎實的理解。
> 🎓 您可以在 Microsoft Learn 上以 [學習路徑](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) 的形式學習本課程的前幾節課!
透過確保內容與專案相符,學習過程變得更具吸引力,並能增強學生對概念的記憶。我們還撰寫了幾個 JavaScript 基礎課程作為入門,並搭配 "[JavaScript 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" 視頻教程中的影片,其中一些作者也參與了本課程的編寫。
此外,課前的低壓力小測驗能幫助學生專注於學習主題,而課後的第二次測驗則能進一步鞏固記憶。本課程設計靈活有趣,可以完整學習或選擇部分內容。專案從簡單開始,並在 12 週的學習週期內逐漸變得複雜。
我們有意避免引入 JavaScript 框架,以便專注於成為網頁開發者所需的基本技能,完成本課程後,學習 Node.js 是一個不錯的下一步,您可以參考另一系列視頻:"[Node.js 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"。
> 請參閱我們的 [行為準則](CODE_OF_CONDUCT.md) 和 [貢獻指南](CONTRIBUTING.md)。我們歡迎您的建設性反饋!
## 🧭 離線存取
您可以使用 [Docsify](https://docsify.js.org/#/) 離線運行此文件。Fork 此 repo並在本地機器上 [安裝 Docsify](https://docsify.js.org/#/quickstart),然後在此 repo 的根目錄中輸入 `docsify serve`。網站將在本地端的 3000 埠上提供服務:`localhost:3000`。
## 📘 PDF
所有課程的 PDF 可在 [此處](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) 找到。
## 🎒 其他課程
我們的團隊還製作了其他課程!請查看:
- [生成式 AI 初學者課程](https://aka.ms/genai-beginners)
- [生成式 AI 初學者課程 .NET](https://github.com/microsoft/Generative-AI-for-beginners-dotnet)
- [使用 JavaScript 的生成式 AI](https://github.com/microsoft/generative-ai-with-javascript)
- [使用 Java 的生成式 AI](https://github.com/microsoft/Generative-AI-for-beginners-java)
- [AI 初學者課程](https://aka.ms/ai-beginners)
- [資料科學初學者課程](https://aka.ms/datascience-beginners)
- [機器學習初學者課程](https://aka.ms/ml-beginners)
- [網路安全初學者課程](https://github.com/microsoft/Security-101)
- [網頁開發初學者課程](https://aka.ms/webdev-beginners)
- [物聯網初學者課程](https://aka.ms/iot-beginners)
- [XR 開發初學者課程](https://github.com/microsoft/xr-development-for-beginners)
- [精通 GitHub Copilot 的智能應用](https://github.com/microsoft/Mastering-GitHub-Copilot-for-Paired-Programming)
- [精通 GitHub Copilot 的 C#/.NET 開發者課程](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers)
- [選擇您的 Copilot 冒險](https://github.com/microsoft/CopilotAdventures)
## 授權
此存儲庫採用 MIT 授權。詳情請參閱 [LICENSE](../../LICENSE) 文件。
---
**免責聲明**
本文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們努力確保翻譯的準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵資訊,建議使用專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。