Créer un PDF Recommander Imprimer

Appréhender les bases du développement avec le framework Joomla !

(1 vote)
  • Document type
    Tutoriel PHP
  • Niveau
    Débutant
  • Dernière modification
    17.12.11
  • Version PHP
    4.x, 5.x, 5.3.x
  • Créé par
    Garstud
  • Version MySQL
    4.x, 5.x

Pré-requis

Pour se lancer dans la programmation Joomla !, les bases nécessaires ne sont pas très complexes, mais sans la connaissance des points ci-dessous, votre 1er développement pourrait devenir difficile, voir se transformer en mission impossible ...

 

Administrer un serveur Web

Ce pré-requis est cité pour ne pas être oublié, car si il fera sourire certains d'entre vous, il vaut mieux rappeler aux développeurs non-web que la « programmation Web » passe obligatoirement par un minimum de compréhension de l'architecture Web !

Selon votre système, choisissez votre logiciel de serveur web incluant Apache, MySQL et PhpMyAdmin :

Note : Sous Windows , vous pouvez aussi choisir des outils comme XAMPP ou EasyPHP à la place de WAMP.

Attention : une version PHP et MySQL minimale est requise pour Joomla !

  • en Joomla! 1.5 : PHP 5.2.0 et MySQL 4.1
  • en Joomla! 1.6, 1.7, 2.5+ : PHP 5.2.4 et MySQL 5.0.4

Seul Joomla! 1.7 et suivants est compatible MySQL 6 !

> En savoir plus : http://www.joomla.org/technical-requirements.html

 

Langage SQL et administration MySQL

Si la compréhension du langage SQL n'est pas réellement nécessaire pour développer de petites extensions, sa connaissance est un plus, et devient nécessaire lorsque l'on s'attaque a des composants un peu complexe, ou qui gère leur propre table de données.

Dans ce cas, la maitrise d'un outil comme PhpMyAdmin est un plus.

> En savoir plus : http://fr.wikipedia.org/wiki/PhpMyAdmin

 

Langage PHP

Joomla ! est entièrement écrit en PHP, connaitre la programmation PHP est un pré-requis indispensable !

Si vous ne connaissez pas du tout PHP, nous vous conseillons de d'abord développer des petits scripts PHP, avant de vous mettre à la programmation Joomla!

 

La POO

Joomla ! Implémente les concepts de la Programmation Orientée Objet. Il n'est pas nécessaire d''être un dieu en POO, mais la compréhension sommaire de certains concepts vous évitera des migraines, notamment :

  • l'encapsulation,
  • les propriétés et les méthodes,
  • l'héritage.

 

Le CRUD

Un acronyme bien barbare, mais qui n'est pas très complexe a appréhender.

Le CRUD signifie « Create, Read, Update, Delete ». Ce concept désigne toutes les opérations qu'un développeur d'applications doit appréhender pour manipuler les données.

 

Le « design pattern » MVC

Ce concept (design pattern en anglais) est une philosophie de développement visant a segmenter votre code source en 3 parties : Modele, Vue Controleur

> en savoir plus : Développer avec le MVC de Joomla!

 

Le « design pattern » Publish & Subscribe

Ce concept n'est pas réellement nécessaire pour appréhender le développement Joomla !

En fait, il n'est nécessaire que pour les extensions nommées « Plugins ».

Donc ce concept n'est pas nécessaire pour le développement d'extension Joomla! comme les Modules ou les Composants ... quoi que ! ( lire l'article " Des Plugins Joomla pour "ouvrir" son composant" )

 

Les Bases de la programmation Joomla!

Une fois les pré-requis obtenus, il est bon de connaitre les spécificités de l'architecture Joomla !

 

Les API

Afin de ne pas réinventer la roue, Joomla ! contient tout un lot d'API (Application Program Interface) pour utiliser des bibliothèques reconnues dans le monde du développement Web :

  • Mootools : framework javascript
  • AJAX : API javascript pour les échanges asynchrones au sein d'une page
  • LDAP : Protocole de communication avec un annuaire d'authentification LDAP
  • Webservices (XML-RPC) : appel de services entre 2 sites ou applications web
  • PHPmail : pour envoyer des emails en PHP
  • ....et bien d'autres

Toutes ces API sont intégrées dans Joomla ! dans les dossiers /librairies et /includes

 

Le Framework Joomla

Il est structuré autour d'une architecture en 3 couches :

 

  • une couche permettant de gérer des extensions fournies par la communauté des développeurs (Module, Composant, Templates).
  • Une couche incluant le niveau applicatif, afin que qualifier le comportement de Joomla selon l'application en cours d'exécution (Frontend, Backend, Installation, ...)
  • la couche du socle technique qui contient tout le « Core » de Joomla !, les bibliothèques additionnelles et les Plugins qui si ils sont communément reconnues comme étant des extensions additionnelles, leur place est bien localisée aux cotés du Framework. Ils sont effectivement très fortement liés à la gestion des évènements du système fourni par le framework ... indépendamment de l'application qui est en cours d'exécution.

 

L'avenir du Framework

L'arrivée de J1.6 et suivants à apporter des modifications d'architecture du framework qui ne sont pas visibles au prime abord pour la majorité des développeurs.

Ces modifications ne concernent pas Joomla ! 1.5.

Les versions 1.6, 1.7 et 2.5 de Joomla ! Sont, elles, concernées par la séparation du CMS et framework de Joomla !

Désormais le framework est une brique logicielle autonome. Il porte désormais le nom de « Joomla! Platform »

Afin de ne pas mélanger Joomla ! (CMS) et le framework. Ce dernier utilise une numérotation de version différente. Le numéro de version est en 2 parties :

  • un premier numéro désignant l'année de sortie : 11 pour 2011, 12 pour 2012 ...
  • un second numéro, derrière le point de séparation qui concerne le numéro de la version dans l'année en cours : 1, 2, 3, 4 (il est normalement prévu de sortir une version par trimestre)

Actuellement, nous venons de passer de 11.2 à 11 .3 et la prochaine version qui arrivera dans le cours du 1er trimestre 2012 sera nommée « version 12.1 »

Le Joomla ! Platform est donc utilisable (et téléchargeable) sans Joomla ! Pour tout développeur qui souhaiterait développer une application Web en utilisant les préceptes apportés par la philosophie Joomla !

> Voir le tutoriel : "Implémenter ma 1ere Joomla! Application autonome"

 

Voila, si vous avez tout lu ... et tout compris, vous êtes bien parti pour réussir vos développement sous le framework Joomla !

Ajouter un Commentaire


Code de sécurité
Rafraîchir

Recherche

Télécharger Joomla

telecharger joomla télécharger Joomla 1.5.26 télécharger Joomla 2.5.4 télécharger Joomla Platform 12.1

Connexion

Espace contributeurs