SlideShare une entreprise Scribd logo
1  sur  54
Télécharger pour lire hors ligne
Drupal & Symfony
Quel impact ?

05/12/2013
Qui ?
•

Thomas VIAL - @tvial

•

Manager PHP chez Ekino (250+ personnes)

•

Conseil, réalisation, et accompagnement digital

•

Pôle PHP :
•

30+ personnes

•

Symfony2 & Drupal
De quoi va-t-on parler ?
•

Le projet digital d’aujourd’hui

•

Comment le réaliser / retours d’expérience

•

Et demain, avec Drupal 8 & Symfony

•

Se préparer à Drupal

•

Points d’attention & bénéfices
Sujets connexes
•

Drupal 8 - Léon Cros

•

Non, Drupal n’est pas juste un CMS - Maxime Topolov

•

Les problématiques d’intégration de Drupal dans le SI Arnaud Ranson & Nicolas Marsaud

•

Effectuer des tests modernes pour Drupal - Christophe
Villeneuve
Le projet digital
d’aujourd’hui
X
U
A

Juste un site internet *

F

* so 90’s
Plateformes
digitales, de marque, e-commerce, de services…

Consommation de data fournies par des plateformes tierces.
Exposition de data qui seront consommées par des plateformes tierces.
Le projet digital
•

Editorial, multi-lingue, multi-site, multi-marque

•

Multi-devices : desktop, mobile, tablette

•

E-commerce, multi-devise

•

Personnalisation et fonctionnalités spécifiques

•

Interactions fortes avec le SI ou partenaires
Comment faire ?
Utiliser Drupal !

•

Oui, s’adapte à tout type de contenu au sens large

•

Il y a un module pour ça !

•

Développer ses propres modules
Quelques difficultés
•

Configuration management

•

Content staging

•

Peu d’outils d’assurance qualité

•

Partiellement POO
Le projet digital
✅ Editorial, multi-lingue, multi-site, multi-marque
✅ Multi-devices : desktop, mobile, tablette
✴️ E-commerce, multi-devise
✴️ Personnalisation et fonctionnalités spécifiques
✴️ Interactions fortes avec le SI ou partenaires
Retours d’expérience
Le projet #fail…
… est un sacré learning
Tout faire vs. bien faire
Learning #1

S’il y avait un outil qui faisait tout bien, tout le monde l’utiliserait :-)
Drupal fait des choses très bien, mais pas tout… et c’est valable pour toutes les solutions du marché.
Après, certaines solutions sont plus flexibles / intéropérables que d’autres… c’est le cas de Drupal
Préparer demain
Learning #2
Aujourd’hui… Demain…

La stratégie et les objectifs d’un projet peuvent (et doivent) évoluer avec le temps.
Il faut donc une solution ouverte, permettant de prendre en compte des changements de cap.
Tout n’est malheureusement pas visible en début de projet.
Ou alors…
•

Utiliser Drupal 7 pour la « gestion éditoriale »

•

Utiliser Symfony 2 pour les développements
« très » spécifiques

Source: https://drupal.org/project/usage/drupal
Refonte du site sage.fr
•

Site à 70% éditorial

•

30% pour des fonctionnalités spécifiques :
•

Raccordement SSO

•

Gestionnaire de formulaires avec logique métier

•

Gestion d’une bibliothèque media sur mesure
Ipercast

Sage UK

Ekino
Sage

2011

CDN

sage.fr

SSO
Ipercast

Ogone

Sage UK

Ekino
Sage

2013

CDN

Paiement

SSO

Consumers

Services!
Métiers

Rabbit MQ

Caméléon

Notifications

Plateforme Web sage.fr

SI Digital

Pivot

SI
Ils sont parmi nous…
•

Bertrand Milliat - Responsable Web - Sage

•

Vincent Ramond - Consultant Sénior - Ekino

•

Thomas Rabaix - Architecte - Ekino

•

Florent Denis - Ingénieur - Ekino
Et demain avec D8 ?
Plus simple
Grâce à quoi ?
Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres

Drupal 8 - « When It’s Ready »
•

Customizable: Field power, Customize pages with Views, Highly improved
content editing, New configuration system, Customize display and form
modes

•

Adaptable: Mobile-friendly, Better markup using HTML 5, More accessible,
Parli Italiano?, Web services built in

