29
1/29 #FuelRMLL 13e Rencontres Mondiales du Logiciel Libre FuelPHP : A framework, yes – Automagic, no! Julian Espérat Sébastien Drouyer Genève 10 juillet 2012

RMLL 2012 - Conférence FuelPHP

Embed Size (px)

DESCRIPTION

L'équipe Novius OS a animé aux 13ème Rencontres Mondiales du Logiciel Libre à Genève une conférence dédiée au framework FuelPHP.FuelPHP est un nouveau framework PHP, poussé par sa communauté et à la personnalité forte : "lightweight, load what you need and configuration over convention. No automagic here !". FuelPHP sera-t-il à PHP ce que Rails est à Ruby, un framework sexy et à succès ? Pendant cette conférence, nous regarderons de plus près ce qui différencie PHP des autres frameworks et pourquoi il a beaucoup fait parler de lui. Nous nous pencherons aussi sur le futur du framework, qu’en attendre dans les mois et années à venir.

Citation preview

Page 1: RMLL 2012 - Conférence FuelPHP

1/29#FuelRMLL

13e Rencontres Mondiales du Logiciel Libre FuelPHP : A framework, yes – Automagic, no!

Julian EspératSébastien Drouyer

Genève10 juillet 2012

Page 2: RMLL 2012 - Conférence FuelPHP

2/29#FuelRMLL

Vos questions sur Twitter #FuelRMLL

Page 3: RMLL 2012 - Conférence FuelPHP

3/29

#FuelRMLL

Sommaire

Introduction

Oil : la ligne de commande

Pourquoi nous aimons FuelPHP

Les Packages et l'ORM

Le futur de FuelPHP

Questions

Page 4: RMLL 2012 - Conférence FuelPHP

4/29

#FuelRMLL

Conférenciers

Sébastien Drouyer@sdrdis

Julian Espérat@savageman86

Page 5: RMLL 2012 - Conférence FuelPHP

5/29

#FuelRMLL

À propos de Novius

Créée en 1996, basée à Lyon et Paris, 40 personnes dont 25 développeurs.

Deux métiers : agence web, édition logicielle.

Nos clients : Les Échos, Cinémathèque Française, FIS...

Nos technos : web et libres uniquement (LAMP, HTML, CSS, JS).

Page 6: RMLL 2012 - Conférence FuelPHP

6/29

#FuelRMLL

À propos de Novius OS

8 ans d'expérience dans le CMS.

CMS open-source nouvelle génération, conçu pour l'Internet multi-canal.

Entre le CMS et le web OS.

Basé sur les dernières technologies web : HTML5, jQuery UI, Wijmo et FuelPHP.

Page 7: RMLL 2012 - Conférence FuelPHP

7/29

#FuelRMLL

Genèse de Fuel PHP

« FuelPHP est né de la frustration des développeurs avec les frameworks actuels. »

1118 watchers et 166 forks sur Github

2336 followers sur Twitter

Création fin 2010

1.0 – 31 juillet 2011

1.1 – 13 décembre 2011

1.2 – 3 juin 2012

Page 8: RMLL 2012 - Conférence FuelPHP

8/29

#FuelRMLL

Core Team de FuelPHP

Dan Horrigan / CodeIgniter, PyroCMS

Harro Verton / @WanWizard / Data mapper ORM, ExiteCMS

Phil Sturgeon / @philsturgeon / PyroCMS, Code Igniter

Jelmer Schreuder / @jschreuder

Frank de Jonge / @frankdejonge / the doc guy

Page 9: RMLL 2012 - Conférence FuelPHP

9/29

#FuelRMLL

Philosophie de FuelPHP

S’inspire des meilleures idées des autres frameworks

Nouveau départ avec PHP 5.3

Simple, flexible et léger

"community-driven"

Configuration over convention – no automagic!

Page 10: RMLL 2012 - Conférence FuelPHP

10/29

#FuelRMLL

Inspiration des autres frameworks

Simplicité

Léger et rapide

Facile à apprendre

Peu de dépendances serveur

Page 11: RMLL 2012 - Conférence FuelPHP

11/29

#FuelRMLL

Inspiration des autres frameworks

Flexibilité dans la structure des fichiers

Hiérarchie des répertoires

Excellent Query Builder

