65
Les CMS basés sur framework en environnement professionnel

Les CMS basés sur framework - PHP Tour 2011

Embed Size (px)

DESCRIPTION

Slides de la conférence donnée lors du PHP Tour à Lille le 24 novembre 2011 Ces Slides présentes la méthodologies et les implémentations mise en oeuvre dans le CMF (Content Managment Framework) Centurion. Centurion, c'est un CMS ou CMF conçu à la façon d'un système de gestion de contenu basé sur Zend Framework en PHP 5. C'est une une solution de nouvelle génération permettant de gérer les utilisateurs et les contenu dans la même plateforme d'entreprise : http://centurion-project.org

Citation preview

Page 1: Les CMS basés sur framework - PHP Tour 2011

Les CMSbasés sur frameworken environnement professionnel

Page 2: Les CMS basés sur framework - PHP Tour 2011

@CenturionCMS

Qui sommes nous ?Une team de passionnés de web :

développeurs, architectes, UI/UX designers, … dans le métier depuis 15 ans

Page 3: Les CMS basés sur framework - PHP Tour 2011

Centurion est un CMF, Content Management Frameworkadapté aux exigences uniques de

vos projets.

Page 4: Les CMS basés sur framework - PHP Tour 2011

Les besoins ont changé& le web a bien changédepuis l’arrivée des CMS

Page 5: Les CMS basés sur framework - PHP Tour 2011

Les CMS sont d’excellents outils

pour développer dessites éditoriaux

« simples »

Page 6: Les CMS basés sur framework - PHP Tour 2011

Nos clients ont des besoinsde plus en plus

particuliers

Page 7: Les CMS basés sur framework - PHP Tour 2011

ils veulent multi

multi sitesmulti languesmulti usersmulti sourcesmulti devicesmulti socialen gros c’est du

multi ...

Page 8: Les CMS basés sur framework - PHP Tour 2011

Nos clients veulentContribuer une fois, et publier partout

Page 9: Les CMS basés sur framework - PHP Tour 2011

M

Website

1 seuleMulti-publishing

plateforme

AndroidTablettes

IOSTablettes

M

Page 10: Les CMS basés sur framework - PHP Tour 2011

oui, avec un CMS tout est possible.

mais à quel prix ?& en combien de temps ?

Page 11: Les CMS basés sur framework - PHP Tour 2011

pour aller à Berlin?voiture ou avion?

Page 12: Les CMS basés sur framework - PHP Tour 2011

avion!même si en voiture c’est

possible…

Page 13: Les CMS basés sur framework - PHP Tour 2011

CMSContentMangementSystem

FrameworkBas niveau

trop haut

trop bas

Page 14: Les CMS basés sur framework - PHP Tour 2011

CMS

Framework

trop haut

trop bas

Page 15: Les CMS basés sur framework - PHP Tour 2011

les CMF sont tailléspour réaliser des “content

platform“conséquentes

Page 16: Les CMS basés sur framework - PHP Tour 2011

Nos retours d’expérience projet

Page 17: Les CMS basés sur framework - PHP Tour 2011

des projets conséquents

RSE GDF SUEZ NAMCO BANDAI PPR CFAO

Page 18: Les CMS basés sur framework - PHP Tour 2011

Nos plateformes sont :

13 sites, 11 langues, 6 zones

Page 19: Les CMS basés sur framework - PHP Tour 2011

Nos plateformes sont:

180 sites, 4 zones, 34 pays, 4 langues

Page 20: Les CMS basés sur framework - PHP Tour 2011

Nos plateformes sont :

70 pays, 10 langues, 20000 users

Page 21: Les CMS basés sur framework - PHP Tour 2011

Mathias Desloges& Laurent ChenayComment c’est fait!

Page 22: Les CMS basés sur framework - PHP Tour 2011

Nos challenges techniquesComment être puissant et

fiable

tout en restant souple et simple pour le développeur ?

Page 23: Les CMS basés sur framework - PHP Tour 2011