•

More flexibility: Modern OOP approach, Simpler and more unified Entity
and Field API, Unified configuration system, Latest frontend libraries,
Accessible interfaces made easier

•

Stepping off of our island: Symfony 2 and Other Components, Twig makes
theming easier, PHPUnit tests, Backbone and Underscore.js for the frontend

•

Other great improvements in D8: Migrate from earlier versions of Drupal,
Modules removed to make core leaner
Source: https://drupal.org/drupal-8.0
Drupal 8 & Symfony
•

Basé sur le framework Symfony2 full stack

•

Intégration de composants Symfony2
•

•

HttpFoundation, HttpKernel, Routing, EventDispatcher,
DependencyInjection, ClassLoader, Process, Yaml

Des standards & bonnes pratiques
•

Programmation Orientée Objet, Namespaces, PSR-0,
Composer, PHPUnit…
Se préparer à Drupal 8
Plus concrètement, de quoi parle-t-on ?
HTTP
request, response, header, body, session, cookie, cache, varnish, architecture…

Comprendre les interactions entre le serveur et le client, important pour le diagnostic, la performance et l’architecture
ReST & WSCCI
web services and context core initiative,api, mobile first…

Séparer complètement la logique métier et la couche de présentation. C’est valable pour vos développements customs.
POO
objet, design pattern, classe, méthode…

Rendre le code plus lisible, faciliter le travail collaboratif, simplifier la maintenance, faciliter le re-use
Tests Unitaires
assurance qualité, intégration continue, critères d’acceptance, tdd…

Framework de tests unitaires, un standard de l’écosystème PHP, réduit les bugs de production, améliore la
perception de qualité pour l’end-user, simplifie la conception technique, réduit le stress…
Mais aussi…
•

Composer (Gestion des dépendance de l’écosystème PHP)

•

Twig (Drupal8, Symfony2, eZ Publish, Magento2…)

•

Tests fonctionnels (Behat & Selenium, tester mais surtout concevoir)

•

Déploiements automatisés (Capistrano est un Must Have)
Dès aujourd’hui…
•

Pré-tester Drupal 8 Alpha / Beta / RC

•

Se former à Symfony2

•

Drupal groups, Meetup…
Le projet digital
✅ Editorial, multi-lingue, multi-site, multi-marque
✅ Multi-devices : desktop, mobile, tablette
✅ E-commerce, multi-devise
✅ Personnalisation et fonctionnalités spécifiques
✅ Interactions fortes avec le SI ou partenaires
3 options
•

Faire les développements dans Drupal

•

Utiliser une solution dédiée via intéropérabilité

•

Développer avec Symfony2 (solution intermédiaire)
Les points d’attention
Développeurs
•

Symfony2 n’évite pas le code spaghetti

•

Ticket d’entrée non négligeable

•

Concurrence plus importante
Les bénéfices ?
Développeurs

5
•

Améliorer la qualité technique des solutions
proposées

•

Possibilité de développer des solutions plus
orientées métier

•

Monter en compétences sur SF2 et les standards

•

Prendre de la valeur sur le marché
Décideurs

5
•

Drupal comme socle de plateforme digitale

•

Industrialisation permet un TTM plus court

•

Pérennité de l’investissement

•

Faciliter les recrutements
Conclusion ?
Drupal 8 et Symfony
•

Un socle de développement permettant :
•

une gestion éditoriale sur mesure

•

le développement de fonctionnalités spécifiques

•

les échanges avec le SI

•

de construire des solutions pérennes
Drupal 8 with Symfony2 Components.
When it’s ready.
What about you?
Brace yourself,	

D8 is coming	

!
!
!

Questions ?
Annexes
Intégrer Symfony2 avec Drupal7 ?
•

2 types de stratégies :
•

•

•

Drupal retourne la réponse si le status code de la page
n’est pas 404
Drupal retourne toujours la réponse, même en cas de
status code 404

Code source et documentation sur le Github d’Ekino
•

•

EkinoDrupalBundle & ekino_drupal_symfony2

Drupal + Symfony, don’t wait for Drupal8! par Thomas Rabaix
Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres

Drupal 6 - Février 2008
•

Introducing the easiest version of Drupal ever: Quick and easy setup, Drag-and-drop
administration, All languages spoken here!, Improved multilingual interface, Quick
interface translation

