Remarque : cet article est en cours de rédaction. N'hésitez pas à le compléter. Veuillez utiliser la page de discussion pour vos recommandations et suggestions d'améliorations.
Remarque : les nouvelles pages de documentation pour développeurs doivent être ajoutées à l' espace de noms Développement en tapant Développement:
devant le nouveau nom de page, par exemple [[Développement:Nom de la nouvelle page]]
.
Si vous êtes un développeur, il vous est conseillé de modifier vos préférences pour inclure l'espace de noms Développement dans vos recherches de cette documentation.
Une page peut être ajoutée à la catégorie Développeur en tapant [[Catégorie:Développeur|Nom de la nouvelle page]]
au bas de la page.
Conventions et pratiques recommandées de programmation
Ces conventions sont cruciales pour tous ceux qui veulent contribuer au développement de l'application Moodle :
- Coding guidelines, politiques et pratiques dans la conception de fragment de code
- en:Moodle architecture, présente les choix conceptuels majeurs dans l'architecture logicielle
- en:Interface guidelines, vise à créer une interface conviviale, consistante et aérée de Moodle
- CVS pour développeurs, CVS permet la gestion collaborative des versions de Moodle
- en:Unit tests, explique comment exécuter des tests et comment rédiger des tests standards
- Traqueur de bogues, explique le fonctionnement de Moodle Tracker pour garder une trace des bogues, problèmes, demandes de fonctionnalités, etc.
Outils et ressources
- en:Developer FAQ - questions et réponses fréquentes
- Traqueur de bogues de Moodle - rapports de bogues, nouvelles fonctionnalités proposées et autres éléments à suivre
- Forum général des développeurs (en anglais)
- Accès web au CVS - Accès au code de Moodle depuis votre navigateur
- Références croisées - Références croisées du code de Moodle
- Documentation de référence - Documentation générée de référence du code de Moodle (génération automatique)
- Nouvelles et discussion sur le développement, section du cours Using Moodle sur http://moodle.org/.
- en:Unmerged files - Modifications sur la branche stable du CVS n'ayant pas encore été incorporées à la branche de développement (HEAD)
Comment vous pouvez contribuer à Moodle
Le M de Moodle signifie modulaire. Il existe de nombreuses composantes que l'on peut ajouter à Moodle dotées de nouvelles fonctionnalités. Vous pouvez soit participer à leur développement, soit participer à leur documentation. Il existe de nombreuses possibilités de contribution, même pour les non programmeurs.
- Modules d'activités
- Blocs
- Thèmes
- Traductions
- Filtres
- Ressources
- Devoirs
- Type de Quiz
- Format d'importation/exportation de questions
- Rapport sur les quiz
- Schémas de base de données
- Formats de cours
- Méthodes d'authentification
Vous pouvez nous aider aussi en
Documentation du noyau
Cette section fournit des informations techniques relatives à certains composants clef du noyau de Moodle. Les discussions d'architecture sur ces composants et d'autres en cours d'analyse peuvent être trouvées (en anglais) dans les deux sections Notes des développeurs ou sur la planification.
Composants du noyau qui affectent toute l'architecture
- lib/moodlelib.php librairie originelle de fonctions courantes et essentielles.
- lib/weblib.php pour effectuer des sorties de motifs HTML prédéfinis.
- Couche d'abstraction de base de données @ v1.7
- Système de rôles et de capacités @ v1.7 pour contrôler qui peut faire quoi.
- Nouvelle librairie de formulaires @ v1.8 pour créer des formulaires de dialogue HTML sécurisés et qui garantissent le respect des règles d'accessibilité.
Customiser Moodle
Moodle est un logiciel open-source. Les utilisateurs de la plate-forme ont tout à fait le droit de modifier le code de la plate-forme pour l'adapter à leurs besoins propres. Le développement de nouveaux plugins est une façon d'ajouter des fonctionnalités à la plate-forme. Cependant, se lancer dans un développement totalement neuf demande une bonne expérience de l'architecture de la plate-forme et des ses API logicielles.
La plupart du temps, la personnalisation de Moodle peut altérer légèrement des composants ou du code existant pour en changer le comportement local, au delà de ce que le paramétrage déjà très riche de la plate-forme sait faire.
Modifications sans altération du noyau
- Cloner des plugins
- Utiliser le plugin spécial 'local'
- Détourner des pages de la plate-forme : Usage des customscripts
- Détourner des librairies
Modifications avec altération du noyau
Documentations diverses
Voir aussi
- Moodle Security Centre
- Partenaire Moodle - providers of custom Moodle development services