2014-05-10

Created page with "== Resumen =="

← Older revision

Revision as of 05:53, 10 May 2014

(5 intermediate revisions by the same user not shown)

Line 4:

Line 4:

 

{{TNT|Hubs|none|dev=y}}

 

{{TNT|Hubs|none|dev=y}}

 

 



'''
This

is

a

high-level

overview

of

MediaWiki

development
'''
,

including

links

to

the

key

documents
,
resources

and

tools

available

to

MediaWiki

developers.

It

is

written
'''
for

skilled
[[w:LAMP (software bundle)|LAMP]]
developers

who

have

experience

using
MediaWiki'''.

+

'''
Este

es

un

resumen

de

alto

nivel

del desarrollo de MediaWiki
'''
que

incluye

enlaces

a los

principales

documentos
,
recursos

y

herramientas

disponibles

a

los

desarrolladores

de MediaWiki.

Está

escrito
'''
para

desarrolladores especializados en
[[w:LAMP (software bundle)|LAMP]]
con experiencia

en

el

uso

de
MediaWiki'''.

 

 



For

an

introductory

guide

to

developing
MediaWiki,
read
[[How to become a MediaWiki hacker|how to become a MediaWiki hacker]].

+

Como

guía

introductoria

al

desarrollo

de
MediaWiki,
leer
[[How to become a MediaWiki hacker|how to become a MediaWiki hacker]].

 

 



For

help

installing

or

customizing

MediaWiki,

visit

the
[[Sysadmin hub]]
.

For

help

using

MediaWiki,

visit

the
[[User hub]].

+

Puedes

encontrar

ayuda

para

la

instalación

o

personalización de MediaWiki en
[[Sysadmin hub]]
y

para

la

utilización

de MediaWiki

en
[[User hub]].

 

 



==
Overview
==

+

==
Resumen
==

 

 

 

MediaWiki is developed in an [[w:Open Source|open source]] style<ref>Developers are a mix of volunteers and paid Wikimedia Foundation staff (or contractors). For a full list of who works on the MediaWiki code, read the [[Developers]] article.</ref> using the [http://php.net PHP] programming language <ref>Not all of MediaWiki is written in PHP. Some supporting tools are written in other languages, including [[w:Batch files|batch files]], [[w:Shell script|shell scripts]], [[w:Makefile|makefiles]] and [[w:Python (programming language)|Python]].</ref> primarily for the [[w:LAMP_(software_bundle)|LAMP platform]]<ref>MediaWiki runs on most platforms that can support PHP, however, the lack of certain utilities or operating system features may limit the functionality or performance of MediaWiki on non-LAMP platforms.</ref><ref>MediaWiki has support for [[w:DBMS|DBMS]] other than [[w:MySQL|MySQL]], including [[w:Oracle Database|Oracle]], [[w:PostgreSQL|PostgreSQL]] and [[w:SQLite|SQLite]].</ref>. Core development is largely coordinated online.

 

MediaWiki is developed in an [[w:Open Source|open source]] style<ref>Developers are a mix of volunteers and paid Wikimedia Foundation staff (or contractors). For a full list of who works on the MediaWiki code, read the [[Developers]] article.</ref> using the [http://php.net PHP] programming language <ref>Not all of MediaWiki is written in PHP. Some supporting tools are written in other languages, including [[w:Batch files|batch files]], [[w:Shell script|shell scripts]], [[w:Makefile|makefiles]] and [[w:Python (programming language)|Python]].</ref> primarily for the [[w:LAMP_(software_bundle)|LAMP platform]]<ref>MediaWiki runs on most platforms that can support PHP, however, the lack of certain utilities or operating system features may limit the functionality or performance of MediaWiki on non-LAMP platforms.</ref><ref>MediaWiki has support for [[w:DBMS|DBMS]] other than [[w:MySQL|MySQL]], including [[w:Oracle Database|Oracle]], [[w:PostgreSQL|PostgreSQL]] and [[w:SQLite|SQLite]].</ref>. Core development is largely coordinated online.

Line 23:

Line 23:

 

* '''Code review''' is performed on [[Gerrit]], see [[Gerrit/Tutorial|this tutorial]] to get set up with git and gerrit in order to submit patches.

 

* '''Code review''' is performed on [[Gerrit]], see [[Gerrit/Tutorial|this tutorial]] to get set up with git and gerrit in order to submit patches.

 

 



* Developers '''extending''' or '''interfacing''' with MediaWiki (instead working on the core code) have several convenient extension points, including the '''[[API]]''', the '''[[Manual:Hooks|Hooks]]''' system and '''[[Manual:Skins|Skins]]''' – see the [[#Extending MediaWiki]] section of this page for an overview.

+

* Developers '''extending''' or '''interfacing''' with MediaWiki (instead working on the core code) have several convenient extension points, including the '''[[
Special:MyLanguage/API:Main page|
API]]''', the '''[[Manual:Hooks|Hooks]]''' system and '''[[Manual:Skins|Skins]]''' – see the [[#Extending MediaWiki]] section of this page for an overview.

 

 

 

==Key documents==

 

==Key documents==

Line 82:

Line 82:

 

===Sub-systems===

 

===Sub-systems===

 

 



* '''[[API]]''' – MediaWiki's API provides direct, high-level access to the data contained in the MediaWiki databases.

+

* '''[[
Special:MyLanguage/API:Main page|
API]]''' – MediaWiki's API provides direct, high-level access to the data contained in the MediaWiki databases.

 

 

 

* '''[[Manual:ContentHandler|ContentHandler]]''' – MediaWiki's framework for supporting custom types of page content.

 

* '''[[Manual:ContentHandler|ContentHandler]]''' – MediaWiki's framework for supporting custom types of page content.

Line 98:

Line 98:

 

MediaWiki has been designed to allow for modification without changing the "core code". This makes it easy to update to a new version of MediaWiki without having to manually merge in old extension code changes. There are five main extension points that allow developers to change or extend what MediaWiki can do. The extension points are:

 

MediaWiki has been designed to allow for modification without changing the "core code". This makes it easy to update to a new version of MediaWiki without having to manually merge in old extension code changes. There are five main extension points that allow developers to change or extend what MediaWiki can do. The extension points are:

 

 



* '''[[API]]''' – access the data and metadata of MediaWiki instances through a powerful web API.

+

* '''[[
Special:MyLanguage/API:Main page|
API]]''' – access the data and metadata of MediaWiki instances through a powerful web API.

 

 

 

* '''[[Manual:Hooks|Hooks]]''' – every time a given event happens do something.

 

* '''[[Manual:Hooks|Hooks]]''' – every time a given event happens do something.

Line 115:

Line 115:

 

* '''[[Project:WikiProject Extensions]]'''

 

* '''[[Project:WikiProject Extensions]]'''

 

* '''[[Extensions FAQ]]'''

 

* '''[[Extensions FAQ]]'''



*
'''[[Extension Matrix]]''' – an auto-generated list of extensions.
See
also
[[:Category:Extensions]], a
less complete
list of extensions.

+

* See [[:Category:Extensions]],
for
a list of extensions.

 

* '''[[Manual:$wgExtensionFunctions]]''' – use to defer setup (or run other callbacks) for extensions until after the MediaWiki core is [[Manual:Setup.php|setup]].

 

* '''[[Manual:$wgExtensionFunctions]]''' – use to defer setup (or run other callbacks) for extensions until after the MediaWiki core is [[Manual:Setup.php|setup]].

 

* '''[[Extension:BoilerPlate]]''' - a blank extension template

 

* '''[[Extension:BoilerPlate]]''' - a blank extension template

Show more