Nos challenges techniquesComment être puissant et

fiable

tout en restant souple et simple pour le développeur ?

Page 24: Les CMS basés sur framework - PHP Tour 2011

SimplePourquoi faire compliquer quand on peut faire

simple ?

PuissantIl faut pouvoir coder toujours plus compliqué,

toujours plus vite !

OuvertEh oui, on a pas le monopole de la bonne idée ;)

Page 25: Les CMS basés sur framework - PHP Tour 2011

Nous avons simplifié l’usage

de Zend Framework.

C’est ZF étendu, nos composants sont

génériques, clairs, réutilisables et flexibles.

Page 26: Les CMS basés sur framework - PHP Tour 2011

Nous avons simplifié l’usage

de Zend Framework.

C’est ZF étendu, nos composants sont

génériques, clairs, réutilisables et flexibles.

Page 27: Les CMS basés sur framework - PHP Tour 2011

Zend framework

Page 28: Les CMS basés sur framework - PHP Tour 2011

Zend framework

des librairies qui étendent ZF

Page 29: Les CMS basés sur framework - PHP Tour 2011

des modules orientés CMS

Zend framework

des librairies qui étendent ZF

VOTRE PROJET

Page 30: Les CMS basés sur framework - PHP Tour 2011

Zend framework

CRUDGénération de

model

Gestion de cache

CMSArborescence

PagesTemplatingOutils SEO

Multilinguisme

USERSCompte utilisateurs avec profil avancé authentification gestion des groupes et des permissions

par groupe et par utilisateur

CONTENU METIERIntégration de référentiels

métier Import de flux externesPublication vers plateformes

externes

SOCIALPush de contenu générer automatiquement vers les réseaux sociaux twitter,

facebook …

Abstraction de données

Actions sur date

Dispatcher d’événements

Génération de modèles

Connecteur aux API « sociales »

Gestion de fichiers

Manipulation d’images

Magic Filters

MPTT

Trait

VOTRE PROJET

Génération de formulaire

Page 31: Les CMS basés sur framework - PHP Tour 2011

Pourquoi ZF?The PHP Company

Page 32: Les CMS basés sur framework - PHP Tour 2011

Pourquoi ZF?The PHP Company

Page 33: Les CMS basés sur framework - PHP Tour 2011

Pourquoi Zend Framework ?

modulablecompletsimple

puissantouvert

bas niveau

Page 34: Les CMS basés sur framework - PHP Tour 2011

Quelles problèmatiques?Quelles réponses?

Page 35: Les CMS basés sur framework - PHP Tour 2011

Les interfaces d’administration c’est toujours la même

chose

Features “core”

Page 36: Les CMS basés sur framework - PHP Tour 2011

CRUD• Génération des listes/formulaires | gestion de la persistance

• Simplement en héritant un controller

Features “core”

Page 37: Les CMS basés sur framework - PHP Tour 2011

CRUD (Suite)Personnalisation simple : uniquement par de la “configuration”

Features “core”

Page 38: Les CMS basés sur framework - PHP Tour 2011

CRUD

Page 39: Les CMS basés sur framework - PHP Tour 2011

CRUD (Suite)Génération de formulaire automatique

Features “core”

Page 40: Les CMS basés sur framework - PHP Tour 2011

Features “core”

CRUD (Suite)

Page 41: Les CMS basés sur framework - PHP Tour 2011

CRUD=

Coût d’apprentissage très faible & Gain en temps de développement

élevé

Feature “core”

Page 42: Les CMS basés sur framework - PHP Tour 2011

Le développeur connait son modèle de données sur le

bout des doigts…

Features “core”

Page 43: Les CMS basés sur framework - PHP Tour 2011

…à force d’écrire ce genre de code

Features “core”

Page 44: Les CMS basés sur framework - PHP Tour 2011

Magic filters• API pour fabriquer des requêtes

• API simple et intuitive

• Couvre 95% des requêtes faites usuellement

Features “core”