•

Great new core modules: Actions and triggers, Sign in with OpenID, Update status
module

•

Theming: CSS-only theming, Theme developer module, Customize your theme,
Enhanced preprocessing, A unified approach, Updated jQuery

•

Most secure Drupal release ever: Password strength checking, Granular permissions

•

Performance and maintenance: Optimized code, Scalability options, A new menu
system, Better file handling, Extended logging, Schema API, Batch API, Scripting from the
command line

•

It's the little things… Better polls, Forum improvements, Easier path alias management,
E-mail notifications, Better anonymous commenting, New teaser handling, Sticky table
headers, Custom date formats, Pretty signatures
Source: https://drupal.org/drupal-6.0
Drupal 6 = CMS
Plug&Play with Built-in Features
Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres

Drupal 7 - Janvier 2011
•

Key Points: Easier to use, More flexible, More
scalable, Open source

•

Flexible content, Better theming, Accessible,
Images and files, Automated code testing,
Improved database support, Better distribution
support, Extend

Source: https://drupal.org/drupal-7.0
Drupal 7 = CMF
Content Management Framework
Drupal 8 = Framework ?
Drupal 8
Framework de gestion de contenus
Adoptant les standards et bonnes pratiques
Interopérable avec les solutions partageant ces mêmes standards
Source: http://previousnext.com.au/drupal-8-ready

Contenu connexe

Tendances

Drupagora 2014 : Reprendre un projet avec Drupal quand on a des centaines de...
Drupagora 2014 :  Reprendre un projet avec Drupal quand on a des centaines de...Drupagora 2014 :  Reprendre un projet avec Drupal quand on a des centaines de...
Drupagora 2014 : Reprendre un projet avec Drupal quand on a des centaines de...Core-Techs
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGapThomas Bassetto
 
Phonegap
PhonegapPhonegap
PhonegapVISEO
 
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKitConstruire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKituncatcrea
 
Presentation clean architecture
Presentation clean architecturePresentation clean architecture
Presentation clean architectureThomas LOMBARD
 
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?Smile I.T is open
 
Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Microsoft
 
Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015Smile I.T is open
 
Wygday 2011 - Introduction à HTML5
Wygday 2011 - Introduction à HTML5Wygday 2011 - Introduction à HTML5
Wygday 2011 - Introduction à HTML5wyggio
 
la boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsla boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsChristophe Villeneuve
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologiewyggio
 
MobileDay - Parcours 1 Hybride (Cordova)
MobileDay - Parcours 1 Hybride  (Cordova)MobileDay - Parcours 1 Hybride  (Cordova)
MobileDay - Parcours 1 Hybride (Cordova)Cellenza
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Christophe Villeneuve
 
Introduction à Drupal 8
Introduction à Drupal 8Introduction à Drupal 8
Introduction à Drupal 8Core-Techs
 
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Smile I.T is open
 
Techdays 2012 - Développement Web Mobile avec Microsoft
Techdays 2012 - Développement Web Mobile avec MicrosoftTechdays 2012 - Développement Web Mobile avec Microsoft
Techdays 2012 - Développement Web Mobile avec Microsoftwyggio
 
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Raphaël Kueny
 
Breizhcamp 2015 Ionic Framework
Breizhcamp 2015 Ionic FrameworkBreizhcamp 2015 Ionic Framework
Breizhcamp 2015 Ionic FrameworkStéphanie Moallic
 

Tendances (20)

Drupagora 2014 : Reprendre un projet avec Drupal quand on a des centaines de...
Drupagora 2014 :  Reprendre un projet avec Drupal quand on a des centaines de...Drupagora 2014 :  Reprendre un projet avec Drupal quand on a des centaines de...
Drupagora 2014 : Reprendre un projet avec Drupal quand on a des centaines de...
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap
 
Phonegap
PhonegapPhonegap
Phonegap
 
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKitConstruire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
 
Presentation clean architecture
Presentation clean architecturePresentation clean architecture
Presentation clean architecture
 
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?
Webinar Smile - Comment Drupal 8 peut booster votre stratégie digitale ?
 
ROM Android Customs
ROM Android Customs ROM Android Customs
ROM Android Customs
 
Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Booster votre application Windows Phone 8
Booster votre application Windows Phone 8
 
Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015
 
