Rozcestník pro vývojáře

This page is a translated version of the page Developer hub and the translation is 100% complete.
  • Uživatelé
  • Správci wikiserverů
  • Vývojáři
  • Překladatelé


Toto je hlavní přehled vývoje MediaWiki. Obsahuje odkazy na klíčové dokumenty, zdroje a nástroje dostupné vývojářům MediaWiki. Je vytvořen pro zkušené vývojáře LAMP, kteří mají zkušenosti s používáním MediaWiki.

Přehled

MediaWiki je software, na kterém běží Wikipedie, její sesterské projekty a tisíce dalších wikin po celém světě.

MediaWiki je napsána v programovacím jazyce PHP. [1] Jako knihovnu JavaScriptu používá jQuery.

MediaWiki je primárně psána pro platformu LAMP [2] a běží na většině operačních systémů. MediaWiki primárně používá databázové servery MySQL a MariaDB. [3]

Vývoj probíhá ve stylu otevřeného zdroje [4]. Je do značné míry koordinován online a je podporován nadací Wikimedia Foundation. I když vývojáři dobrovolnických komunit hrají také velkou roli.

  • Diskuse o vývoji se děje na různých mailing listech a IRC kanálech. Hlavní seznam vývojářů je na stránce wikitech-l. Hlavní kanál IRC pro vývojáře je na stránce #mediawiki připojit se.
  • Zdrojový kód je řízen pomocí řídicího systému verze Git.[5]
  • Kontrola kódu se pro většinu projektů provádí na Gerrit u. Postupujte podle tohoto návodu a nastavte si Git a Gerrit pro zasílání oprav.
  • Hlášení chyb a úkoly pro většinu projektů jsou spravovány na Phabricator u.
  • Vývojáři rozšiření nebo propojení s MediaWiki (místo práce na základním kódu) mají několik výhodných bodů rozšíření, včetně API, systém háčků a zobrazení – přehled naleznete v části #Extending MediaWiki na této stránce.

Klíčové dokumenty

Kód, jeho vývoj a konvence

Testování a odstraňování chyb

Architektura

  • Architektura MediaWiki – úvod do architektury MediaWiki.
  • Příručka:Kód – přehled klíčových funkcí a proměnných, s nimiž se můžete setkat ve zdrojovém kódu MediaWiki.
  • Příručka:Schéma databáze – přehled databázových schémat s nimiž pracuje MediaWiki.
  • Příručka:Objekty v globálních proměnných – seznam vybraných klíčových globálních proměnných.
  • Lokalizace – vás seznámí s tím jak funguje internacionalizace u MediaWiki.
  • Manual (příručka) je jmenný prostor na této wiki – dokumentace pro vývojáře.
  • Reference třídy MediaWiki (MediaWiki Class Reference) – technická dokumentace, generovaná přímo ze zdrojového kódu MediaWiki. (Poznámka: Vzájemné reference tříd (class) jsou poměrně komplikované, takže se tyto stránky mohou načítat velmi pomalu.)

Subsystémy

  • API – API MediaWiki umožňuje přímý přístup k datům uloženým v databázích MediaWiki, na té nejvyšší úrovni.
  • ContentHandler – je MediaWiki framework, který umožňuje obsah wiki stránky interpretovat různým způsobem podle typu obsahu.
  • Přístup k databázi – přehled využití databází MediaWiki, včetně stručného průvodce, který vás provede, jak s nimi pracovat.
  • Fronta úloh – MediaWiki framework pro asynchronní zpracovávání náročných úloh.
  • Zprávy API – MediaWiki framework pro lokalizaci zpráv v PHP či JavaScriptu.

Doplňky do MediaWiki

MediaWiki byla navržena tak, aby ji bylo možno přizpůsobit beze změn "kódu jádra". Tím je zajištěno, že lze aktualizovat na novější verzi bez potřeby slučovat uživatelské úpravy do nové verze. V MediaWiki existuje šest hlavních bodů, kde mohou vývojáři přidávat nové funkce nebo měnit stávající vlastnosti. Těmito body jsou:

  • API – přístup k datům a metadatům v instanci MediaWiki prostřednictvím webového API.
  • Háčky – umožňují něco provést vždy, když se zavolají.
  • Parsovací funkce – vytvoří nový příkaz, například: {{#if:...|...|...}}.
  • Zobrazení – mění vzhled a chování uživatelského rozhraní MediaWiki.
  • Speciální stránky – přidá novou speciální stránku.
  • Rozšíření značek (tagů) – vytvoří nový tag, například: ‎<newtag>...‎</newtag>.
  • Rozšíření označení wiki – přidá k parseru nový háček, kterým lze upravit obsah wikitextu.

Nápověda pro vývojáře rozšíření

Nápověda pro tvorbu témat

Nápověda pro přebírání kódu knihoven

Poznámky

  1. Ne vše v MediaWiki je psáno v PHP. Některé podpůrné nástroje jsou psány v jiných jazycích, včetně dávkových souborů, Shell skriptů, vytváření souborů a Pythonu (programovací jazyk).
  2. MediaWiki pracuje na většině platforem, které podporují PHP. Nedostatek určitých nástrojů nebo funkcí operačního systému může omezit funkčnost nebo výkon MediaWiki na jiných platformách než LAMP.
  3. MediaWiki podporuje DBMS jiné než MySQL a MariaDB, včetně PostgreSQL a SQLite.
  4. Vývojáři jsou směsicí dobrovolníků a placených zaměstnanců (nebo dodavatelů) pro různé organizace. Úplný seznam lidí, kteří pracují na kódu MediaWiki, naleznete v článku Vývojáři .
  5. Procházejte zdrojový kód a revize úložišť kódů v Gerrit nebo si stáhněte zdrojový kód do svého systému pomocí Gerrit .