Jump to content

開發人員中心

本頁使用了標題或全文手工轉換
From mediawiki.org
This page is a translated version of the page Developer hub and the translation is 94% complete.
  • 使用者
  • 系統管理員
  • 開發人員
  • 翻譯人員
本技術手冊是針對開發者和技術貢獻者,普通的MediaWiki使用者可能難以理解。 如果您正在尋找使用MediaWiki的文件,請閱讀MediaWiki便覽

這是一個高階的MediaWiki開發的概述,包括關鍵文件的連結、資源、和MediaWiki開發者的可用工具。它是為已使用過MediaWiki的熟練LAMP 程序員寫的

概要

MediaWiki是維基百科與其姊妹項目,還有世界各地數以千計的維基網站使用的軟件。

MediaWiki以PHP編程語言書寫[1]。 它使用jQuery作為客戶端JavaScript庫。

MediaWiki主要為LAMP平台開發[2],並可以在大多數操作系統上運行。 MediaWiki首要使用MySQL與MariaDB數據庫服務器。[3]

開發以開源形式進行[4], 儘管志願者社區開發人員也發揮了很大的作用,但它在很大程度上是在線協調的,並得到了Wikimedia基金會的支持。

  • 開發討論可以在各種郵件列表IRC頻道中。 主要開發者列表為wikitech-l。 主要的開發者IRC頻道為#mediawiki 連線
  • 源代碼 使用Git版本控制系統進行管理。[5]
  • 大多數項目代碼審查Gerrit 執行。參考這個入門以配置Git和Gerrit來提交補丁。
  • 漏洞報告與任務是在Phabricator 中管理的。
  • MediaWiki中的開發者擴展接口(而不修改核心代碼)有幾個便捷的擴展點 ,包括 API鈎子系統。

主要文檔

編碼、開發和規範

調試和測試

架構

子系統

  • API——MediaWiki的API對包含在MediaWiki數據庫中的數據,提供了直接、高階的訪問。
  • 內容處理器 – MediaWiki在支援頁面內容的自定義型態的框架。
  • 數據庫訪問 – 在MediaWiki中使用數據庫的綜述,包括一個數據庫抽象層的簡明指南。
  • 作業佇列 – MediaWiki對長時間任務異步運行的框架。
  • 系統訊息API – MediaWiki在通過PHP或JavaScript提供本地化程序消息的框架。

擴展MediaWiki

MediaWiki已設計為允許修改但無須改動核心代碼。這也使得用戶可以很方便地升級MediaWiki而無須手動把自己的修改重新加入到舊的擴展功能的代碼中。有幾個擴展點 可以讓開發人員修改或擴展MediaWiki所能做的事。

擴展功能的開發人員的幫助文檔

皮膚的開發人員的幫助文檔

Help for gadget developers

Help for module developers

備註

  1. 不是所有MediaWiki代碼都由PHP書寫。一些支持工具是用其他語言書寫的,包括批處理文件shell腳本makefilesPython
  2. MediaWiki可以運行在大多數支持PHP的平台上,然而在非LAMP平台上,由於缺少某些實用工具或操作系統功能,可能會限制MediaWiki的功能或性能。
  3. MediaWiki此外支持DBMS,包括PostgreSQL以及SQLite等。
  4. 開發者是志願者和多個組織的帶薪職員(或承包商)的組合。有關使用MediaWiki代碼的人員的完整列表,請閱讀開發人員 文章。
  5. Gerrit瀏覽源代碼和代碼存儲庫的修訂,或使用Gerrit 下載源代碼至您的系統。