Soutenance
SoutenanceSoutenance
Soutenance
 
Wygday 2011 - Introduction à HTML5
Wygday 2011 - Introduction à HTML5Wygday 2011 - Introduction à HTML5
Wygday 2011 - Introduction à HTML5
 
la boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsla boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtools
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
 
MobileDay - Parcours 1 Hybride (Cordova)
MobileDay - Parcours 1 Hybride  (Cordova)MobileDay - Parcours 1 Hybride  (Cordova)
MobileDay - Parcours 1 Hybride (Cordova)
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?
 
Introduction à Drupal 8
Introduction à Drupal 8Introduction à Drupal 8
Introduction à Drupal 8
 
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
 
Techdays 2012 - Développement Web Mobile avec Microsoft
Techdays 2012 - Développement Web Mobile avec MicrosoftTechdays 2012 - Développement Web Mobile avec Microsoft
Techdays 2012 - Développement Web Mobile avec Microsoft
 
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
 
Breizhcamp 2015 Ionic Framework
Breizhcamp 2015 Ionic FrameworkBreizhcamp 2015 Ionic Framework
Breizhcamp 2015 Ionic Framework
 

En vedette

Livre Drupal avance, un CMS pour développeurs
Livre Drupal avance, un CMS pour développeursLivre Drupal avance, un CMS pour développeurs
Livre Drupal avance, un CMS pour développeursneuros
 
Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Romain Jarraud
 
Rapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaRapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaNazih Heni
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Ben Abdelwahed Slim
 
7 tendances E-commerce 2015
7 tendances E-commerce 20157 tendances E-commerce 2015
7 tendances E-commerce 2015Franck Perrier
 
Seminaire Drupal 8 à Nantes
Seminaire Drupal 8 à NantesSeminaire Drupal 8 à Nantes
Seminaire Drupal 8 à NantesSmile I.T is open
 
Drupal avancé, un CMS pour développeurs - drupalfr - Eyrolles
Drupal avancé, un CMS pour développeurs - drupalfr - EyrollesDrupal avancé, un CMS pour développeurs - drupalfr - Eyrolles
Drupal avancé, un CMS pour développeurs - drupalfr - EyrollesChristophe Villeneuve
 
Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Emiland
 
What I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessWhat I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessJonathon Colman
 

En vedette (9)

Livre Drupal avance, un CMS pour développeurs
Livre Drupal avance, un CMS pour développeursLivre Drupal avance, un CMS pour développeurs
Livre Drupal avance, un CMS pour développeurs
 
Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8
 
Rapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédiaRapport de projet de fin d'étude licence informatique et multimédia
Rapport de projet de fin d'étude licence informatique et multimédia
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2
 
7 tendances E-commerce 2015
7 tendances E-commerce 20157 tendances E-commerce 2015
7 tendances E-commerce 2015
 
Seminaire Drupal 8 à Nantes
Seminaire Drupal 8 à NantesSeminaire Drupal 8 à Nantes
Seminaire Drupal 8 à Nantes
 
Drupal avancé, un CMS pour développeurs - drupalfr - Eyrolles
Drupal avancé, un CMS pour développeurs - drupalfr - EyrollesDrupal avancé, un CMS pour développeurs - drupalfr - Eyrolles
Drupal avancé, un CMS pour développeurs - drupalfr - Eyrolles
 
Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.
 
What I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessWhat I Carry: 10 Tools for Success
What I Carry: 10 Tools for Success
 

Similaire à Drupagora 2013 : Drupal8 et Symfony2, quel impact ?

Industrialisez le développement et la maintenance de vos sites avec Drupal
Industrialisez le développement et la maintenance de vos sites avec DrupalIndustrialisez le développement et la maintenance de vos sites avec Drupal
Industrialisez le développement et la maintenance de vos sites avec DrupalLINAGORA
 
Keynote drupagora 2015 7
Keynote drupagora 2015 7Keynote drupagora 2015 7
Keynote drupagora 2015 7Core-Techs
 
Réussir son projet Drupal
Réussir son projet DrupalRéussir son projet Drupal
Réussir son projet DrupalAdyax
 
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013Artusamak
 
