Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Developer documentation: Difference between revisions

From MoodleDocs
No edit summary
Line 1: Line 1:
This [[:Category:Developer|Developer]] section of Moodle Docs is aimed at developers who contribute to the Moodle code, plugins, themes, and so on.
Este [[: Categoría: Desarrollador | Developer]] en la sección de Moodle Docs está dirigida a los desarrolladores que contribuyen al código de Moodle, plugins, temas, y así sucesivamente.
* If you manage a Moodle site, [[Administrator documentation]] may suit your needs better.  
* Si usted administra un sitio Moodle, [[Documentación Administrador]] puede satisfacer mejor sus necesidades.
* If you teach using Moodle, try [[Teacher documentation]].
* Si usted enseña el uso de Moodle intenta [[Manual del Profesor]].


<p class="note">'''Note:''' New developer documentation pages should be added to the ''Development namespace'' by typing <code>Development:</code> before the new page name i.e. <code><nowiki>[[New page name]]</nowiki></code>. If you are a developer, you probably want to change your [[Special:Preferences|preferences]] to include the Development namespace in searches.<br /><br />
<p class="note">'' 'Nota:''' páginas de documentación de Nuevo desarrollador debe añadirse al espacio de nombres''''de Desarrollo escribiendo <code> Desarrollo: </ code>, es decir, antes de que el nuevo nombre de la página <código de > <nowiki> [[Desarrollo: Nuevo nombre de página]] </ nowiki> </ code>. Si usted es un desarrollador, es probable que desee cambiar su [[Especial: Preferences | preferencias]] para incluir el espacio de nombres para el Desarrollo en las búsquedas. <br /> <br />


A page may be added to the Developer category by adding the template <code><nowiki>{{CategoryDeveloper}}</nowiki></code> to the bottom of the page. - If required, you can use <code><nowiki>[[Category:Sort key]]</nowiki></code> to provide a sort key other than the default page name.</p>
Una página puede ser añadido a la categoría de Desarrollo, añadiendo la plantilla <code> <nowiki> CategoryDeveloper (()) </ nowiki> </ code> en la parte inferior de la página. - Si es necesario, puede utilizar <code> <nowiki> [[Categoría: Desarrollador | Sort key]] </ nowiki> </ code> para proporcionar una clave de ordenación que no sea el nombre de la página predeterminada. </ P>


==How Moodle development works==
== ¿Cómo funciona el desarrollo de Moodle ==


The [[Overview|overview of the Moodle development process]] explains how Moodle development occurs and how people become Moodle developers. Current plans are listed on the [[Roadmap]].
El [[Desarrollo: Introducción | Visión general del proceso de desarrollo de Moodle]] se explica cómo se produce el desarrollo de Moodle y cómo la gente se los desarrolladores de Moodle. Los planes actuales están listados en la [[Plan de Trabajo]].


You can also enrol in one of the [http://dev.moodle.org Moodle Developer Courses].
También puede inscribirse en una de las [http://dev.moodle.org Moodle Cursos de Desarrollo].


==Guidelines==
Directrices == ==


The following guidelines are crucial reading for anyone wanting to contribute to the Moodle code base:
Las siguientes directrices son de lectura esencial para cualquiera que desee contribuir a la base de código de Moodle:
*[[Coding|Coding guidelines]] have to be followed by all Moodle developers
* [[Desarrollo: Codificación | Codificación de directrices]] tiene que ser seguido por todos los desarrolladores de Moodle
*[[Moodle design goals]] spells out the basic design goals behind Moodle
* [[Objetivos de diseño de Moodle]] expone los objetivos básicos de diseño detrás de Moodle
*[[Interface guidelines]] aim to provide a common feel to the Moodle user interface
* [[Interface Guidelines]] tienen por objeto proporcionar una sensación común a la interfaz de usuario de Moodle
*[[CVS (developer)|Moodle CVS for developers]] explains how to work with the Moodle code in CVS
* [[CVS (desarrollador) | Moodle CVS para desarrolladores]] se explica cómo trabajar con el código de Moodle en el CVS
*[[Tracker]] explains the Moodle Tracker for keeping track of bugs, issues, feature requests etc
* [[Tracker]] explica el Rastreador de Moodle para el seguimiento de errores, problemas, peticiones de características, etc
*[[Working with the Community|Working with the Community]] explains how to engage with the dev community and discuss changes
* [[Desarrollo: Trabajo con la Comunidad | Trabajar con la Comunidad]] se explica cómo comprometerse con la comunidad dev y discutir los cambios
*[[Unit tests|Unit tests]] explains how to run the unit tests, and how to write new test cases.
* [[Desarrollo: Pruebas de Unidad | Unidad de pruebas]] se explica cómo ejecutar las pruebas de unidad, y cómo escribir casos de prueba nueva.
*[[Fast portable SQL]] shows SQL techniques that are fast, efficient, and known to work on all supported DBs.
* [[Desarrollo: Rápido portátiles SQL]] muestra las técnicas de SQL que son rápidos, eficientes, y se sabe que funciona en todos los DBs apoyo.


==Documentation for core components==
== Documentación de los componentes principales ==


This section is for documentation of specific components of the existing core Moodle code. Discussion of components that are under discussion or in development can be found in the [[Developer notes|developer notes]] or on the [[Roadmap|roadmap]].
Esta sección es para la documentación de componentes específicos de la actual código de Moodle. Discusión de los componentes que están en discusión o en desarrollo se encuentra en el [[Desarrollo: notas para desarrolladores | Notas de desarrolladores]] o en [[Plan de trabajo | hoja de ruta]].


The documents below give a general overview. For detailed function-by-function documentation, see the [http://phpdocs.moodle.org/ phpDocumentor] documentation that is automatically generated from the comments in the code.  
Los documentos a continuación dar una visión general. Para la función detallado por la función de documentación, véase el [http://phpdocs.moodle.org/] phpDocumentor documentación que se genera automáticamente a partir de los comentarios en el código.


And don't forget that the most up-to-date and detailed description of how the code works is the code itself, and you can [http://xref.moodle.org/nav.html?index.html browse the code online] using [[PHPXref|PHPXref]].
Y no se olvide que la información más actualizada y detallada descripción de cómo funciona el código es el código en sí, y usted puede [http://xref.moodle.org/nav.html?index.html navegar por el código de en línea] usando [[Desarrollo: PHPXref | PHPXref]].


===Core components that affect everything===
=== Los componentes fundamentales que afectan a todo ===


*[[Database schema introduction|The database schema]]
* [[Desarrollo: introducción de esquemas de base de datos | El esquema de base de datos]]
*[[What happens when you require config.php|What happens when you require config.php]]
* [[Desarrollo: ¿Qué sucede en caso de requerir config.php | ¿Qué sucede en caso de requerir config.php]]
*lib/moodlelib.php  
* / lib / moodlelib.php
*[[lib/weblib.php|lib/weblib.php]] for outputting stuff
* [[Desarrollo: lib / weblib.php | lib / weblib.php]] para dar salida cosas
*[[JavaScript_functions|JavaScript function available on the client side]]
* [[Desarrollo: JavaScript_functions | JavaScript de funciones disponibles en el cliente]]
*[[XMLDB_Documentation|Database abstraction layer]] @ v[[1.7]]
* [[Desarrollo: XMLDB_Documentation | capa de abstracción de bases de datos]] @ v [[1,7]]
*[[Roles|Roles and Capabilities system]] @ v[[1.7]] for controlling who can do what
* [[Desarrollo: Roles | Funciones y capacidades del sistema]] @ v [[1,7]] para controlar quién puede hacer qué
*[[lib/formslib.php|Forms library]] @ v[[1.8]] for creating accessible and secure HTML forms that let users edit things
* [[Desarrollo: lib / formslib.php | biblioteca de formularios]] @ v [[1,8]] para crear formularios HTML accesibles y seguros que permiten a los usuarios editar las cosas
*[[Using_the_file_API|File API]] @ v[[2.0]] for managing files stored by Moodle
* [[Desarrollo: Using_the_file_API | Archivo de la API]] @ v [[2,0]] para la gestión de los archivos almacenados por Moodle


===Core libraries with a more specific uses===
=== Bibliotecas básicas con un uso más específico ===


*[[Authentication API]]
* [[Autenticación API]]
*[[Cookieless Sessions]]
* [[Sin cookies Sesiones]]
*[[Email processing]]
* [[Procesamiento de correo electrónico]]
*[[Environment checking|Environment checking]] before install, check the user's server to ensure Moodle will work there.
* [[Desarrollo: control de Medio Ambiente | control de Medio Ambiente]] antes de instalar, comprobar el servidor del usuario para asegurarse de Moodle trabajar allí.
*[[Groups|Groups system]]
* [[Desarrollo: Grupos | Grupos de sistema]]
*[[Grades|Gradebook]]
* [[Desarrollo: Grados | cuaderno de notas]]
*[[Moodle Network|Moodle Network]]
* [[Desarrollo: Moodle Red | Red Moodle]]
*[[Question engine]]
* [[Motor de preguntas]]
*[[Stats package]]
* [[Paquete Estadísticas]]
*[[UTF-8 migration|Migration to UTF-8]] @ v[[:Category:Moodle 1.6|1.6]]
* [[UTF-8 Migración | Migración a UTF-8]] @ v [[: Categoría: Moodle 1.6 | 1.6]]
*[http://developer.yahoo.com/yui YUI JavaScript library] - YUI was selected as the official AJAX library for Moodle.
* [http://developer.yahoo.com/yui YUI JavaScript librería] - YUI fue seleccionada como la biblioteca de AJAX oficial de Moodle.
*[[lib/graphlib|lib/graphlib]]
* [[Desarrollo: lib / graphlib | lib / graphlib]]
*[[Admin settings|Admin settings]]
* [[Desarrollo: configuración Admin | Administrador de configuración]]


===Modules included in the standard distribution===
=== Módulos incluidos en la distribución estándar ===


*[[Lesson Specification|Lesson Specification]]
* [[Desarrollo: Especificación de lección | Especificación Lección]]
*[[Quiz developer docs|Quiz module]]
* [[Docs desarrollador Quiz | Módulo Quiz]]
*[[SCORM schema|SCORM module 1.5 schema]]
* [[Esquema SCORM | módulo SCORM 1.5 esquema]]


==How you can contribute==
== ¿Cómo puede contribuir ==


===Make a new plugin===
=== Crear un nuevo plugin ===


The M in Moodle stands for modular, and the easiest, most maintainable way to add new functionality to Moodle is by using one of the many plugin APIs. There are many types of plugin you can write:
La M en Moodle significa modular, y más fácil de la manera más fácil de mantener para añadir nuevas funcionalidades a Moodle es mediante el uso de uno de los API plugin de muchos. Hay muchos tipos de plug-in se puede escribir:
*[[Modules|Activity modules]], see also [[NEWMODULE Documentation]] (work in progress)
* [[Desarrollo: Módulos | módulos de actividad]], ver también [[Desarrollo: NEWMODULE Documentación]] (en preparación)
*[[Admin reports|Admin reports]]
* [[Desarrollo: informes Admin | Administrador de informes]]
*[[Assignment types|Assignment types]]
* [[Desarrollo: los tipos de misiones | Asignación de tipos]]
*[[Authentication plugins|Authentication plugins]]
* [[Desarrollo: plugins de autenticación | Autenticación plugins]]
*[[Blocks|Blocks]]
* [[Desarrollo: Bloques | Bloques]]
*[[Course formats]]
* [[Formatos de cursos]]
*[[Course Report Plugins|Course reports]]
* [[Desarrollo: Informe del curso Plugins | Curso de informes]]
*[[Database fields|Database fields]]
* [[Desarrollo: Los campos de base de datos | base de datos de los campos]]
*[[Database presets|Database presets]]
* [[Desarrollo: presets de base de datos | base de datos de presets]]
*[[Enrolment plugins|Enrolment plugins]]
* [[Desarrollo: plugins Inscripción | Inscripción plugins]]
*[[Filters|Filters]]
Filtros * [[Desarrollo: Filtros |]]
*[[Gradebook plugins|Gradebook plugins]] (1.9 onwards)
* [[Desarrollo: plugins cuaderno de notas | cuaderno de notas plugins]] (1,9 en adelante)
**[[Gradebook_Report_Tutorial|Gradebook report]]
** [[Desarrollo: Gradebook_Report_Tutorial | Informe de cuaderno de notas]]
**[[Gradebook export|Gradebook export]]
** [[Desarrollo: la exportación del libro de calificaciones | exportación cuaderno de notas]]
**[[Gradebook import|Gradebook import]]
** [[Desarrollo: cuaderno de notas de importación | cuaderno de notas de importación]]
*[[Writing_a_Portfolio_Plugin|Portfolio plugins]] (2.0 onwards)
* [[Desarrollo: Writing_a_Portfolio_Plugin | Portafolio plugins]] (2.0 en adelante)
*[[Question_type_plugin_how_to|Question types]]
* [[Desarrollo: Question_type_plugin_how_to | Tipos de preguntas]]
*[[Question import/export formats|Question import/export formats]]
* [[Desarrollo: Pregunta de importación / exportación de formatos | Cuestión de importación / exportación de formatos]]
*[[How to write a quiz report plugin|Quiz reports]]
* [[Desarrollo: Cómo escribir un plugin informe de prueba | informes Quiz]]
*[[Repository plugins|Repository plugins]] (2.0 onwards)
* [[Desarrollo: plugins Repositorio | Repositorio plugins]] (2.0 en adelante)
*[[Resource types|Resource types]]
* [[Desarrollo: Tipos de recursos | Tipos de recursos]]
*[[Search engine adapters|Search engine adapters]]
* [[Desarrollo: Los adaptadores de motores de búsqueda | adaptadores de motores de búsqueda]]


General information that applies to all types of plugins
De información general que se aplica a todo tipo de plugins
*[[Places to search for lang strings|Where to put language strings for your plugin]]
* [[Desarrollo: Lugares para buscar cadenas lang | ¿Dónde poner las cadenas de idioma de su plug-in]]
*[[Installing and upgrading plugin database tables|Defining the database tables for your plugin]]
* [[Desarrollo: Instalar y actualizar tablas de base de datos de plugin | Definición de las tablas de base de datos de los plugins]]


Please see the [[Guidelines for contributed code|Guidelines for contributed code]] for an overview of how to contribute to the Moodle code.
Por favor, consulte la [[el desarrollo: directrices para el código contribuido | Guía para el código contribuido]] para una descripción de cómo contribuir en el código de Moodle.


Sometimes it is not possible to write a proper plugin for what you want to do, in which case you may have to resort to using the [[Local_customisation|local customisations]] hook.
A veces no es posible escribir un plugin adecuado para lo que quieres hacer, en cuyo caso puede que tenga que recurrir al uso de la [[Desarrollo: Local_customisation | personalizaciones locales]] gancho.


===Change core code===
=== Código del núcleo Cambio ===


Some types of change can only be made by editing the core Moodle code. Such changes are much harder to maintain than plugins. If you want your core change to be considered for inclusion in the official Moodle release, you need to create an issue in the [[Tracker|tracker]], and attach your change as a [[How_to_create_a_patch|patch]]. It is also a good idea to discuss your ideas in the forums first. See [[Overview#Major_Development]] for more details.
Algunos tipos de cambio sólo puede hacerse mediante la modificación del código fundamental de Moodle. Estos cambios son mucho más difíciles de mantener que los plugins. Si desea que su cambio básico para ser considerados para su inclusión en la versión oficial de Moodle, es necesario crear un problema en el [[Registros Registro |]], y adjunte su cambio como un [[Desarrollo: How_to_create_a_patch | patch]]. También es una buena idea para discutir sus ideas en los foros primero. Ver [[Desarrollo: Resumen # Major_Development]] para más detalles.


===Ways to contribute that do not involve PHP programming===
=== Formas de contribuir que no implican la programación PHP ===


*[[Themes|Create Moodle themes]]
* [[Temas | Crear temas de Moodle]]
*[[Translation|Translate Moodle into other languages]]
* [[Traducción | Traducir Moodle en otros idiomas]]
*[[MoodleDocs:Guidelines for contributors|Help document Moodle]]
* [[MoodleDocs: Normas para colaboradores | Ayuda documento de Moodle]]
*[[Tests|Join the testing effort]], which involves [[Tracker|participating in the bug tracker]]
* [[Desarrollo: Pruebas | Únete al esfuerzo de pruebas]], que consiste en [[Tracker | participantes en el seguimiento de errores]]


==Plans for the future==
== Los planes para el futuro ==


Ideas for and details of planned future features of Moodle are initially discussed on the forums in the [http://moodle.org/course/view.php?id=5 Using Moodle] course at moodle.org. That developer discussions are intermixed with user discussions in the same forums may seem strange at first but is one of the reasons for the success of Moodle. It is important that both end-users and developers discuss the future features together.
Ideas para detalles y características de un proyecto de futuro de Moodle son inicialmente discutidas en los foros en los [http://moodle.org/course/view.php?id=5 Using Moodle] curso en moodle.org. De que los debates de desarrolladores se entremezclan con los debates de usuario en los mismos foros, puede parecer extraño al principio, pero es una de las razones para el éxito de Moodle. Es importante que tanto los usuarios finales y desarrolladores de discutir las características de un futuro juntos.


Once ideas begin to crystallize on the forums they can be summarized in this wiki, either as part of the [[Roadmap|roadmap]] or in the form of [[Developer notes|developer notes]]. These pages then form the basis for further discussion in the forums.
Una vez que empiezan a cristalizar las ideas sobre los foros que se pueden resumir en este wiki, ya sea como parte de la [[Plan de trabajo | hoja de ruta]] o en forma de [[Desarrollo: notas para desarrolladores | Notas de desarrolladores]]. Estas páginas a continuación, constituyen la base para continuar el debate en los foros.


*[[Roadmap]]
* [[Plan de Trabajo]]
*[[Developer notes|Developer notes]]
* [[Desarrollo: notas para desarrolladores | notas de desarrolladores]]
*[[Student projects]]
* [[Proyectos de estudiantes]]
*[[Developer meetings]]
* [[Reuniones de desarrolladores]]


== Resources ==
== Recursos ==


*[[Developer FAQ]] - frequently asked questions, especially useful for newcomers to Moodle
* [[Developer FAQ]] - preguntas más frecuentes, especialmente útil para los recién llegados a Moodle
*[[Finding_your_way_into_the_Moodle_code|Finding your way into the Moodle code]] - also aimed at newcomers
* [[Desarrollo: Finding_your_way_into_the_Moodle_code | Encontrar su camino en el código de Moodle]] - también se dirige a los recién llegados
*[http://tracker.moodle.org/ Moodle tracker] - bug reports, feature requests and other tracked issues
cuestiones * [http://tracker.moodle.org/ tracker Moodle] - informes de errores, peticiones de características y otras orugas
**[[Firefox tracker search]] - How to setup a firefox quicksearch to easily navigate to moodle bugs
** [[De búsqueda de Firefox tracker]] - Como instalar una búsqueda rápida de Firefox para navegar fácilmente a Moodle errores
**[[Firefox tracker search#Firefox Search Plugins|Firefox Search Plugins]] - Find tracked issues even more easily
** [[De búsqueda de Firefox tracker # plugins de búsqueda de Firefox | plugins de búsqueda de Firefox]] - Buscar seguimiento de las cuestiones aún más fácilmente
*[[Unmerged files]] - changes on the stable branch in CVS that have not been merged to [[HEAD]]
* [[Archivos unmerged]] - cambios en la rama estable en el CVS que no se han fusionado en [[cabeza]]
*Browse the code online:
* Examinar el código en línea:
**[http://cvs.moodle.org/moodle/ the code with a complete change history from CVS]
** [http://cvs.moodle.org/moodle/ el código con un historial de cambios de CVS completa]
**[http://xref.moodle.org/index.html the code, with links generated by PHPXref]
** [http://xref.moodle.org/index.html el código, con enlaces generados por PHPXref]
*[http://phpdocs.moodle.org/ Moodle PHP doc reference] - compiled nightly from the comment attached to each class and function in the code.
* [http://phpdocs.moodle.org/ Moodle referencia de PHP doc] - compilado todas las noches en el comentario adjunto a cada clase y la función en el código.
*[[Database Schema|Database Schema]] - for recent releases
* [[Desarrollo: Base de datos de esquema | Esquema de base de datos]] - para las versiones recientes
*[http://moodle.org/course/view.php?id=5#4 Development news and discussion] section of Using Moodle course
* [http://moodle.org/course/view.php?id=5 # 4 noticias sobre el desarrollo y la discusión] de Uso de curso de Moodle
**especially the [http://moodle.org/mod/forum/view.php?id=55 General developer forum]
** especialmente el [http://moodle.org/mod/forum/view.php?id=55 Developer Forum General]
**[[Filters used on the Moodle.org forums|cool tricks you can use in the moodle.org forums]]
** [[Filtros utilizados en los foros de Moodle.org | trucos cool puede utilizar en los foros de moodle.org]]


== Tools ==
Herramientas == ==
Some tools people use when working on Moodle code:
Algunas personas las herramientas de uso cuando se trabaja en el código de Moodle:


=== IDEs ===
IDEs === ===


* [[Setting_up_Netbeans|Setting up NetBeans for Moodle development]] - NetBeans for PHP is a great out-of-the-box editor.
* [[Desarrollo: Setting_up_Netbeans | Creación de NetBeans para el desarrollo de Moodle]] - NetBeans para PHP es un gran fuera del editor de la caja.
* [[Setting_up_Eclipse|Setting up Eclipse for Moodle development]] - Eclipse is a great editor to use for php development, if you can work out how to set it up.
* [[Desarrollo: Setting_up_Eclipse | Creación de Eclipse para el desarrollo de Moodle]] - Eclipse es un editor de gran utilidad, para el desarrollo de PHP, si usted puede descubrir cómo configurarlo.
* [[vim|Setting up Vim for Moodle development]]
* [[Desarrollo: vim | Creación de Vim para el desarrollo de Moodle]]


=== Browser add-ons ===
=== Complementos del explorador ===
*[http://getfirebug.com Firebug], see [[Firebug]].
* [Firebug http://getfirebug.com], véase [[Desarrollo: Firebug]].
* [[Web developer extension]]
* [[Extensión desarrollador Web]]
* [https://addons.mozilla.org/en-US/firefox/addon/394 ViewSourceWith] - The main goal is to view page source with external applications, but you can do a lot of other things as well.
* [Https: / / addons.mozilla.org/en-US/firefox/addon/394 Viewsourcewith] - El objetivo principal es para ver la fuente de la página con aplicaciones externas, pero usted puede hacer un montón de otras cosas también.


=== Miscellaneous ===  
Varios === ===
*[[ctags|Ctags]] - Using a tags file to navigate code
* [[Desarrollo: ctags | Ctags]] - Con un archivo de etiquetas de código para navegar
*[[W3C_validation|W3C HTML validator]] - Moodle has built in support to make using it easier.
* [[W3C_validation | W3C validador HTML]] - Moodle tiene soporte para el uso más fácil.
*[[Windows Installer|Windows Installer]] - Windows Installer documentation for developer.
* [[Desarrollo: Windows Installer | Windows Installer]] - Windows Installer documentación para desarrolladores.


See also: [http://dev.moodle.org/mod/forum/view.php?id=18 Useful Development Tools forum]in the [http://dev.moodle.org/course/view.php?id=2 Introduction to Moodle Programming course]
Véase también: [http://dev.moodle.org/mod/forum/view.php?id=18 útiles Foro para el Desarrollo Herramientas] en la [http://dev.moodle.org/course/view.php?id = 2 Introducción a la programación de cursos Moodle]


==See also==
== Véase también ==


*[http://moodle.org/security/ Moodle Security Announcements]
* [http://moodle.org/security/ Moodle Anuncios de Seguridad]
*[http://moodle.com/partners/ Moodle Partners] - providers of custom Moodle development services
* [http://moodle.com/partners/ Moodle Asociados] - los proveedores de servicios con Moodle desarrollo


[[Category: Desarrollador]]
[[Categoría: Herramientas de Desarrollo]]


[[Category:Developer tools]]
[[ru: Desarrollo: Краткий обзор]]
 
[[en: Documentación para Desarrolladores]]
[[ru:Development:Краткий обзор]]
[[fr: développeur Documentación]]
[[pt: Desenvolvimento: Documentación para programadores]]
[[zh:开发者文档]]
[[ja:開発者ドキュメント]]
[[fi: opas Ohjelmoijan]]

Revision as of 01:51, 18 January 2010

Este Developer en la sección de Moodle Docs está dirigida a los desarrolladores que contribuyen al código de Moodle, plugins, temas, y así sucesivamente.

'Nota: páginas de documentación de Nuevo desarrollador debe añadirse al espacio de nombres'de Desarrollo escribiendo Desarrollo: </ code>, es decir, antes de que el nuevo nombre de la página <código de > <nowiki> Desarrollo: Nuevo nombre de página </ nowiki> </ code>. Si usted es un desarrollador, es probable que desee cambiar su preferencias para incluir el espacio de nombres para el Desarrollo en las búsquedas.

Una página puede ser añadido a la categoría de Desarrollo, añadiendo la plantilla <nowiki> CategoryDeveloper (()) </ nowiki> </ code> en la parte inferior de la página. - Si es necesario, puede utilizar <nowiki> Sort key </ nowiki> </ code> para proporcionar una clave de ordenación que no sea el nombre de la página predeterminada. </ P>

¿Cómo funciona el desarrollo de Moodle

El Visión general del proceso de desarrollo de Moodle se explica cómo se produce el desarrollo de Moodle y cómo la gente se los desarrolladores de Moodle. Los planes actuales están listados en la Plan de Trabajo.

También puede inscribirse en una de las Moodle Cursos de Desarrollo.

Directrices == ==

Las siguientes directrices son de lectura esencial para cualquiera que desee contribuir a la base de código de Moodle:

Documentación de los componentes principales

Esta sección es para la documentación de componentes específicos de la actual código de Moodle. Discusión de los componentes que están en discusión o en desarrollo se encuentra en el Notas de desarrolladores o en hoja de ruta.

Los documentos a continuación dar una visión general. Para la función detallado por la función de documentación, véase el [1] phpDocumentor documentación que se genera automáticamente a partir de los comentarios en el código.

Y no se olvide que la información más actualizada y detallada descripción de cómo funciona el código es el código en sí, y usted puede navegar por el código de en línea usando PHPXref.

Los componentes fundamentales que afectan a todo

Bibliotecas básicas con un uso más específico

Módulos incluidos en la distribución estándar

¿Cómo puede contribuir

Crear un nuevo plugin

La M en Moodle significa modular, y más fácil de la manera más fácil de mantener para añadir nuevas funcionalidades a Moodle es mediante el uso de uno de los API plugin de muchos. Hay muchos tipos de plug-in se puede escribir:

Filtros * [[Desarrollo: Filtros |]]

De información general que se aplica a todo tipo de plugins

Por favor, consulte la Guía para el código contribuido para una descripción de cómo contribuir en el código de Moodle.

A veces no es posible escribir un plugin adecuado para lo que quieres hacer, en cuyo caso puede que tenga que recurrir al uso de la personalizaciones locales gancho.

Código del núcleo Cambio

Algunos tipos de cambio sólo puede hacerse mediante la modificación del código fundamental de Moodle. Estos cambios son mucho más difíciles de mantener que los plugins. Si desea que su cambio básico para ser considerados para su inclusión en la versión oficial de Moodle, es necesario crear un problema en el [[Registros Registro |]], y adjunte su cambio como un patch. También es una buena idea para discutir sus ideas en los foros primero. Ver Desarrollo: Resumen # Major_Development para más detalles.

Formas de contribuir que no implican la programación PHP

Los planes para el futuro

Ideas para detalles y características de un proyecto de futuro de Moodle son inicialmente discutidas en los foros en los Using Moodle curso en moodle.org. De que los debates de desarrolladores se entremezclan con los debates de usuario en los mismos foros, puede parecer extraño al principio, pero es una de las razones para el éxito de Moodle. Es importante que tanto los usuarios finales y desarrolladores de discutir las características de un futuro juntos.

Una vez que empiezan a cristalizar las ideas sobre los foros que se pueden resumir en este wiki, ya sea como parte de la hoja de ruta o en forma de Notas de desarrolladores. Estas páginas a continuación, constituyen la base para continuar el debate en los foros.

Recursos

cuestiones * tracker Moodle - informes de errores, peticiones de características y otras orugas

Herramientas == == Algunas personas las herramientas de uso cuando se trabaja en el código de Moodle:

IDEs === ===

Complementos del explorador

Varios === ===

Véase también: útiles Foro para el Desarrollo Herramientas en la = 2 Introducción a la programación de cursos Moodle

Véase también

Categoría: Herramientas de Desarrollo

ru: Desarrollo: Краткий обзор pt: Desenvolvimento: Documentación para programadores zh:开发者文档 fi: opas Ohjelmoijan