Bilan de l'u+lisa+on du Framework Symfony2



Documents pareils
Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

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

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

RESUME DE CARRIERE. Alice JULIENNE. 23 ans Nationalité Française Développeur Web Front-End. Compétences

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

Les méthodes Agiles. Introduc)on aux méthodes Agiles Exemple : Scrum

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

Paul FLYE SAINTE MARIE

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

Découvrir Drupal. Les meilleurs thèmes et modules Drupal (présenta5on démo)

Évolu>on et maintenance

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

Léa Dumas Développeuse front-end Intégratrice //

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Jérémie Grodziski. Architecte Logiciel. Présenta2on Domaines et Compétences Contact Références Modes d interven2ons Exper2se Technologique

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

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

Loïc Rossignol Ingénieur Consultant

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

Savoir- Faire Offres mé1ers Offres technologiques

Sites Internet : les. tendances. Jeudi 30 janvier 2014 Bordeaux L AGENCE CONNECTÉE À L ENTREPRISE

Catalogue de FORMATIONS 2015

Vers un Système unique d informa4on na4onale de médicaments au Mexique, dans le cadre du suivi de l OMD 8.13

MTI820 Entrepôts de données et intelligence d affaires. Gouvernance des données et ges1on des données de référence

May Lopez PETIT COUTEAU SUISSE CRÉATIF. May Lopez Petit couteau suisse créatif

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

Les différents parcours en S4

CATALOGUE DES FORMATIONS LANGUES

Baromètre Direct Assurance des cyberconsommateurs

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

Catalyse IT. Innovation Digital/Numérique

Développeur - Conseiller - Formateur web

SÉLECTIONNER LES MEILLEURS CANDIDATS : L APPORT DES OUTILS D ÉVALUATION AU RECRUTEMENT ET À LA MOBILITÉ INTERNE

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É PHP. 27 ans - 6 ans d'expérience

Prépara&on Opéra&onnelle à l Emploi de BASYCA (POEB) BASYCA SAS FRANCE - Anzize BADAROU

Intégrateur Web HTML5 CSS3

PHP et le Cloud. All rights reserved. Zend Technologies, Inc.

Design & conception de site web optimisé SEO. augmentez la conversion sur vos sites

Notre processus d embauche

Le contrôle fiscal anno 2013

Webmaster / Webdesigner / Wordpress

Consultants, trouvez de nouveaux marchés grâce aux médias sociaux animé par Valérie March au Salon des micro- entreprises 2012

Profil. Formations Certifications. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience.

LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

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

INGÉNIEUR - DÉVELOPPEUR SENIOR PHP. 28 ans - 8 ans d'expérience

Karim EL KHALIFA Web developer

H2PS engage ses compétences auprès des entreprises et des parculiers par la mise en place de soluons d accompagnements et de services.

LA DIGITALISATION DE LA RELATION CLIENT

Nouveautés de Drupal 8. Léon

Rapport de stage Clément MOYSAN

Ma stack d ou,ls agiles, tout un programme! OU COMMENT BÉNÉFICIER DES TECHNOLOGIES GRAND PUBLIC POUR AMÉLIORER ET OPTIMISER MES OUTILS LOGICIELS.

Mauvaise informa.on agricole = Cycle de pauvreté Producteurs. Commerçants. Gouvernements. Transformateurs

Formations qualifiantes pour demandeurs d emploi

Documentation de conception

Knowledge Management D. Chauvel, 13 Novembre Journée Mondiale de la Qualité Université Aix Marseille

Les frameworks, essentiels dans l'écosystème PHP

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

Les 10 étapes clés pour trouver des clients par internet

proximite + qualite + competitivite

Entreprise Chiffres clefs

Nouveautés joomla 3 1/14

Comment u)liser les réseaux sociaux?

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

Présentation Level5. Editeur de Logiciels. «If it s not monitored, it s not in production» Theo Schlossnagle #velocityconf

Programme de formation

Dossier de Presse. Ergonomie. E-commerce. Portails internet. Applications Facebook. Logiciels «prêts à adapter» Logiciels sur mesure

Cours en ligne Développement Java pour le web

TRANSFORMATION DIGITALE : COMMENT INDUSTRIALISER ET PÉRENNISER LA MÉTHODE AGILE À PLUS GRANDE ÉCHELLE

Programmation Web. Madalina Croitoru IUT Montpellier

Développement d une application ASP.NET avec Base de données SQL Server

WordPress : principes et fonctionnement

Présentation du Framework BootstrapTwitter

Technologies Web avancées. ING1 SIGL Technologies Web avancées

42 Formations Web & Open Source