20090727 Cv Synca7 Eric Viala
20090727 Cv Synca7 Eric Viala20090727 Cv Synca7 Eric Viala
20090727 Cv Synca7 Eric VialaÉric Viala
 
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...drupagora
 
Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)LaNetscouade
 
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performant
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performantSéminaire novembre 2010 - Les CMS Open Source au service d'un web performant
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performantLINAGORA
 
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...slybud
 
Cas de la refonte de STM.info
Cas de la refonte de STM.infoCas de la refonte de STM.info
Cas de la refonte de STM.infoTP1
 
Drupal Factory kézako ?
Drupal Factory kézako ?Drupal Factory kézako ?
Drupal Factory kézako ?slybud
 
Drupagora 2013 : introduction drupal
Drupagora 2013 :  introduction drupalDrupagora 2013 :  introduction drupal
Drupagora 2013 : introduction drupalCyril Reinhard
 
Découvrir Drupal, le CMS Open Source de référence
Découvrir Drupal, le CMS Open Source de référenceDécouvrir Drupal, le CMS Open Source de référence
Découvrir Drupal, le CMS Open Source de référenceLINAGORA
 
Drupal & responsive
Drupal & responsiveDrupal & responsive
Drupal & responsiveRezonova
 
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...LINAGORA
 
DrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierDrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierRomain Jarraud
 
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 DrupalCamp Paris 2013 - Drupal : un CMS orienté métier DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
DrupalCamp Paris 2013 - Drupal : un CMS orienté métierActency
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 

Similaire à Drupagora 2013 : Drupal8 et Symfony2, quel impact ? (20)

Industrialisez le développement et la maintenance de vos sites avec Drupal
Industrialisez le développement et la maintenance de vos sites avec DrupalIndustrialisez le développement et la maintenance de vos sites avec Drupal
Industrialisez le développement et la maintenance de vos sites avec Drupal
 
Keynote drupagora 2015 7
Keynote drupagora 2015 7Keynote drupagora 2015 7
Keynote drupagora 2015 7
 
Réussir son projet Drupal
Réussir son projet DrupalRéussir son projet Drupal
Réussir son projet Drupal
 
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
 
20090727 Cv Synca7 Eric Viala
20090727 Cv Synca7 Eric Viala20090727 Cv Synca7 Eric Viala
20090727 Cv Synca7 Eric Viala
 
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...
Introduction à Drupal. Pourquoi Drupal est, en toute objectivité, le meilleur...
 
Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)
 
Solutions Linux 2010
Solutions Linux 2010Solutions Linux 2010
Solutions Linux 2010
 
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performant
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performantSéminaire novembre 2010 - Les CMS Open Source au service d'un web performant
Séminaire novembre 2010 - Les CMS Open Source au service d'un web performant
 
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...
Campusfrance.org + D8 : Comment industrialiser la production et l'intégration...
 
Cas de la refonte de STM.info
Cas de la refonte de STM.infoCas de la refonte de STM.info
Cas de la refonte de STM.info
 
Drupal Factory kézako ?
Drupal Factory kézako ?Drupal Factory kézako ?
Drupal Factory kézako ?
 
Drupagora 2013 : introduction drupal
Drupagora 2013 :  introduction drupalDrupagora 2013 :  introduction drupal
Drupagora 2013 : introduction drupal
 
Découvrir Drupal, le CMS Open Source de référence
Découvrir Drupal, le CMS Open Source de référenceDécouvrir Drupal, le CMS Open Source de référence
Découvrir Drupal, le CMS Open Source de référence
 
Drupal & responsive
Drupal & responsiveDrupal & responsive
Drupal & responsive
 
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...
Séminaire janvier 2011 - Le poste de travail libre : projets, réussites et pe...
 
DrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierDrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metier
 
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 DrupalCamp Paris 2013 - Drupal : un CMS orienté métier DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 
Qualité d'expérience utilisateur final
Qualité d'expérience utilisateur finalQualité d'expérience utilisateur final
Qualité d'expérience utilisateur final
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 

Plus de ekino

Microbox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien RoyMicrobox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien Royekino
 
Spring data : Une api, quinze possibilités - Julien Roy
Spring data : Une api, quinze possibilités - Julien RoySpring data : Une api, quinze possibilités - Julien Roy
Spring data : Une api, quinze possibilités - Julien Royekino
 
