Framework Joomla! 1.6

Documents pareils
S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation en Logiciels Libres. Fiche d inscription

Devenez un véritable développeur web en 3 mois!

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Découvrir le CMS. et l utiliser dans une approche pro!

PHP 5. avancé. 3 e édition. Eric Daspet. Cyril Pierre de Geyer. Préface de Damien Seguy

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Drupal un CMS orienté mé2er. Romain JARRAUD Mathieu GROS

Pratique et administration des systèmes

L art d ordonnancer. avec JobScheduler. François BAYART

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.

10. Base de données et Web. OlivierCuré

PHP 5.4 Développez un site web dynamique et interactif

Projet de développement

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

FORMATION TALEND. Page 1 sur 9

NBS System et Zend Technologies Découvrez la scalabilité sans limite pour vos applications PHP grâce au Zend Cloud

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

SharePoint 2013 Développez en.net pour personnaliser SharePoint (Apps, REST, CSOM et Azure)

Formation : WEbMaster

Point sur les solutions de développement d apps pour les périphériques mobiles

Programme ASI Développeur

Outils de développement collaboratif

SYSTÈMES D INFORMATIONS

RELEASE NOTES. Les nouveautés Desktop Manager 2.8

Introduction à. Oracle Application Express

Joomla! Création et administration d'un site web - Version numérique

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Introduction MOSS 2007

Déployer une application Web avec WebMatrix et Ma Plateforme Web

Hébergement de site web Damien Nouvel

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

W4 - Workflow La base des applications agiles

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Présentation du relais HTTP Open Source Vulture. Arnaud Desmons Jérémie Jourdin

MANUEL D INSTALLATION D UN PROXY

Les Utilisateurs dans SharePoint

ez Publish Cloud Edition Présentation

Valorisez vos actifs logiciels avec Rational Asset Manager. Jean-Michel Athané, Certified IT Specialist IBM Rational Software

les techniques d'extraction, les formulaires et intégration dans un site WEB

SQL Server Installation Center et SQL Server Management Studio

PostgreSQL, le cœur d un système critique

PHP. PHP et bases de données

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Bien architecturer une application REST

Projet Viticulture - TP 3 : bases de données distantes BTS Services informatiques aux organisations

Drupal, pour quel usage? Comment se positionne Drupal? Les fonctionnalités de Drupal et de son écosystème. L'architecture technique et logicielle Le

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Mise en oeuvre d'une base de données mono-utilisateur avec SQLite

TD4 - Supervision et métrologie des réseaux. 1 Supervision des applications et services réseaux et des ressources locales

Mysql. Les requêtes préparées Prepared statements

palais des congrès Paris 7, 8 et 9 février 2012

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

PHP et LeMonde.fr : passé, présent et avenir Olivier Grange-Labat <grange@lemonde.fr>

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

Alfstore workflow framework Spécification technique

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Alexandru V. Vlad RADIAN Solution Architect, Lead IT developer

Gérer une forte charge avec ez Publish Obtenir la meilleure réactivité de publication. Solutions natives ez. Solution spécifique.

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Construire un réseau social avec Symfony Xavier Lacot Clever Age. Symfony Live 11 et 12 juin 2009 Clever Age Xavier Lacot

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Catalogue des Formations

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

Note de synthèse. Développement web sur le CMS Prestashop. Stage du 17 mai au 25 juin Entreprise decoratzia.com 15 rue Erlanger Paris

SPIP. Gestion de la performance dans SPIP. Préoccupa)on historique

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Webinar. Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL. avec la participation de

CASE-LINUX MAIL - ROUNDCUBE

DotNet. Plan. Les outils de développement

Créer un rapport pour Reporting Services

Karim EL KHALIFA Web developer

SPT Description du cours NORAMSOFT SPT2013. SharePoint 2013 pour développeurs

Francis Mignault. ! Coauteur : Expert Oracle Application Express. ! Membre du Oracle APEX Advisory Board apex.oracle.com/vote

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

InstallShield 2014 FICHE TECHNIQUE. Création de programmes d installation pour Microsoft Windows

