Geliştirici merkezi

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.
  • Kullanıcılar
  • Sistem Hizmetlileri
  • Geliştiriciler
  • Çevirmenler


Bu, MediaWiki geliştiricilerinin kullanabileceği temel belgelere, kaynaklara ve araçlara bağlantılar içeren MediaWiki geliştirmesine üst düzey bir genel bakışdır. MediaWiki kullanma deneyimi olan yetenekli LAMP geliştiricileri için yazılmıştır.

  • Wikimedia web API'lerini kullanmak istiyorsanız, Developer Portal adresini ziyaret edin.
  • Wikimedia yazılımının geliştirilmesine katkıda bulunmak istiyorsanız, New Developers sayfasına bakın.
  • MediaWiki ve MediaWiki uzantılarını geliştirmeye yönelik tanıtım rehberi için sayfasına okuyun.
  • Diğer üçüncü taraf MediaWiki kullanıcılarıyla işbirliği yapmak istiyorsanız, MediaWiki Paydaşlar Grubu (MWStake), MediaWiki geliştiricilerinden, sistem yöneticilerinden, kullanıcılardan, danışmanlardan ve barındırma sağlayıcılarından oluşan bir MediaWiki kullanıcı grubudur.

Genel bakış

MediaWiki, tüm dünyadaki Vikipedi'ye, kardeş projelerine ve binlerce vikiye güç sağlayan yazılımdır.

MediaWiki PHP programlama dilinde yazılmıştır.[1]. İstemci JavaScript kütüphanesi olarak jQuery'yi kullanır.

MediaWiki, öncelikle LAMP platformu için yazılmıştır [2] ve çoğu işletim sisteminde çalışır. MediaWiki öncelikle MySQL ve MariaDB veritabanı sunucularını kullanır.[3]

Geliştirme açık kaynak tarzında gerçekleşir,[4] gönüllü topluluk geliştiricileri de büyük bir rol oynar, ancak büyük ölçüde çevrimiçi olarak koordine edilir ve Wikimedia Vakfı tarafından desteklenir.

  • Geliştirme tartışması çeşitli posta gönderme listeleri ve IRC kanallarında MediaWiki üzerinde gerçekleşir. Ana geliştirici listesi wikitech-l olur. Ana geliştirici IRC kanalı #mediawiki bağlan olur.
  • Kaynak kodu Git sürüm kontrol sistemi kullanılarak yönetilir.[5]
  • Kod inceleme çoğu proje için Gerrit ile gerçekleştirildi. Bu öğreticiyi izleyin yamaları göndermek için Git ve Gerrit'i ayarlamak üzere.
  • Hata raporları ve çoğu projenin görevleri Phabricator üzerinde yönetiliyor.
  • MediaWiki'yi genişleten veya bunlarla etkileşime giren geliştiricilerin (temel kod üzerinde çalışmak yerine) API, Kancalar sistemi ve Görünümler genel bakış için bu sayfanın #MediaWiki'yi genişletme bölümüne bakın.

Anahtar belgeleri

Kod, geliştirme ve stil

Hata ayıklama ve test etme

Mimari

Alt sistemleri

  • API – MediaWiki'nin API'si, MediaWiki veritabanlarında bulunan verilere doğrudan ve yüksek düzeyde erişim sağlar.
  • ContentHandler – MediaWiki'nin özel sayfa içeriği türlerini destekleme çerçevesi.
  • Database access – veritabanı soyutlama katmanına ilişkin kısa bir kılavuz da dahil olmak üzere, MediaWiki'de veritabanlarının kullanımına genel bakış.
  • İş kuyruğu – MediaWiki'nin uzun süren görevleri eşzamansız olarak işleme çerçevesi.
  • Messages API – MediaWiki'nin PHP veya JavaScript ile yerelleştirilmiş uygulama mesajları sağlama çerçevesi.

MediaWiki'yi genişletme

MediaWiki, "temel kod" değiştirilmeden değişiklik yapılmasına izin verecek şekilde tasarlanmıştır. Bu, eski uzantı kodu değişikliklerini manüel olarak birleştirmek zorunda kalmadan MediaWiki'nin yeni bir sürümüne güncellenmeyi kolaylaştırır. Geliştiricilerin MediaWiki'nin yapabileceklerini değiştirmelerine veya genişletmelerine olanak tanıyan altı ana uzantı noktası vardır. Uzantı noktaları:

  • API – web API'si üzerinden MediaWiki örneklerinin verilerine ve meta verilerine erişin.
  • Hooks – her etkinlik gerçekleştiğinde bir şeyler yapın.
  • Ayrıştırıcı işlevleri – şunun gibi yeni bir komut oluşturun: {{#if:...|...|...}}.
  • Skins – MediaWiki'nin görünümünü ve hissini değiştirin.
  • Special pages – yeni bir özel sayfa ekleyin.
  • Etiket uzantıları – şunun gibi yeni bir etiket oluşturun: ‎<newtag>...‎</newtag>.
  • Extending wiki markup – vikimetin içeriğini değiştirmek için bir ayrıştırıcı kancası ekleyin.

Yardım uzantı geliştiricileri

Yardım görünüm geliştiricileri

Kütüphane kodunun yeniden kullanımı için yardım

Notlar

  1. MediaWiki’nin tamamı PHP ile yazılmamıştır. Bazı destek araçları, toplu iş dosyası, kabuk komutları, makefiles ve Python gibi diğer dillerde yazılmıştır.
  2. MediaWiki, PHP'yi destekleyen çoğu platformda çalışır, ancak, bazı yardımcı programların veya işletim sistemi özelliklerinin eksikliği, işlevselliklerini veya performanslarını sınırlayabilir. LAMP dışı platformlarda MediaWiki.
  3. MediaWiki MySQL ve MariaDB dışındaki Veritabanı desteği var, PostgreSQL ve SQLite dahil.
  4. Geliştiriciler, çeşitli kuruluşlar için gönüllülerin ve ücretli personelin (veya müteahhitlerin) bir karışımıdır. MediaWiki kodunda çalışanların tam listesi için, Geliştiriciler maddesini okuyun.
  5. Kaynak kodunu ve kod depolarının revizyonlarını $1 adresinden tarayın veya kaynak kodunu Gerrit kullanarak sisteminize indirin.