Page 45: Les CMS basés sur framework - PHP Tour 2011

Magic filters (suite)

Features “core”

Page 46: Les CMS basés sur framework - PHP Tour 2011

Magic filters (suite)Centurion

Features “core”

Page 47: Les CMS basés sur framework - PHP Tour 2011

Magic filters (suite)Centurion

Zend Framework

Features “core”

Page 48: Les CMS basés sur framework - PHP Tour 2011

Magic filters (suite)• Une méthode pour les requêter tous

• Etend sans rentrer en conflit avec la classe Zend_Db_Table_Select

• Sécurisé (échappement automatique)

• API unifiée > Syntaxe utilisable dans d’autres contexteso Configuration du CRUDo “Getter” sur les rowso …

Features “core”

Page 49: Les CMS basés sur framework - PHP Tour 2011

Magic filters=

Garde la puissance du SQLPlus tolérant au changement du

modèle

Features “core”

Page 50: Les CMS basés sur framework - PHP Tour 2011

Ma brique “user” n’incorpore pas de CRM

Comment en ajouter une?

Features “core”

Page 51: Les CMS basés sur framework - PHP Tour 2011

Signaux

Features “core”

Page 52: Les CMS basés sur framework - PHP Tour 2011

Signaux=

Ajout simple de traitements en réaction à un « événement »

Minimise les risques de régression

Features “core”

Page 53: Les CMS basés sur framework - PHP Tour 2011

Comment ajouter de la logique

à certain de mes modèles ?(tous étendent Zend_Db_Table)

Features “core”

Page 54: Les CMS basés sur framework - PHP Tour 2011

Trait (pourquoi attendre PHP 5.4)

• Permet “d’ajouter” et “surcharger” des méthodes à une classe

• Complètement transparent pour le développeur

• Juste une Interface à implémenter

• Disponible pour les models (table, row, select), les controllers, les forms…

Features “core”

Page 55: Les CMS basés sur framework - PHP Tour 2011

Trait (suite)Le trait

Une classe qui utilise le trait

Features “core”

Page 56: Les CMS basés sur framework - PHP Tour 2011

Trait=

Factorisation de code grace à l’ “héritage multiple” et souplesse de

l’implémentation

Features “core”

Page 57: Les CMS basés sur framework - PHP Tour 2011

Media• Gestion des duplicata

• Collection d’effets : crop, resize / adaptative resize, …

• Configurable pour le fonctionnement avec un CDN

• Fournit un ensemble de composants pour la contribution

Modules “built-in”

Page 58: Les CMS basés sur framework - PHP Tour 2011

User• Gestion des user et de l’authentification

• Gestion des groupes

• Gestion des permissions par user et par groupe

• Pas de gestion de profil

• Émet des signaux

Modules “built-in”

Page 59: Les CMS basés sur framework - PHP Tour 2011

GeneratorGénère par reverse engineering :• les “models” par rapport à la base de données

• les formulaires

• Un controller backoffice (CRUD) par “model”

• Un controller frontoffice par “model”

Modules “add-on”

Page 60: Les CMS basés sur framework - PHP Tour 2011

Social

• Pousse du contenu sur les réseaux sociaux

• Fournit un ensemble de “traits” qui simplifie l’implémentation

• Pas de dépendance

Modules “add-on”

Page 61: Les CMS basés sur framework - PHP Tour 2011

Resumé• Features “core” hautement génériques qui étendent Zend

Frameworksans créer de conflits

• Les modules built-in répondent aux besoins systématiques des applications web

• Les modules “add-on” permettent de composer au mieux l’application finale

Page 62: Les CMS basés sur framework - PHP Tour 2011

https://github.com/centurion-project/Centurion

Page 63: Les CMS basés sur framework - PHP Tour 2011

centurion-project.org

We are seriousabout web platforms

Page 64: Les CMS basés sur framework - PHP Tour 2011

by the way on recrute :-)

Page 65: Les CMS basés sur framework - PHP Tour 2011

The End