Documentation sur le Joomla! Framework Development

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Documentation sur le Joomla! Framework Development

    Bonjour,
    J'essaie de trouver de la doc / tuto / etc. sur le Joomla! Framework Development.
    L'idée d'utiliser ce framwork me tente, histoire de doubler les bénéfices (applications persos / compréhension du core du CMS)

    C'est pas folichon ... je n'ai trouvé qu'une vidéo d'un ancien JDays de 2013, et les quelques infos

    Il existe quelque chose pour se mettre en selle ?


  • #2
    Le Framework Joomla est une collection de bibliothèques PHP indépendantes permettant aux développeurs de créer des applications web en dehors du CMS Joomla. Il offre une structure modulaire et réutilisable, permettant de développer des applications spécifiques sans la nécessité d’installer Joomla en tant que CMS.

    Site officiel :
    The Joomla! Framework provides a structurally sound foundation on which to build applications in PHP, which is easy to adapt and extend. Let's find out more!


    Ce framework a été conçu pour être léger, extensible et respecter les bonnes pratiques du développement PHP moderne. Il repose sur des composants autonomes que les développeurs peuvent intégrer dans leurs projets, que ce soit pour la création d'extensions Joomla ou d'applications indépendantes.

    1. Pourquoi utiliser le Framework Joomla ?

    Contrairement au CMS Joomla, qui est une solution complète de gestion de contenu, le Framework Joomla permet de :
    • Développer des applications web personnalisées sans dépendre du CMS.
    • Réutiliser des composants Joomla (gestion de base de données, envoi d’e-mails, manipulation d’images, etc.) dans des projets indépendants.
    • Respecter les standards PHP modernes, notamment l’utilisation de Composer pour la gestion des dépendances et l’implémentation des interfaces PSR (PSR-4 pour l’autoloading, PSR-7 pour la gestion des requêtes HTTP, etc.).

    Profiter d’un code bien structuré et d’une base robuste, tout en ayant la possibilité de choisir les composants nécessaires sans surcharge inutile.

    2. Les principales bibliothèques du Framework Joomla

    Le Framework Joomla est divisé en plusieurs packages accessibles via Composer, chacun étant spécialisé dans une tâche précise :
    • Application : gestion des requêtes et des réponses HTTP.
    • Database : abstraction des bases de données pour faciliter leur manipulation.
    • DI (Dependency Injection) : gestion des dépendances pour une meilleure modularité.
    • Filesystem : manipulation des fichiers et des dossiers.
    • Http : gestion des requêtes et réponses HTTP, compatible PSR-7.
    • Log : gestion des logs et erreurs avec différents niveaux de sévérité.
    • Mail : envoi d’e-mails avec gestion des pièces jointes et différents formats.
    • Session : gestion avancée des sessions utilisateurs.
    • Uri : gestion des URL et des chemins dans une application.
    • Event : système d’événements pour permettre une meilleure extensibilité.

    3. Documentation et ressources utiles

    La documentation du Framework Joomla est disponible à l’adresse suivante :

    https://developer.joomla.org/framework/documentation.html

    Mais comme indiqué, il faut désormais
    se tourner sur les exemples données sur Github
    A PHP application framework. Joomla! Framework has 49 repositories available. Follow their code on GitHub.


    a) Introduction et installation

    Pour commencer avec le Framework Joomla, vous devez utiliser Composer. L’installation de base se fait via la commande suivante :

    Code:
    composer require joomla/application
    Chaque package peut être installé séparément, selon vos besoins. La liste complète des packages disponibles se trouve sur Packagist :



    b) Tutoriels et guides d’utilisation

    Le Joomla Developer Network propose une documentation technique détaillée et plusieurs guides d’introduction :

    Welcome to the Joomla! Developer Network! A resource for anyone looking to build or maintain software based on the Joomla! platform


    Pour mieux comprendre le fonctionnement des différents composants, les pages suivantes sont intéressantes :

    Gestion des bases de données avec le Framework Joomla :



    Utilisation du package HTTP pour les requêtes API :



    c) Développement avancé

    Si vous souhaitez aller plus loin dans le développement avec le Framework Joomla, voici quelques ressources complémentaires :

    Le dépôt GitHub du Framework Joomla, qui contient le code source des bibliothèques :

    A PHP application framework. Joomla! Framework has 49 repositories available. Follow their code on GitHub.


    Le forum Joomla dédié aux développeurs, pour poser des questions et échanger avec la communauté

    4. Comparaison avec d’autres frameworks

    Le Framework Joomla se positionne comme une alternative légère à des frameworks plus complets comme Laravel ou Symfony. Son principal avantage est qu’il permet aux développeurs Joomla de réutiliser leurs compétences et connaissances tout en travaillant sur des projets indépendants du CMS.

    Forces
    + Facile à prendre en main pour les développeurs Joomla.
    + Utilisation modulaire avec Composer.
    + Respecte les standards PHP modernes (PSR).
    + Idéal pour les microservices et applications web spécifiques.




    Limites
    - Moins riche en fonctionnalités que Laravel ou Symfony.
    - Moins d’outils intégrés pour le développement rapide.
    - Communauté plus restreinte en dehors de Joomla.



    Le Framework Joomla est une solution intéressante pour développer des applications PHP modulaires et performantes. Il permet de bénéficier des atouts de Joomla sans être lié au CMS et de concevoir des outils adaptés à des besoins spécifiques.

    Si vous souhaitez vous lancer, je vous recommande de commencer par les tutoriels officiels et d’explorer le code source sur GitHub pour mieux comprendre le fonctionnement des différents composants.

    Enfin, si vous souhaitez développer avec le cms, il y a eu une séparation de la documentation entre la doc "utilisateurs" et la doc "developpeurs" cms Joomla.
    Vous pouvez déjà consulter cette doc dev sur : https://manual.joomla.org/
    Dernière édition par daneel à 16/03/2025, 13h43
    wd_newbie, lomart et cavo789 aiment ceci.
    Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

    Commentaire


    • #3
      Merci pour ces infos, j'en avais parcourues déjà, mais pas toutes,

      Ce qui est un frustrant quand même c'est le manque de "formations" un peu comme on ne trouve pour Laravel ou Symphony, juste histoire de ne pas partir complètement à côté.

      Comme pour les deux liens cités en lien ci-dessus on tombe souvent sur des pages avec :

      Using the Joomla Framework Database Package
      De Joomla! Documentation

      Il n’y a pour l’instant aucun texte sur cette page. Vous pouvez faire une recherche sur ce titre dans les autres pages, ou rechercher dans les journaux associés, mais vous n’avez pas la permission de créer cette page​​
      .

      et
      Using the Joomla HTTP Client
      De Joomla! Documentation
      Il n’y a pour l’instant aucun texte sur cette page. Vous pouvez faire une recherche sur ce titre dans les autres pages, ou rechercher dans les journaux associés, mais vous n’avez pas la permission de créer cette page.
      Il me semblait avoir trouvé des exemples de mise en œuvre du framework, mais sans remettre la main dessus (ou alors je me trompe)

      En tout cas merci pour ton retour
      (il me semble que je vois souvent "danel" sur ce forum ... tes retours divers sont une mine d'or sur forum.joonla.fr )

      Commentaire


      • #4
        Envoyé par wd_newbie Voir le message
        Merci pour ces infos, j'en avais parcourues déjà, mais pas toutes,

        Il me semblait avoir trouvé des exemples de mise en œuvre du framework, mais sans remettre la main dessus (ou alors je me trompe)

        Désolé, mes infos datent un peu, les pages sont désormais intégrées dans chaque readme (avec exemple et méthode d'installation ) :
        Par exemple avec le "database package" : https://github.com/joomla-framework/...base-package--

        Les packages du framework sont suivis et régulièrement mis à jour par la communauté. Par exemple une nouvelle version du package "http" a été publié il y a 4 jours.
        On y retrouve la participation des développeurs qui gèrent actuellement les packages mais également des premières contributions comme Alexande Elisé, développeur et
        auteur d'une collection d'exemples avec postman pour utiliser joomla en web services : https://github.com/joomla-framework/...ases/tag/3.1.0

        Si tu souhaite échanger, il y a le forum mais aussi mattermost ( en anglais )


        Merci aussi pour ton message, et ravi si mes retours peuvent être utiles sur le forum.


        Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

        Commentaire


        • #5
          Regarde la documentation officielle et les tutoriels sur Joomla.org.

          Commentaire

          Annonce

          Réduire
          Aucune annonce pour le moment.

          Partenaire de l'association

          Réduire

          Hébergeur Web PlanetHoster
          Travaille ...
          X