Les termes du cloud CUMULO NUMBIO 2015 O. COLLIN

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

Un site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012

Présentation de solutions de Progiciels de Gestion d'epn Forum des Usages Brest 2010

CURRICULUM VITAE. Ingénieur Génie Logiciel

Optimisation de la supervision by Somone. - Présentation Générale -!

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

Formation en Logiciels Libres. Fiche d inscription

Formation : WEbMaster

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Du point de vue des entreprises, faut-il privilégier les Frameworks PHP aux CMS Open pour la création de sites internet?

Formation : Langues : Types d Intervention et Secteurs d Activité :

Réunion de rentrée Licence PER Programma3on en environnement répar3. Année universitaire

Speed up your business

Devenez un virtuose de Google. Atelier en informa5que présenté par Dominic P. Tremblay

Cabinet de Conseil STRATÉGIE MANAGEMENT ORGANISATION JURIDIQUE FORMATION AVEC BW CONSULTANTS CHOISISSEZ DE GARANTIR VOTRE DEVELOPPEMENT

Système d Information du CNRST - SIC -

>>>>>>>>>> roger atasi <<<<<<<<<<<<<<< chez , boulevard Victor Hugo Clichy - Tél :

RESSOURCES INFORMATIQUES UFR IMAG ANNEE Présentation service informatique UFR IMAG année 2010/2011 1

Ingénieur R&D en bio-informatique

Offres de stages 2011/2012

Bureautique Initiation Excel-Powerpoint

Transcription:

Bilan de l'u+lisa+on du Framework Symfony2 pour la refonte complète de 2 applica+ons Web 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 1

Contexte: les applis web au labo Importante base classique PHP MySQL Applis publiques: php_myresa, php_conges, glpi Applis "maison": 2002 2007» annuaire interne, ges+on thèses/stage, réserva+ons, missions Applis difficiles à maintenir et faire évoluer => U+liser un framework pour améliorer la situa+on JRES 2011: hcps://2011.jres.org/archives/184/index.htm «La créa+on et l u+lisa+on des frameworks web est issue du besoin de développer rapidement des applica5ons, en favorisant la réu+lisa+on de code. Cece philosophie «Don't Repeat Yourself» (DRY) doit faciliter la maintenance, le test et les évolu5ons d'une applica+on» 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 2

les Frameworks Web «cadriciels»: cadres de travail + composants logiciels Boite à ou+ls + briques de base + Plan type Offrent des solu+ons éprouvées pour aider au dev. d une appli web Apparus vers 2005 Plusieurs technologies: PHP: Symfony, Zend, CakePHP Python: Django Java: Struts Ruby: Rails Avec des points communs: Architecture type MVC (modèle/vue/contrôleur) Place centrale du modèle de données Sépara+on claire des composants dédiés à la visu et à l interac+on Automa+sa+on de la persistance des données (ORM) Composants pour faciliter les taches récurrentes:» Formulaires, Routage, Authen+fica+on 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 3

Pourquoi, Comment Symfony2 C est un framework qui u+lise la technologie PHP il en existe d autres: Zend, CakePHP, Recherche de synergies au sein in2p3: École in2p3 (octobre 2008): «Développer une applica+on web» Appli cc Absence développée au CC in2p3 1 er essai: Symfony v1.4 auto appren+ssage: tutoriel 'Jobeet (Aout 2010) Prototype pour appli de ges+on des thèses et stages Resté sans suite Symfony v2 Présenta+on posi+ve aux JRES en Novembre 2011 Premiers essais encourageants: structura+on plus claire, plus grande modularité moteur de templates pour faciliter Affichage (Twig) prêts pour évaluer Symfoy2 sur une vraie appli. 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 4

Appli No 1: Affichage et Ges+on des Nouvelles sur la Page d Accueil du LAL 800 News, équipe de rédac+on: 4 personnes techno: classique SPIP kit CNRS + code «maison» PHP MySQL Demande explicite de la Direc+on pour renouveler cece page: Catégories de News, organisa+on de l affichage, etc Mais le cahier des charges reste très approxima+f il faudra s acendre à des réajustements Par+e Ges+on et Rédac+on: appli développée en 2004, écrite en Perl exper+se Perl disparue du labo => il faut refondre le code opportunité d un projet concret mais simple avec Symfony2 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 5