Se lancer dans l'aventure microservices avec Spring Cloud - Julien Roy
Se lancer dans l'aventure microservices avec Spring Cloud - Julien RoySe lancer dans l'aventure microservices avec Spring Cloud - Julien Roy
Se lancer dans l'aventure microservices avec Spring Cloud - Julien Royekino
 
Le « RUN » (ou la Tierce Maintenance Applicative)
Le « RUN » (ou la Tierce Maintenance Applicative)Le « RUN » (ou la Tierce Maintenance Applicative)
Le « RUN » (ou la Tierce Maintenance Applicative)ekino
 
Industrialisation PHP - Canal+
Industrialisation PHP - Canal+Industrialisation PHP - Canal+
Industrialisation PHP - Canal+ekino
 
Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+ Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+ ekino
 
Expériencer les objets connectés
Expériencer les objets connectésExpériencer les objets connectés
Expériencer les objets connectésekino
 
Industrialise PHP ~ ZendCon Europe 2013
Industrialise PHP ~ ZendCon Europe 2013Industrialise PHP ~ ZendCon Europe 2013
Industrialise PHP ~ ZendCon Europe 2013ekino
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologieekino
 
Java GC - Pause tuning
Java GC - Pause tuningJava GC - Pause tuning
Java GC - Pause tuningekino
 
SnapyX
SnapyXSnapyX
SnapyXekino
 
HTML5 vu par Ekino
HTML5 vu par EkinoHTML5 vu par Ekino
HTML5 vu par Ekinoekino
 
OOM m'a tuer - Devoxx France 2012
OOM m'a tuer - Devoxx France 2012OOM m'a tuer - Devoxx France 2012
OOM m'a tuer - Devoxx France 2012ekino
 

Plus de ekino (13)

Microbox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien RoyMicrobox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien Roy
 
Spring data : Une api, quinze possibilités - Julien Roy
Spring data : Une api, quinze possibilités - Julien RoySpring data : Une api, quinze possibilités - Julien Roy
Spring data : Une api, quinze possibilités - Julien Roy
 
Se lancer dans l'aventure microservices avec Spring Cloud - Julien Roy
Se lancer dans l'aventure microservices avec Spring Cloud - Julien RoySe lancer dans l'aventure microservices avec Spring Cloud - Julien Roy
Se lancer dans l'aventure microservices avec Spring Cloud - Julien Roy
 
Le « RUN » (ou la Tierce Maintenance Applicative)
Le « RUN » (ou la Tierce Maintenance Applicative)Le « RUN » (ou la Tierce Maintenance Applicative)
Le « RUN » (ou la Tierce Maintenance Applicative)
 
Industrialisation PHP - Canal+
Industrialisation PHP - Canal+Industrialisation PHP - Canal+
Industrialisation PHP - Canal+
 
Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+ Symfony et Sonata Project chez Canal+
Symfony et Sonata Project chez Canal+
 
Expériencer les objets connectés
Expériencer les objets connectésExpériencer les objets connectés
Expériencer les objets connectés
 
Industrialise PHP ~ ZendCon Europe 2013
Industrialise PHP ~ ZendCon Europe 2013Industrialise PHP ~ ZendCon Europe 2013
Industrialise PHP ~ ZendCon Europe 2013
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologie
 
Java GC - Pause tuning
Java GC - Pause tuningJava GC - Pause tuning
Java GC - Pause tuning
 
SnapyX
SnapyXSnapyX
SnapyX
 
HTML5 vu par Ekino
HTML5 vu par EkinoHTML5 vu par Ekino
HTML5 vu par Ekino
 
OOM m'a tuer - Devoxx France 2012
OOM m'a tuer - Devoxx France 2012OOM m'a tuer - Devoxx France 2012
OOM m'a tuer - Devoxx France 2012
 