Page 12: RMLL 2012 - Conférence FuelPHP

12/29

#FuelRMLL

Inspiration des autres frameworks

Ligne de commande

Migrations

Scaffolding

ORM (Active Record)

Page 13: RMLL 2012 - Conférence FuelPHP

13/29

#FuelRMLL

Inspiration des autres frameworks

HMVC / REST

Templates

Authentification / ACL

Envoi de mail

Page 14: RMLL 2012 - Conférence FuelPHP

14/29

#FuelRMLL

Sommaire

Introduction

Oil : la ligne de commande

Pourquoi nous aimons FuelPHP

Les Packages et l'ORM

Le futur de FuelPHP

Questions

Page 15: RMLL 2012 - Conférence FuelPHP

15/29

#FuelRMLL

Oil : la ligne de commande FuelPHP

Package et utilitaire de FuelPHP

Inspiré de Ruby on Rails

Philosophie : optionel, ligne de commande pour simplifier le développement

Page 16: RMLL 2012 - Conférence FuelPHP

16/29

#FuelRMLL

Sommaire

Introduction

Oil : la ligne de commande

Pourquoi nous aimons FuelPHP

Les Packages et l'ORM

Le futur de FuelPHP

Questions

Page 17: RMLL 2012 - Conférence FuelPHP

17/29

#FuelRMLL

Syntaxe sexy et concise

Page 18: RMLL 2012 - Conférence FuelPHP

18/29

#FuelRMLL

Utilisation d'un fichier de configuration

Page 19: RMLL 2012 - Conférence FuelPHP

19/29

#FuelRMLL

Exemples de driversnatifs

Config : php, yml, json, ini

Session : cookie, file, memcached, db, redis

Cache : file, memcached, apc, redis

Image : gd, imagick, imagemagick

View : php

Parser : twig, mustache, markdown, smarty, dwoo, haml, phptal

Page 20: RMLL 2012 - Conférence FuelPHP

20/29

#FuelRMLL

Le fichier Config_Json de Fuel PHP

Page 21: RMLL 2012 - Conférence FuelPHP

21/29

#FuelRMLL

Appels statiques et DI

Injection de dépendance : choix de l'instance et de sa configuration sans réécrire de code pour celui qui l'utilise

Page 22: RMLL 2012 - Conférence FuelPHP

22/29

#FuelRMLL

Extension d'une classe du Core

Page 23: RMLL 2012 - Conférence FuelPHP

23/29

#FuelRMLL

Page 24: RMLL 2012 - Conférence FuelPHP

24/29

#FuelRMLL

Sommaire

Introduction

Oil : la ligne de commande

Pourquoi nous aimons FuelPHP

Les Packages et l'ORM

Le futur de FuelPHP

Questions

Page 25: RMLL 2012 - Conférence FuelPHP

25/29

#FuelRMLL

Les Packages et l'ORM

Possibilité d'ajouter des packages● Tous dans fuel/packages/

● Simple modification dans le fichier de configuration

Packages installés de base● Auth

● Email

● Oil

● Orm

● Parser

Page 26: RMLL 2012 - Conférence FuelPHP

26/29

#FuelRMLL

Les Packages et l'ORM

Orm● Très largement inspiré d'Active Record

● Gère les relations entre objets

● has_one● belongs_to● has_many● many_to_many

● Gère les observers

● Comportement sur les colonnes● CreatedAt : date de création● UpdatedAt : date de mise à jour

Page 27: RMLL 2012 - Conférence FuelPHP

27/29

#FuelRMLL

Sommaire

Introduction

Oil : la ligne de commande

Pourquoi nous aimons FuelPHP

Les Packages et l'ORM

Le futur de FuelPHP

Questions

Page 28: RMLL 2012 - Conférence FuelPHP

28/29

#FuelRMLL

Futur de FuelPHP

Composer / PSR-1

Package ORM en mode legacy

Refactoring Asset / Pagination / Profiler

Réécriture de Validation / Form / Fieldset

Page 29: RMLL 2012 - Conférence FuelPHP

29/29#FuelRMLL

Merci pour votre attention. Des questions ?

http://www.fuelphp.com http://www.novius-os.org

Sébastien Drouyer : @sdrdis Julian Espérat : @savageman86

Genève10 juillet 2012