Jump to content

Pôle des développeurs

From mediawiki.org
This page is a translated version of the page Developer hub and the translation is 100% complete.
  • Utilisateurs
  • Administrateurs système
  • Développeurs
  • Traducteurs


Ceci est une vue d’ensemble très générale du développement MediaWiki, incluant des liens vers les documents clés, ressources et outils disponibles aux développeurs MediaWiki. Elle est écrite pour les développeurs LAMP qui ont déja expérimenté MediaWiki.

Résumé

MediaWiki est le logiciel qui fait tourner Wikipedia, ses projets fères et des milliers de wikis de par le monde.

MediaWiki est écrit dans le langage de programmation PHP[1]. Il utilise jQuery comme bibliothèque client JavaScript.

MediaWiki a d'abord été écrit pour la plateforme LAMP[2] et s'exécute sur la plupart des systèmes d'exploitation. MediaWiki utilisait à l'origine les serveurs de bases de données MySQL et MariaDB.[3]

Le développement se fait dans un style à source ouvert [4], essentiellement coordonné en-ligne, et soutenu par la Fondation Wikimedia, bien que la communauté des développeurs bénévoles joue également un rôle important.

  • Des discussions sur le développement ont lieu sur différentes listes de diffusion et canaux IRC. La liste principale pour les développeurs est wikitech-l. Le canal IRC principal pour les développeurs est #mediawiki connecter.
  • Le code source est géré via le logiciel de gestion de version Git.[5]
  • La revue de code pour la plupart des projets est effectuée sous Gerrit . Suivez ce tutoriel pour configurer Git et Gerrit afin de soumettre des correctifs.
  • Le signalement de bogues et les tâches de la plupart des projets sont gérés sur Phabricator .
  • Les développeurs qui œuvrent sur les extensions ou sur les interfaces de MediaWiki (au lieu de travailler directement sur le noyau du code) disposent de plusieurs mesures de commodité pour l’extension, comme l'API, les accroches et les habillages – voir la section Étendre MediaWiki de cette page pour une vue d’ensemble.

Documents clés

Code, développement et style

Correction de bogues et tests

Architecture

Sous-systèmes

  • API – l’API Mediawiki fourni un accès haut-niveau et direct aux données contenues dans les bases de données Mediawiki.
  • ContentHandler – L’infrastructure logicielle MediaWiki pour l’intégration de types personnalisés de contenus de page.
  • Accès à la base de données – un panorama de l'utilisation des bases de données dans MediaWiki, dont un bref guide sur la couche d’abstraction de la base de données.
  • File d’attente des travaux – infrastructure logicielle MediaWiki pour lancer des tâches au long cours s’exécutant de façon asynchrone.
  • API Messages – infrastructure logicielle MediaWiki permettant de fournir des messages d'application localisés avec PHP ou JavaScript.

Étendre MediaWiki

Mediawiki a été conçu de façon à ce qu’il puisse être étendu sans avoir à modifier le code de son noyau. Cela facilite les mises-à-jour vers les nouvelles versions de Mediawiki sans nécessiter de fusion manuelle des modifications de code des anciennes extensions.

Il y a six principaux types d'extensions qui permettent aux développeurs d'étendre ou modifier les fonctionnalités de MediaWiki. Ces principaux types sont :

  • API - accède aux données et aux métadonnées des instances MediaWiki via son API web.
  • Accroches – chaque fois qu’un événement donné se produit, déclencher les actions.
  • Fonctions d'analyse – créer une nouvelle commande comme : {{#if:...|...|...}}.
  • Habillages – modifier l’apparence et le comportement de MediaWiki.
  • Pages spéciales – ajouter une nouvelle page spéciale.
  • Extensions de balise – créer une nouvelle balise « newtag » comme : ‎<newtag>...‎</newtag>.
  • Etendre le balisage wiki – ajouter une accroche d'analyseur pour modifier le contenu du texte wiki.

Aide pour les développeurs d'extensions

Aide aux développeurs d’habillages

Aide sur la réutilisation de bibliothèques de code

Notes

  1. mais non en totalité. Certains outils supportés sont écrits dans d'autres langages, y compris les fichiers batch, les scripts shell, les makefiles et Python.
  2. MediaWiki s'exécute sur la plupart des plateformes qui supportent PHP, bien que, le manque de certains utilitaires ou fonctionalités du système d'exploitation puisse limiter la fonctionalité ou la performance de MediaWiki sur les plateformes non-LAMP.
  3. MediaWiki supporte des DBMS autres que MySQL et MariaDB, comme PostgreSQL et SQLite.
  4. Les développeurs sont un ensemble diversifié de bénévoles et de personnel payé (ou de consultants) pour diverses organisations. Pour une liste complète de qui travaille sur le code de MediaWiki, lisez l'article Développeurs .
  5. Explorez les fichiers source et les révisions des dépôts de code sur Gegrrit ou téléchargez les fichiers source sur votre système en utilisant Gerrit .