關於學習 Web 開發

MDN 學習 Web 開發旨在教授前端 Web 開發人員在當今 Web 行業中獲得就業和長期發展所應具備的基本技能和知識。它體現了我們認為 Web 應具備的價值觀——可訪問性、可持續性、可用性、效能和社群。我們希望教育工作者、開發人員和學生能夠使用這些資源,並在他們的工作、教學和所構建的產品中倡導這些價值觀。

本內容由 MDN 社群建立,並得到了 Mozilla 內部以及更廣泛的 Web 社群專家的審閱和反饋。感謝您寶貴的意見;您知道您是誰!

背景與動機

我們最初於 2016 年推出了 MDN 學習 Web 開發版塊,旨在讓 MDN 對非專業人士更易於訪問,並幫助初級 Web 開發人員從“入門級到熟練”。

這些內容相當成功,但幾年後我們發現其結構不夠完善。初學者真正需要的是一個可靠的學習路徑,可以遵循它來獲取所需的知識,而不是期望他們自己弄清楚要學什麼以及何時學習。

此外,Mozilla 每天都與行業專業人士交流,我們定期收到關於新員工知識差距的反饋。招聘經理經常觀察到:

  • 過度專注於使用框架快速構建 Web 應用程式,但缺乏對這些框架背後底層技術的理解。這導致解決問題能力不足,並且隨著工具的變化,長期就業能力也較低。
  • 缺乏語義化、可訪問性和響應式設計等核心最佳實踐。這導致缺乏使用者焦點,從而限制了可用性。
  • 對瀏覽器基本工作原理、如何展示資訊以及免費獲得的互動性等知識存在差距。這導致解決方案過於複雜且通常無法訪問。
  • 解決問題、團隊合作、研究和其他重要軟技能有限。

因此,我們建立了一個課程,旨在幫助人們學習更好的技能組合,提高他們的就業能力,並使他們能夠構建一個更好、更易於訪問、更負責任的未來網路。我們希望他們有最好的成功機會。我們於 2024 年初推出了 MDN 課程

然而,我們很快收到了反饋,使用者發現 MDN 上有兩個學習資源很令人困惑,課程/學習路徑在一個地方,學習內容在另一個地方。因此,我們於 2024 年 12 月將課程合併到學習區

目標受眾

學生

本課程適用於以下幾類學生:

  • 希望在行業中獲得工作,這可能涉及獲得相關資格或認證的學生。本課程將作為他們應該學習什麼的指南。
  • 希望“提升”技能的現有 Web 開發人員,確保他們的技能組合是最新的,並識別他們知識中需要進一步學習的差距。
  • 在其他領域(例如後端 Web 開發人員或特定平臺開發人員)具有現有開發經驗的非前端 Web 開發人員,希望進入前端 Web 開發領域,並希望獲得他們應該學習的主題指南。

教育工作者

教育工作者在為 Web 相關大學學位、大學課程、程式設計學校課程或類似課程建立課程、單元和評估規範時,可以使用本內容作為指南。遵循我們文章中的學習成果將有助於確保課程教授當前的技術和最佳實踐,並避免不良實踐和過時資訊。

要了解更多資訊,請查閱我們的教育工作者資源頁面。

注意:完整的 MDN 學習 Web 開發課程可作為方便的 PDF 檔案與您的學生和同事分享。下載課程

範圍

“前端開發人員”這個術語可能含糊不清;它對不同的人可能意味著不同的事情,並且從事前端工作的人可能被期望執行各種不同的任務。

涵蓋內容

這組文章不試圖深入教授 Web 開發人員可能需要了解的每個主題。課程涵蓋以下內容:

  • 核心技術技能,例如語義 HTML、CSS 和 JavaScript 基礎。
  • 最佳實踐,例如可訪問性、響應式設計和 UI 設計理論。
  • 關鍵工具,例如框架和版本控制。
  • 培養獲得工作所需心態和態度的軟技能。
  • 環境知識,如計算機和檔案系統、瀏覽網頁、命令列基礎知識和程式碼編輯器。
  • 一些我們認為在開發人員開始擴充套件知識和發展專業領域時有用的“擴充套件”技能。這包括:
    • CSS 變換和動畫
    • Web API 的常見類別(例如,媒體、圖形和客戶端儲存)
    • 伺服器端 Web 開發基礎
    • 效能
    • 安全和隱私
    • 測試

細節程度