App No1: prototype, évalua+on Une réalisa+on assez rapide (2 mois) : Point de départ: tutoriel "Créa+on d'un blog avec Symfony2» hcp://keiruaprod.fr/symblog fr/ Appli classique de Ges+on et de Rédac+on de News Proche du tutoriel. En+tés: Ar+cle, Documents, Tags Formulaires de créa+on, affichage de listes, etc.. Grande efficacité du langage de template Twig (>> PHP) Les éléments pour un prototype convaincant: Des données réelles: Reverse engineering via Symfony base MySQL en produc+on injectée dans un premier modèle de données Evolu+on de ce modèle de données facilitée par persistance automa+que Une présenta+on «professionnelle» : style CSS Bootstrap de Twicer Contribue fortement à la crédibilité NB: complètement indépendant de Symfony, u+lisable en simple HTML Evalua+on posi+ve: on con+nue avec Symfony 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 6

App No1: prototype 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 7

App No1: cycle rapide de livraisons On se concentre sur la présenta+on de la page d accueil Suite du projet prévue sur 4 mois On s acend à de nombreux changements d orienta+on Le prototype évolue en une plateforme de test et démonstra5ons: de plugins JavaScript et JQuery et de maqueces présentées et discutées en Comité Web Livraisons et Revues fréquentes 2 semaines Revues suivies de réajustements Livraison > revue > redéfini+ons développement de type «agile» 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 8

Appli No2: Ges+on des demandes de Missions Basée sur l u+lisa+on de formulaires 1 appli originelle clonée en 10 applis +/ spécifiques ensemble assez cri+que: >1000 demandes de mission/an Code PHP MySQL + library Pear (Formulaires) Très gros problème de maintenance Nous décidons de reprendre ces applis avec Symfony Cahier des charges: Architecture: 1 seule appli (maintenance, évolu+on) Mode admin: ajouter villes, pays, monnaies, etc.. Mode user: «moderniser» et unifier les interfaces 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 9

App No2: les Formulaires Ce sont les composants essen+els de cece appli. Réalisa+on très rapide d un prototype avec une «interface simple»: 2 semaines Une appli unique qui remplace les 10 anciennes Tout le code consacré à la persistance est supprimé Les composants «Formulaires» de Symfony sont très efficaces et bien documentés. 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 10

Ex. formulaire demande mission Affichage d un formulaire classique via Symfony En+té «Voyage» > Objet Formulaire > «HTML» 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 11

Formulaires dynamiques Changement du mode de voyage: train > voiture Modifier une par+e de la page: JavaScript 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 12

Formulaires dynamiques (suite) Valida+on: «HTML» > Objet Formulaire > En+té Voyage Mecre à jour les données de l en+té Plusieurs stratégies possibles, pas facile de choisir 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 13

Formulaires dynamiques: bilan Documenta+on insuffisante sur le site officiel la situa+on évolue: hcp://webmozarts.com/2012/03/06/symfony2 formarchitecture/ Dans la communauté: Peu de tutoriels, souvent incomplets. On y arrive mais avec beaucoup trop de difficultés: Trop de perte de temps à faire des essais Qualité de la documenta+on pas au niveau de la qualité du code. 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 14

Bilan Appren+ssage Symfony2 Effort d appren+ssage: plutôt réduit Plus facile que Symfony1 Structura+on plus simple, plus «logique» Auto forma+on: choisir un tutoriel adapté à un projet simple minimum 2 semaines, au calme Démarrage assez rapide, encourageant Prototype qq semaines Applica+on qq mois Formulaires dynamiques: plus difficile Problème compliqué pour tous les Frameworks Élément clé: u+liser un éditeur adapté Par exemple Eclipse (c est un IDE, un env. de développement) Contrôle syntaxe PHP Accès direct aux interfaces et code des composants Symfony 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 15

Bilan u+lisa+on Symfony2 Bilan très posi+f: Produc+vité: beaucoup plus facile, plus rapide Persistance, Routage, Authen+fica+on, Templates (Twig), Permet une grande réac+vité (agilité) Au niveau des Fonc+onnalités développement itéra+f facilité par la structure MVC. Au niveau de la Présenta+on: styles, widgets (Twicer, JQueryUI,..) Facilité de maintenance et évolu+on architecture connue, standard (documentée) 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 16

Conclusion sur les Framework Inves+ssement rentable? Pas toujours possible de disposer de quelques semaines Le seuil n est pas très élevé, une fois passé, retour arrière impossible: persistance des données, «convaincre les autorités» n est plus une ques+on. comment a t on pu se passer d un Framework? Des pistes pour faciliter leur u+lisa+on : Régler la ques+on du «bon» Framework: Expérience acquise sera profitable ailleurs, pour un autre projet. Régler la ques+on du degré d exper+se: Fournir des pe+tes applis type, faciles à adapter et modifier. U+lisables par les non experts avec un «look» valorisant 23/10/12 Jus+ne Yuan et Serge Dû (LAL Orsay) 17