Table des matières. Date : Version : 29/06/ Objet : OpenVas 6.0

Cisco Certified Network Associate

Intégration d'un moteur de workflow dans le SI : Dématérialisation des Ordres de misson

Fiche Technique. Cisco Security Agent

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

12/07/13 Oracle Application Express 4.2

BTS S.I.O PHP OBJET. Module SLAM4. Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais

Datalift. + + Architecture Modularité Déploiements. d j = 09/04/2015 Laurent BIHANIC

Commerce Server 2009 R2

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

En date du 11 décembre 2008

Module BD et sites WEB

Mercredi 15 Janvier 2014

Transcription:

Framework Joomla! 1.6 Développeurs «Framework J!1.6» par Marc STUDER & Christophe DEMKO sous licence creative commons by sa 1 / 29

Objectifs Présentation orientée développeurs PHP 1. Vulgariser la philosophie du framework Joomla 2. Appréhender les technologies de ce framework 3. Bases programmation Orienté Objet Fournir les bases pour : Initier un développement J!1.6 Migration d'une extension de J!1.5 vers J!1.6 2 / 29

Sommaire 1. Concepts présents dans Joomla! 2. Les nouveautés Joomla!1.6 3. Evolution des bibliothèques 4. Evolution du MVC 5. Les objets du Framework 6. Manipulations des ACL 7. Migration des apps J!1.5 8. L'arrivée de Joomla!1.6 3 / 29

Les concepts Joomla! 4 / 29

Concepts Joomla La requête HTTP Joomla http://www.monsite.fr/index.php?option=xxx&id=xxx index.php comme porte principale sécurité et homogénéité Cinématique Joomla 1. Le serveur web reçoit une requête HTTP 2. Le noyau de Joomla est chargé (framework et classes) 3. instanciation de l'objet JApplication 4. Initialisation de l'objet JApplication 5. calcul le chemin URI d'appel 6. exécution de l'appel de l'uri 7. interprête le template et les documents à charger 5 / 29

Concepts Joomla Les Applications Joomla! 6 / 29

Architecture du Framework Les 3 couches du framework Peu de changements entre J!1.5 et J!1.6 7 / 29

Design Pattern MVC Model-View-Controller pour les composants 1.Actions utilisateurs soumises au Contrôleur 2.Changement dans le modèle 3.Choix et chargement de la Vue 4.La Vue interroge le Modèle 5.Le modèle lui envoie les données 6.La vue est générée et renvoyée 8 / 29

Framework Joomla est entièrement structuré sur un Framework Orienté Objet Héritage des classes Design Pattern MVC, Publish & Subscribe(Plugins) Encapsulation d'objets généraux (données Joomla : users, articles ) de services techniques (HTTP, accès bases de données et de la persistance, envoi d'email, WebServices ) Contrôle de sécurité, gestion du cache, routing SEF... Faciliter, fiabiliser, ouvrir, sécuriser... le travail du développeur d'extensions 9 / 29

Nouveautés J!1.6 10 / 29

Nouveautés J!1.6 Quelles nouvelles fonctions vont impacter le développement d'extensions? 1.ACL Règles et Groupes personnalisables Utilisateurs multi-groupes 2.Catégories multi-niveaux Manipuler un arbre de catégorie 3.Installation (update et discover mode) Des extensions Et aussi des Libraries! 11 / 29

Nouveautés J!1.6 Access Control List Groupes et niveaux d'accès modifiables Rules au niveau Catégorie et Contenu 12 / 29

Nouveautés J!1.6 Catégories multi-niveaux Plus de section! Manipulation d'arbre de Catégorie (Tree) 13 / 29

Nouveautés J!1.6 Installation et Gestionnaire d'extension Discover : installation pré-déployée Update : détection des mises à jour Warnings : détection des problèmes et conflits 14 / 29

Nouveautés du FWK J!1.6 Du coté des bibliothèques Dossier /libraries Quels changements sur les implémentations? /cache (APC, Memcache, eaccelerator, xcache) /client (LDAP, FTP) /database (mysql, mysqli), mais implémentation des objets modifiée etc Dossier /libraries/joomla /access, /application, /base etc 15 / 29

