Jump to content

Developer hub

From mediawiki.org
This page is a translated version of the page Developer hub and the translation is 99% complete.
Outdated translations are marked like this.
  • Użytkownicy
  • Administratorzy
  • Twórcy
  • Tłumacze


To jest przegląd treści dotyczących rozwijania oprogramowania MediaWiki, zawiera linki do dokumentacji, zasobów i narzędzi dostępnych dla programistów MediaWiki. Ta część została napisana dla doświadczonych programistów LAMP posiadających doświadczenie w użytkowaniu MediaWiki.

Przegląd

MediaWiki to oprogramowanie wykorzystywane przez Wikipedię, jej projekty siostrzane i tysiące wiki na całym świecie.

MediaWiki jest napisane w języku programowania PHP.[1] Wykorzystuje jQuery jako bibliotekę JavaScript działająca po stronie klienta.

MediaWiki jest napisane głównie na platformy LAMP[2] i działa na większości systemów operacyjnych. MediaWiki wykorzystuje głównie serwery baz danych MySQL i MariaDB.[3]

Oprogramowanie MediaWiki jest rozwijane na licencji open source[4], w większości rozwój koordynowany jest online i wspierany przez Wikimedia Foundation, ale dużą rolę pełnią też wolontariusze.

  • Dyskusja na temat rozwoju odbywa się na listach mailingowych oraz na kanale IRC. Główna listą dyskusyjną programistów jest wikitech-l, a kanałem IRC jest #mediawiki connect.
  • Kod źródłowy jest zarządzany przez system kontroli wersji Git.[5]
  • Przegląd kodu odbywa się w Gerrit , zobacz ten przewodnik, aby dowiedzieć się jak ustawić git i gerrit, by móc przesyłać poprawki.
  • Zgłoszenia błędów i zadania dla większości projektów zarządzane są w Phabricator .
  • Programiści rozszerzający lub tworzący interfejs poprzez MediaWiki (zamiast pracy nad rdzeniem MediaWiki) mogą zapoznać się z API, Systemem haków oraz Skórkami – zobacz sekcję #Rozszerzanie MediaWiki.

Dokumentacja

Kod, rozwój i styl

Debugowanie i testowanie

Architektura

Podsystemy

  • API – API MediaWiki umożliwia bezpośredni dostęp do danych zawartych w bazach danych MediaWiki.
  • ContentHandler – Framework MediaWiki do obsługi własnych typów zawartości stron.
  • Dostęp do bazy danych – przegląd dotyczący używania baz danych w MediaWiki.
  • Kolejka zadań – framework MediaWiki do wykonywania długotrwałych zadań w sposób asynchroniczny.
  • Messages API – framework do przechwytywania komunikatów w MediaWiki, za pomocą PHP lub JavaScript.

Rozszerzanie MediaWiki

System MediaWiki został tak stworzony, aby pozwolić na modyfikację bez edycji głównego kodu. Czyni to łatwym w aktualizacji oprogramowania bez konieczności porównywania plików z wprowadzonymi zmianami. Jest sześć punktów rozszerzania funkcji:

  • API – dostęp do danych i informacji dodatkowych z instancji MediaWiki poprzez web API.
  • Haki – za każdym razem gdy podane zdarzenie wystąpi, zrób cośtam.
  • Funkcje parsera – tworzenie nowej komendy, np.: {{#if:...|...|...}}.
  • Skórki – zmiana wyglądu MediaWiki.
  • Strony specjalne – dodawanie nowych stron specjalnych.
  • Tag extensions – tworzenie nowych znaczników: ‎<newtag>...‎</newtag>.
  • Extending wiki markup – dodaj hak parsera do zmieniania zawartości wynikowej wikikodu.

Pomoc dla twórców rozszerzeń

Pomoc dla twórców skórek

Pomoc w wykorzystywaniu kodu bibliotek

Uwagi

  1. Nie całe MediaWiki jest napisane w PHP. Niektóre narzędzia pomocnicze są napisane w innych językach, takich jak pliki wsadowe, skrypty powłoki, makefile i Python.
  2. MediaWiki działa na wielu platformach, które mogą obsługiwać PHP, jednak brak niektórych narzędzi lub funkcji systemu operacyjnego może ograniczać funkcjonalność lub wydajność MediaWiki na platformach innych niż LAMP.
  3. MediaWiki posiada obsługę DBMS innych niż MySQL i MariaDB, takich jak PostgreSQL i SQLite.
  4. Twórcami są zarówno wolontariusze jak i płatni pracownicy (lub wykonawcy) z różnych organizacji. Aby zobaczyć pełną listę osób pracujących nad kodem MediaWiki, przeczytaj artykuł Deweloperzy .
  5. Przeglądaj kod źródłowy i zmiany repozytorium kodu w Gerrit lub pobierz kod źródła do systemu za pomocą Gerrit .