Centre dels desenvolupadors

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Developer hub and the translation is 98% complete.

Other languages:
العربية • ‎български • ‎català • ‎čeština • ‎dansk • ‎Deutsch • ‎Ελληνικά • ‎English • ‎español • ‎فارسی • ‎suomi • ‎français • ‎galego • ‎עברית • ‎Bahasa Indonesia • ‎italiano • ‎日本語 • ‎한국어 • ‎Nederlands • ‎polski • ‎português • ‎português do Brasil • ‎русский • ‎سنڌي • ‎සිංහල • ‎тоҷикӣ • ‎ไทย • ‎Türkçe • ‎Tiếng Việt • ‎粵語 • ‎中文
Crystal Clear app display.png UsuarisUser hub Nuvola-inspired-terminal.svg AdministradorsSysadmin hub Source code project 1171.svg DesenvolupadorsDeveloper hub

Això és una vista general del desenvolupament de MediaWiki, amb enllaços cap als documents essencials, els recursos i les eines disponibles als desenvolupadors de MediaWiki. Està escrita per a desenvolupadors de LAMP experts que tenen experiència amb MediaWiki.

Visió general

MediaWiki es desenvolupa en un estil de codi obert[1] mitjançant el llenguatge de programació PHP [2] principalment per a la plataforma LAMP[3][4]. El desenvolupament del nucli es coordina en gran part en línia.

  • La discussió sobre el desenvolupament es realitza a diverses llistes de correu i canals d'IRC. La llista de correu principal és wikitech-l. Els canals d'IRC principals són #mediawiki i #wikimedia-dev.
  • El codi font es gestiona mitjançant el sistema de control de versions Git.[5]
  • La revisió de codi es realitza a GerritGerrit. Per configurar Git i Gerrit de manera que pugueu enviar pedaços, seguiu aquest tutorial.
  • Bug reports and tasks for most projects are managed on Phabricator.
  • Els desenvolupadors que creen extensions o utilitzen la interfície de MediaWiki (en comptes de treballar al codi del nucli) tenen disponibles diversos punts d'extensió molt pràctics: l'API, el sistema de hooks i les aparences – vegeu la secció #Estendre MediaWiki d'aquesta pàgina per fer-vos-en una idea.

Documents essencials

Codi, desenvolupament i estil

Depuració i verificació


Arquitectura

Sub-sistemes

  • API – L'API de MediaWiki proporciona un accés directe i d'alt nivell a les dades que hi ha a les bases de dades de MediaWiki
  • ContentHandler – el marc de MediaWiki per admetre les pàgines amb tipus de contingut personalitzats.
  • Database accessManual:Database access – un resum de l'ús de les bases de dades a MediaWiki, amb una breu guia sobre la capa d'abstracció de bases de dades.
  • Job queueManual:Job queue – el marc de MediaWiki per processar asíncronament tasques de llarga durada.
  • Messages APIManual:Messages API – el marc de MediaWiki per proporcionar missatges d'aplicació traduïts, mitjançant PHP o JavaScript.

Estendre MediaWiki

MediaWiki ha estat dissenyat per a permetre una modificació sense canviar el "codi bàsic". Això fa molt fàcil l'actualització a una nova versió de MediaWiki sense haver de fusionar manualment les modificacions aportades. Hi ha 6 punts principals d'extensió que permeten als desenvolupadors afegir característiques i funcionalitats de MediaWiki o canviar les funcions existents. Aquests punts principals són :

  • API – per accedir a les dades i les metadades dels exemplars de MediaWiki a través de l'API web
  • Hooks – Cada cop que succeeix "X", aleshores realitza...
  • Parser Functions - Crea una nova ordre com: {{#if|...|...|...}}
  • Skins – Canvia l'aparença de MediaWiki
  • Special Pages - Crea una nova pàgina especial.
  • Tag Extensions – Crea una nova etiqueta com: <newtag>...</newtag>

Ajuda per als autors d'extensions

Aparença

Ajuda per reutilitzar codi de biblioteques

Ús en wikis de tercers

Notes

  1. Els desenvolupadors són una barreja de voluntaris i personal assalariat (o autònoms) de diverses organitzacions. Per a una llista de tots els qui treballen en el codi de MediaWiki, llegiu l'article DevelopersDevelopers.
  2. No tot MediaWiki està escrit en PHP: algunes eines auxiliars estan escrites en altres llenguatges, com ara fitxers batch, shell scripts, makefiles i Python.
  3. MediaWiki funciona a la majoria de plataformes on funciona PHP, però, en plataformes diferents de LAMP, la manca de certes utilitats o característiques del sistema operatiu poden limitar la funcionalitat o el rendiment de MediaWiki.
  4. MediaWiki és compatible amb sistemes de gestió de bases de dades diferents de MySQL i MariaDB, inclosos Oracle, PostgreSQL i SQLite.
  5. Per navegar pel codi font i les versions aneu a https://phabricator.wikimedia.org/diffusion/MW/, i per clonar la versió en desenvolupament del codi teclegeu aquesta ordre de Git:
    git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git MediaWiki