Nouveautés du FWK J!1.6 Les Bibliothèques dans Joomla Numérotées pour comparaison upgradable et extensible Inclus lors de l'installation initiale : JS Mootools en version 1.2 XML-RPC est désormais intégré comme bibliothèque du framework (n'est plus une JApplication) etc Et aussi des bibliothèques obsolètes 16 / 29

Objets et implémentation Framework J!1.6 17 / 29

Nouveautés du FWK J!1.6 Evolutions du MVC entre 1.5 et 1.6 JController JControllerForm/JModelForm JModelList JModelItem Autorisations Verrouillage/Déverrouillage Formulaire/Validation (JForm/Plugins) Définition de la requête SQL Gestion des listes Pagination automatique 18 / 29

Nouveautés du FWK J!1.6 Package Form : JForms Définition par fichier xml Validation par règles Possibilité de définir nouveaux types Simplification des vues Gestion des champs par groupes 19 / 29

Nouveautés du FWK J!1.6 Composant com_categories Générique Plusieurs arbres/extensions Champs extensibles (Composant/category.xml/Plugins) Composant com_comments Générique En cours de stabilisation 20 / 29

Nouveautés du FWK J!1.6 Les nouveautés du package Database JDatabaseQuery JTable JTableNested JTableAsset JTableCategory JTableExtension JTableUserGroup JTableViewLevel 21 / 29

Nouveautés du FWK J!1.6 Les nouveautés du package HTML : JHtml JHtmlSliders/JHtmlTabs JHtmlAccess JHtmlBehavior JHtmlRules JHtmlCategory JPagination 22 / 29

Nouveautés du FWK J!1.6 Fichiers de langues Extensions Utilisation de parse_ini_file et parse_ini_string Évolution de.menu.ini vers.manage.ini Mise à jour/découverte File/Library/Package Méthode preflight/postflight/install/update/uninstall 23 / 29

Les ACL Objets et manipulations des ACL JAccess/JRules Autorisations par groupes Héritage des autorisations (groupes/categories,...) JUser access.xml Priorité à l'interdiction Appartenance à plusieurs groupes Une méthode d'autorisation 24 / 29

Migration depuis J!1.5 25 / 29

Migrer ses développement J!1.5 Contraintes de portabilité des apps J!1.5 vers J!1.6? Les classes J!1.5 sont conservées (Deprecated) Quelles modifications des sources obligatoires? 1.La syntaxe et les Clés des fichiers de langues.ini à modifier 2.Le script com_install à remplacer par le mécanisme preflight/ (install-update-unistall)/postflight 3.structure des manifest XML légèrement modifiée! Pré-requis des serveurs Web Pour Joomla! 1.6 PHP 5.2+ MySQL 5.0.4+ 26 / 29

Migrer ses développement J!1.5 Pas de mode legacy avec J!1.5 : Les extensions doivent être Native 1.6!!! Il est prévu un «Migration script from 1.5 to 1.6» Uniquement pour les composants standards Mais développement pas encore commencé! 27 / 29

La Roadmap J!1.6 «Prévisions» sur la sortie de Joomla! 1.6 Version actuelle fournie par la Core Team : Alpha 2 Puis suivrons les versions Beta : Combien de beta? Andrew Eddy says : "As many Beta's it takes to stabilize the stack, but hopefully only 3 or 4!" Pour Joomla 1.6, des Alpha bien avancés et peu de Beta! Prochain stade : Beta 1 pour le? Et la «RC1» (Release Candidate 1) La Beta 1 devrait n'être qu'une phase de validation RC1, c'est pour quand? avant fin 2010? 28 / 29

Questions-réponses Avez-vous des questions? + de questions : Espace Développeurs sur forum.joomla.fr Forum Joomla.fr > Développeurs Cette présentation sera disponible en téléchargement sur le site www.joomladay.fr (avant fin mars) 29 / 29