MVC / Frameworks PHP

812 vues

Publié le

Présentation des frameworks et design MVC en PHP 5

Publié dans : Ingénierie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
812
Sur SlideShare
0
Issues des intégrations
0
Intégrations
155
Actions
Partages
0
Téléchargements
39
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

MVC / Frameworks PHP

  1. 1. Jean-Marie Renouard LightPath 2014©
  2. 2. Le logo PHP est du domaine public http://commons.wikimedia.org/wiki/File:PHP-logo.svg Ce document est licencié sous licence ◦Attribution-NonCommercial-ShareAlike ◦CC BY-NC-SA Plus de détails: http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ LightPath 2014© - http://www.jmrenouard.fr 2
  3. 3. MVC Zend Framework Code Igniter PEAR PHPClasses Autres frameworks LightPath 2014© - http://www.jmrenouard.fr 3
  4. 4. LightPath 2014© - http://www.jmrenouard.fr 4
  5. 5. Principe de découpage d’application: ◦M : Modèle ◦V : Vue ◦C: Contrôle Paradigme directeur: ◦Séparation du « métier » ou « fonctionnel » ◦Séparation de la présentation des données Adapté à la logique de publication multicanaux. LightPath 2014© - http://www.jmrenouard.fr 5
  6. 6. LightPath 2014© - http://www.jmrenouard.fr 6
  7. 7. Pièce centrale Récupération des requêtes client Appel des bons modèles et services Appel de la couche Vue avec les données collectées LightPath 2014© - http://www.jmrenouard.fr 7
  8. 8. En charge de la mise en forme. Peut-être spécifique par type de client Préservation des services et des rendus. LightPath 2014© - http://www.jmrenouard.fr 8
  9. 9. Conteneur du « métier » de l’application. Indépendance de la présentation. Coeur de l’application Point d’entrée vers les données persistantes. LightPath 2014© - http://www.jmrenouard.fr 9
  10. 10. LightPath 2014© - http://www.jmrenouard.fr 10
  11. 11. Une implémentation d’un MVC Utilitaires en ligne de commande Intégration complète au Zend Studio Taille de code : 3,5 millions lignes LightPath 2014© - http://www.jmrenouard.fr 11
  12. 12. 82 APIs différentes ◦Aide à la gestion des données ◦Aide à la création de formulaire ◦Aide à l’interrogation de données ◦Aide à la manipulation de données Jeu de brique à assembler ! LightPath 2014© - http://www.jmrenouard.fr 12
  13. 13. Uniformité du code. Très bon niveau de documentation. Large communauté. Coordination pour une API consistante LightPath 2014© - http://www.jmrenouard.fr 13
  14. 14. LightPath 2014© - http://www.jmrenouard.fr 14
  15. 15. Une implémentation d’un MVC Pas de ligne de commande Simple à mettre en oeuvre Taille de code : 80000 lignes LightPath 2014© - http://www.jmrenouard.fr 15
  16. 16. 30 classes 20 classes utilitaires Simple à comprendre Simple à mettre en oeuvre Jeu de brique à assembler ! LightPath 2014© - http://www.jmrenouard.fr 16
  17. 17. Uniformité du code. Très bon niveau de documentation. grande communauté. LightPath 2014© - http://www.jmrenouard.fr 17
  18. 18. LightPath 2014© - http://www.jmrenouard.fr 18
  19. 19. Infrastructure de diffusion de classes Taille de code : 16 millions de ligne LightPath 2014© - http://www.jmrenouard.fr 19
  20. 20. Projet de mise à disposition de composant Intégration à PHP 2 utilitaires ligne de commande : ◦pear ◦pecl PEAR: Pures classes PHP PECL: Classe PHP avec du code natif C LightPath 2014© - http://www.jmrenouard.fr 20
  21. 21. Extensions PHP annexes Les anciennes APIs PHP y sont maintenues. 265 packages ◦APC: Cache de code PHP ◦Memcache: support du serveur Mencache ◦… LightPath 2014© - http://www.jmrenouard.fr 21
  22. 22. Classes PHP annexes 569 packages de classes ◦XML_RPC: support des appels XML RPC ◦Archive_Tar: support du format tar ◦Mail: support avancée des emails ◦DB/MDB2: support des bases de données ◦… LightPath 2014© - http://www.jmrenouard.fr 22
  23. 23. Code de bonne qualité Procédure de validation du projet Concurrence de fonctionnalités possibles Projet communautaire Documentation parfois légère Maintenance faible de certains composants LightPath 2014© - http://www.jmrenouard.fr 23
  24. 24. LightPath 2014© - http://www.jmrenouard.fr 24
  25. 25. Infrastructure de diffusion de classes Projet de mise à disposition de composant Pas d’utilitaire d’intégration http://www.phpclasses.org LightPath 2014© - http://www.jmrenouard.fr 25
  26. 26. Code de qualité aléatoire Défaut de maintenance sur certaines classes Documentation parfois légère Qualité par vote des utilisateurs Plusieurs milliers de classes ! LightPath 2014© - http://www.jmrenouard.fr 26
  27. 27. LightPath 2014© - http://www.jmrenouard.fr 27
  28. 28. ezComponents: ◦http://ezcomponents.org CakePHP: ◦un autre framework MVC ◦http://cakephp.org ◦442 milliers de ligne Smarty ◦Moteur de rendu officiel de PHP ◦http://smarty.php.net ◦66000 ligne de code Symphony ◦Un autre framework MVC ◦20000 lignes de code LightPath 2014© - http://www.jmrenouard.fr 28
  29. 29. LightPath: ◦Société de conseil et d’ingénierie ◦Formations, Conseil, Audit et mise en oeuvre ◦jmrenouard@lightpath.fr Jean-Marie RENOUARD ◦jmrenouard@gmail.com ◦Twitter: @jmrenouard ◦http://www.jmrenouard.fr LightPath 2014© - http://www.jmrenouard.fr 29

×