Drupagora 2013 : Drupal8 et Symfony2, quel impact ?

  • 1. Drupal & Symfony Quel impact ? 05/12/2013
  • 2. Qui ? • Thomas VIAL - @tvial • Manager PHP chez Ekino (250+ personnes) • Conseil, réalisation, et accompagnement digital • Pôle PHP : • 30+ personnes • Symfony2 & Drupal
  • 3. De quoi va-t-on parler ? • Le projet digital d’aujourd’hui • Comment le réaliser / retours d’expérience • Et demain, avec Drupal 8 & Symfony • Se préparer à Drupal • Points d’attention & bénéfices
  • 4. Sujets connexes • Drupal 8 - Léon Cros • Non, Drupal n’est pas juste un CMS - Maxime Topolov • Les problématiques d’intégration de Drupal dans le SI Arnaud Ranson & Nicolas Marsaud • Effectuer des tests modernes pour Drupal - Christophe Villeneuve
  • 6. X U A Juste un site internet * F * so 90’s
  • 7. Plateformes digitales, de marque, e-commerce, de services… Consommation de data fournies par des plateformes tierces. Exposition de data qui seront consommées par des plateformes tierces.
  • 8. Le projet digital • Editorial, multi-lingue, multi-site, multi-marque • Multi-devices : desktop, mobile, tablette • E-commerce, multi-devise • Personnalisation et fonctionnalités spécifiques • Interactions fortes avec le SI ou partenaires
  • 10. Utiliser Drupal ! • Oui, s’adapte à tout type de contenu au sens large • Il y a un module pour ça ! • Développer ses propres modules
  • 11. Quelques difficultés • Configuration management • Content staging • Peu d’outils d’assurance qualité • Partiellement POO
  • 12. Le projet digital ✅ Editorial, multi-lingue, multi-site, multi-marque ✅ Multi-devices : desktop, mobile, tablette ✴️ E-commerce, multi-devise ✴️ Personnalisation et fonctionnalités spécifiques ✴️ Interactions fortes avec le SI ou partenaires
  • 15. … est un sacré learning
  • 16. Tout faire vs. bien faire Learning #1 S’il y avait un outil qui faisait tout bien, tout le monde l’utiliserait :-) Drupal fait des choses très bien, mais pas tout… et c’est valable pour toutes les solutions du marché. Après, certaines solutions sont plus flexibles / intéropérables que d’autres… c’est le cas de Drupal
  • 18. Aujourd’hui… Demain… La stratégie et les objectifs d’un projet peuvent (et doivent) évoluer avec le temps. Il faut donc une solution ouverte, permettant de prendre en compte des changements de cap. Tout n’est malheureusement pas visible en début de projet.
  • 19. Ou alors… • Utiliser Drupal 7 pour la « gestion éditoriale » • Utiliser Symfony 2 pour les développements « très » spécifiques Source: https://drupal.org/project/usage/drupal
  • 20. Refonte du site sage.fr • Site à 70% éditorial • 30% pour des fonctionnalités spécifiques : • Raccordement SSO • Gestionnaire de formulaires avec logique métier • Gestion d’une bibliothèque media sur mesure
  • 23. Ils sont parmi nous… • Bertrand Milliat - Responsable Web - Sage • Vincent Ramond - Consultant Sénior - Ekino • Thomas Rabaix - Architecte - Ekino • Florent Denis - Ingénieur - Ekino
  • 26. Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres Drupal 8 - « When It’s Ready » • Customizable: Field power, Customize pages with Views, Highly improved content editing, New configuration system, Customize display and form modes • Adaptable: Mobile-friendly, Better markup using HTML 5, More accessible, Parli Italiano?, Web services built in • More flexibility: Modern OOP approach, Simpler and more unified Entity and Field API, Unified configuration system, Latest frontend libraries, Accessible interfaces made easier • Stepping off of our island: Symfony 2 and Other Components, Twig makes theming easier, PHPUnit tests, Backbone and Underscore.js for the frontend • Other great improvements in D8: Migrate from earlier versions of Drupal, Modules removed to make core leaner Source: https://drupal.org/drupal-8.0
  • 27. Drupal 8 & Symfony • Basé sur le framework Symfony2 full stack • Intégration de composants Symfony2 • • HttpFoundation, HttpKernel, Routing, EventDispatcher, DependencyInjection, ClassLoader, Process, Yaml Des standards & bonnes pratiques • Programmation Orientée Objet, Namespaces, PSR-0, Composer, PHPUnit…
  • 28. Se préparer à Drupal 8 Plus concrètement, de quoi parle-t-on ?
  • 29. HTTP request, response, header, body, session, cookie, cache, varnish, architecture… Comprendre les interactions entre le serveur et le client, important pour le diagnostic, la performance et l’architecture
  • 30. ReST & WSCCI web services and context core initiative,api, mobile first… Séparer complètement la logique métier et la couche de présentation. C’est valable pour vos développements customs.
  • 31. POO objet, design pattern, classe, méthode… Rendre le code plus lisible, faciliter le travail collaboratif, simplifier la maintenance, faciliter le re-use
  • 32. Tests Unitaires assurance qualité, intégration continue, critères d’acceptance, tdd… Framework de tests unitaires, un standard de l’écosystème PHP, réduit les bugs de production, améliore la perception de qualité pour l’end-user, simplifie la conception technique, réduit le stress…
  • 33. Mais aussi… • Composer (Gestion des dépendance de l’écosystème PHP) • Twig (Drupal8, Symfony2, eZ Publish, Magento2…) • Tests fonctionnels (Behat & Selenium, tester mais surtout concevoir) • Déploiements automatisés (Capistrano est un Must Have)
  • 34. Dès aujourd’hui… • Pré-tester Drupal 8 Alpha / Beta / RC • Se former à Symfony2 • Drupal groups, Meetup…
  • 35. Le projet digital ✅ Editorial, multi-lingue, multi-site, multi-marque ✅ Multi-devices : desktop, mobile, tablette ✅ E-commerce, multi-devise ✅ Personnalisation et fonctionnalités spécifiques ✅ Interactions fortes avec le SI ou partenaires
  • 36. 3 options • Faire les développements dans Drupal • Utiliser une solution dédiée via intéropérabilité • Développer avec Symfony2 (solution intermédiaire)
  • 38. Développeurs • Symfony2 n’évite pas le code spaghetti • Ticket d’entrée non négligeable • Concurrence plus importante
  • 40. Développeurs 5 • Améliorer la qualité technique des solutions proposées • Possibilité de développer des solutions plus orientées métier • Monter en compétences sur SF2 et les standards • Prendre de la valeur sur le marché
  • 41. Décideurs 5 • Drupal comme socle de plateforme digitale • Industrialisation permet un TTM plus court • Pérennité de l’investissement • Faciliter les recrutements
  • 43. Drupal 8 et Symfony • Un socle de développement permettant : • une gestion éditoriale sur mesure • le développement de fonctionnalités spécifiques • les échanges avec le SI • de construire des solutions pérennes
  • 44. Drupal 8 with Symfony2 Components. When it’s ready. What about you?
  • 45. Brace yourself, D8 is coming ! ! ! Questions ?
  • 47. Intégrer Symfony2 avec Drupal7 ? • 2 types de stratégies : • • • Drupal retourne la réponse si le status code de la page n’est pas 404 Drupal retourne toujours la réponse, même en cas de status code 404 Code source et documentation sur le Github d’Ekino • • EkinoDrupalBundle & ekino_drupal_symfony2 Drupal + Symfony, don’t wait for Drupal8! par Thomas Rabaix
  • 48. Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres Drupal 6 - Février 2008 • Introducing the easiest version of Drupal ever: Quick and easy setup, Drag-and-drop administration, All languages spoken here!, Improved multilingual interface, Quick interface translation • Great new core modules: Actions and triggers, Sign in with OpenID, Update status module • Theming: CSS-only theming, Theme developer module, Customize your theme, Enhanced preprocessing, A unified approach, Updated jQuery • Most secure Drupal release ever: Password strength checking, Granular permissions • Performance and maintenance: Optimized code, Scalability options, A new menu system, Better file handling, Extended logging, Schema API, Batch API, Scripting from the command line • It's the little things… Better polls, Forum improvements, Easier path alias management, E-mail notifications, Better anonymous commenting, New teaser handling, Sticky table headers, Custom date formats, Pretty signatures Source: https://drupal.org/drupal-6.0
  • 49. Drupal 6 = CMS Plug&Play with Built-in Features
  • 50. Site-Builders / Webmasters / End-users, Theme Developers, Developers, Autres Drupal 7 - Janvier 2011 • Key Points: Easier to use, More flexible, More scalable, Open source • Flexible content, Better theming, Accessible, Images and files, Automated code testing, Improved database support, Better distribution support, Extend Source: https://drupal.org/drupal-7.0
  • 51. Drupal 7 = CMF Content Management Framework
  • 52. Drupal 8 = Framework ?
  • 53. Drupal 8 Framework de gestion de contenus Adoptant les standards et bonnes pratiques Interopérable avec les solutions partageant ces mêmes standards