Attention : vous consultez actuellement la documentation dédiée aux versions 1.x de Moodle. La documentation pour les versions 2.x de Moodle est consultable ici : Architecture de Moodle, celle pour les versions 3.x de Moodle est consultable ici : Architecture de Moodle et celle pour Moodle 4.x est consultable là : Architecture de Moodle.

Architecture de Moodle

De MoodleDocs
Aller à :navigation, rechercher

De la perspective d’un administrateur, Moodle a été conçu selon les critères suivants:

Moodle doit s’exécuter sur la plus grande variété possible de plateformes

La plateforme d’application Web s’exécutant sur le plus grand nombre de plateform est PHP combiné à MySQL. Moodle a été développé sous dans cet environnement sous Windows, Linux et Mac OS X. Moodle emploie également la librairie ADOdb afin d’obtenir une abstraction de base de données. Ce ci permet à Moodle d’utiliser plus de 10 types de base données. Moodle ne peut pas cependant créer des tables dans chacun de ces formats.

Moodle doit être facile à installer, à apprendre et à modifier

Les premiers prototypes de Moodle furent développés en 1999 en utilisant Zope, un serveur d’application Web basé sur les concepts de l’orienté-objet. Malgré le caractère novateur de Zope, cette technologie comporte plusieurs problèmes dont son degré de complexité pour les non-initiés et le manque de flexibilité de système d’administration. Au contraire, PHP est très facile à maitriser, spécialement si vous avez déjà utilisé d’autres langages de script. Tôt dans le développement, il fut décidé d’éviter l’utilisation de paradigmes orientés-objets afin de permettre au programmeur novice de comprendre l’architecture de Moodle. La réutilisation de code est plutôt accomplie par l’utilisation de librairies de fonctions clairement nommées et par la mise en pages constantes des fichiers de script. L’installation de PHP est fort simple (des exécutables sont disponibles pour toutes les plateformes) et son utilisation est largement rependue, au point où la plupart des hébergeurs Web l’offre dans leurs forfaits de base.

Les mises à niveau de version en version doivent être faciles

Moodle connaît sa version (en plus de la version de modules complémentaires) et des mécanismes ont été implémentés dans Moodle afin d’automatiser le passage vers une version plus récentes. Par exemple, renommer des tables dans la base de données ou ajouter des champs. Pour mettre à jour son installation de Moodle, un administrateur n’a qu’à exécuter la commande « cvs update -d » et visitez la page d’accueil de son site Web pour compléter la mise à niveau.

Moodle doit être modulaire pour croitre

Plusieurs des fonctionnalités de Moodle sont implémentées de façon modulaire. Parmi ces fonctionnalités, on retrouve les thèmes, les activités, les traductions, les schémas de base de données et les formats de cours. Cette approche permet à n’importe qui d’étendre les fonctionnalités existantes de Moodle ou même de les distribuer séparément.

Moodle doit pouvoir être utilisé en conjonction avec d’autres systèmes

Moodle conserve l’ensemble des fichiers d’un cours dans un unique répertoire sur le serveur. Cette approche permet à un administrateur système d’offrir de façon transparente aux professeurs diverses technologies de transfert de fichiers (ex : AppleTalk, SMB, FTP, WebDAV, etc.). Le module d’authentification permet à Moodle d’utiliser un serveur LDAP, IMAP, POP3, NNTP ou d’autres base de données afin d’identifier les usagers. Il reste cependant du travail à accomplir. Parmi les fonctionnalités futures à implémenter, on trouve l’importation et l’exportation des données de Moodle en utilisant des formats basés sur le XML, inclant IMS et SCORM, ou encore un usage étendue des feuilles de style pour la mise en forme de l’interface afin de permettre l’intégration avec d’autres sites.