如何研究技術

本文件提供了一些關於如何記錄技術方法的實用資訊。

做好準備工作

在開始在 MDN Web Docs 上記錄或更新內容之前,您需要做一些準備和規劃,然後再開始實際寫作。

假設在閱讀本指南之前,您已經對以下內容有了一定的瞭解:

  • HTML、CSS 和 JavaScript 等 Web 技術。
  • 閱讀 Web 技術規範。在記錄 API 時,您會經常查閱這些內容。

其餘的都可以在過程中學習。

查閱資源

撰寫任何文件的有用資源包括:

  1. MDN Web Docs 的 操作指南:您現在就在這裡,但最好瀏覽所有文章,熟悉我們的寫作風格、不同型別的頁面及其包含的部分,以及我們包含頁面不同部分(如規範和瀏覽器相容性)的各種方式。
  2. 最新規範:不同的標準組織會為 MDN Web Docs 上記錄的技術建立規範。例如,JavaScript 的 TC39,HTML 的 WHATWG,以及 CSS、XML 和一些 Web API 的 W3C。規範連結在 MDN Web Docs 的參考頁面上(檢視“規範”部分)。或者,您通常也可以透過網路搜尋找到。請務必使用最新、最完整的規範。
  3. 最新的現代 Web 瀏覽器:這些應該是實驗性/Alpha 版本,例如 Firefox NightlyChrome CanarySafari Technology Preview,它們更有可能支援您正在記錄的功能。如果您正在記錄一項“即將推出”的功能,這一點尤其重要。
  4. 演示/部落格文章/其他資訊:儘可能多地查詢資訊。如果您正在更新一項技術,因為該技術已發生變化,請確保您用來學習的資源不是過時的。這就是為什麼上面前兩點很重要。

明智的做法是嘗試找到可以幫助您解答問題的人。這個人可以是規範的作者,也可以是實現瀏覽器功能的工程師。

閱讀規範

剛開始閱讀規範可能會覺得有些陌生,但您做得越多,就會越習慣。這裡有一些很好的連結可以幫助您入門:

此外,我們還有 《WebIDL 檔案中包含的資訊》 指南,這對於閱讀 Web API 規範非常有幫助。

探索功能

在記錄一項技術的過程中,您會多次返回編寫程式碼示例或構建演示,但一開始花時間熟悉這項技術的工作原理非常有益。這是一個非常有價值的練習,因為它能讓您深入瞭解用例(開發者**為什麼**會使用這項技術),並同時幫助建立一些程式碼示例。

注意: 如果規範最近有更新,例如,某個方法現在定義不同,但舊方法在瀏覽器中仍然有效,您通常需要在同一個地方記錄兩者,以便涵蓋舊方法和新方法。如果您需要幫助,請參考您找到的演示,或諮詢工程聯絡人。

建立需要編寫或更新的頁面列表

您需要從頭開始編寫或更新的頁面各不相同,具體取決於您要記錄的技術。檢視 頁面型別 和您正在記錄的技術的相關部分。您很可能還需要更新現有文件,因此請在 MDN Web Docs 中搜索與您正在編寫的內容相關的頁面。

您編寫的頁面的側邊欄可能也需要定義或更新。要了解是否需要這樣做以及如何操作,請檢視 側邊欄指南

程式碼示例

MDN Web Docs 的一些程式碼示例儲存在單獨的儲存庫中。最值得注意的是,這些是在參考頁面“嘗試一下”部分中顯示的互動式示例,以及指南所需的較大演示程式碼。如果您確實需要向這些儲存庫新增內容或修改內容,最好在您的列表中記下這一點。

程式碼示例 文章描述了我們在 MDN Web Docs 上使用的不同型別的程式碼示例。

示例

假設您正在記錄一個新的 Web API,您最初要記錄的部分列表將如下所示:

  1. 概述頁面
  2. 介面頁面
  3. 建構函式頁面
  4. 方法頁面
  5. 屬性頁面
  6. 事件頁面
  7. 概念/指南頁面
  8. 程式碼示例
  9. 側邊欄

然後,您可以新增更多細節進行擴充套件,新增每個介面及其成員。例如,如果您正在記錄 Web Audio API,您的列表可能看起來更像這樣:

  • Web_Audio_API

  • AudioContext

    • AudioContext.currentTime
    • AudioContext.destination
    • AudioContext.listener
    • ...
    • AudioContext.createBuffer()
    • AudioContext.createBufferSource()
    • ...
  • AudioNode

    • AudioNode.context
    • AudioNode.numberOfInputs
    • AudioNode.numberOfOutputs
    • ...
    • AudioNode.connect(Param)
    • ...
  • AudioParam

  • 事件(更新列表)

    • start
    • end

建立問題(issue)

此時,最好在 mdn/content 儲存庫上建立一個跟蹤 issue,並將頁面列為待辦(複選框)列表。這不僅使您,也使其他參與文件工作的人能夠公開跟蹤狀態。您還可以將您的 pull requests 連結到此 issue,以便為所有人提供更多上下文。

建立頁面

現在建立您需要的頁面。要建立新頁面,請參閱我們 《如何建立、移動、刪除和編輯頁面》 指南中的說明。檢視我們的 頁面型別 指南,其中包含可能有用的頁面模板。