所呈現的主題以不同程度的細節進行涵蓋。

  • 有些內容深入涵蓋,例如 HTML 和 CSS 基礎。在學生在學習旅程中走得太遠之前,清晰地理解這些內容非常重要。
  • 有些內容涵蓋得更膚淺,例如版本控制或測試。理解這些主題是什麼並開始學習一些基礎知識很重要,但這些技能可以在您職業生涯的後續階段進行擴充套件。

未涵蓋內容

本課程還明確不涵蓋以下幾個領域:

  • 對後端語言/平臺的詳盡覆蓋。我們在Node.js (Express)Python (Django)中提供了簡要介紹,因為每個 Web 開發人員瞭解 HTTP 和伺服器端技術的工作原理都是有用的。但是,我們不提供跨多個平臺的詳盡覆蓋;這超出了 MDN 的範圍。
  • 對傳統關係資料庫(例如,MySQLPostgres)和其他伺服器端資料儲存(例如,雲資料庫,如MongoDBGoogle Cloud Datastore)的深入覆蓋。我們在伺服器端網站程式設計模組中提供了對此類技術的簡要介紹。
  • 深入的 DevOps 主題,例如用於配置和自動化的雲平臺(例如,Amazon AWSGoogle Cloud PlatformMicrosoft Azure)以及容器化工具(例如,KubernetesDocker)。我們只是略微提及了一些被認為是 DevOps 領域的工具——例如 GitHub 和自動化測試工具——但這些工具與前端開發人員領域有明顯的交叉。
  • 開發人員設計中概述的基礎知識之外的圖形設計。
  • 與產品和專案管理等角色相關的技能(例如,組織、研究和規劃)。

歸屬

此資源可供任何人免費使用。如果您覺得它有用,我們懇請您考慮執行以下操作:

  • 連結到它。例如,教育工作者可以在他們的公開課程資訊中包含以下內容:

    html
    <p>
      This course is based on
      <a href="https://mdn.club.tw/en-US/curriculum/"
        >MDN Learn Web Development</a
      >.
    </p>
    
  • 告訴其他人!我們希望儘可能多的學生和教育工作者開始使用這些材料,並將其作為 Web 開發人員基礎知識的標準。

注意:教育工作者應將這些材料作為指南,但其使用並不意味著 Mozilla 的認可。

更新流程

Web 開發行業正在不斷快速變化。為了保持我們的建議最新,我們將定期審查我們的材料,更新我們的更新日誌,並每年釋出公告,聯絡已知符合標準的課程建立者,告知他們課程已更改,並鼓勵他們酌情審查/更新其課程。

我們計劃每年第二季度進行此操作,以便教育工作者在第二/第三季度有時間在下一學年開始之前實施更改。

常見問題

Scrimba 合作問題

MDN 如何知道 Scrimba 的課程質量高且遵循最佳實踐?

在我們開始與 Scrimba 討論合作之前,他們已經享有盛譽。然而,我們不僅僅聽信社群的說法。我們對 Scrimba 的前端開發人員職業路徑 (FDCP) 進行了廣泛審查,並向他們提供了改進建議,重點是增加最佳實踐的覆蓋範圍並符合我們的核心模組。Scrimba 採納了我們所有的反饋,FDCP 甚至比以前更好了。既然它符合我們的課程核心,我們相信它符合 MDN 標準。

MDN 是否與 Scrimba 共享使用者資料?

我們優先考慮使用者隱私和透明度。MDN 與 Scrimba 共享的唯一資訊是使用者從 MDN 導航到 Scrimba 的情況,這是透過他們自己的操作(點選標記為外部的連結)發生的。

在我們嵌入 Scrimba 內容到 MDN 的情況下,在使用者選擇與 Scrimba 內容互動之前,Scrimba 不會看到使用者資料。

Scrimba 的內容並非免費。這是否與 MDN 提供免費內容的理念相沖突?

Scrimba 的許多內容需要付費訂閱,但他們也提供了幾門免費的完整課程,註冊後即可訪問。

還值得指出的是,Scrimba 的課程並非使用 MDN 學習 Web 開發所必需的——它們是為那些希望付費學習涵蓋我們課程核心的結構化課程的人提供的一種增強。您仍然可以透過學習我們的文章免費學習我們所有的學習成果。

完成 Scrimba 的前端開發人員職業路徑後是否會獲得認證?

是的,一旦您完成了前端開發人員職業路徑中的所有主題,您就可以獲得一份結業證書,可以與潛在僱主分享或新增到您的作品集中。有關更多資訊,請參閱我可以在哪裡找到我的結業證書?