loving beautiful code - alla scoperta di laravel 5 - francesco malatesta - codemotion roma 2015

12
Loving Beautiful Code Alla Scoperta di Laravel 5 Francesco Malatesta – 27 Marzo 2015 – Codemotion Roma

Upload: codemotion

Post on 15-Jul-2015

149 views

Category:

Software


1 download

TRANSCRIPT

Loving Beautiful CodeAlla Scoperta di Laravel 5

Francesco Malatesta – 27 Marzo 2015 – Codemotion Roma

Chi Sono?

Francesco MalatestaDeveloper, Curious, Enthusiast

Founder @ Laravel-Italia.it

Laravel?

• Framework PHP MVC

• Creato da Taylor Otwell

• Framework Full-Stack

“The PHP Framework For Web Artisans”

• Sintassi Espressiva

Perché mi sono avvicinato a Laravel?

• Sintassi espressiva e facile da ricordare;

• Curva di apprendimento molto alta

• Documentazione chiara (anche se non troppo completa);

• Approccio collaborativo della community;

• Zozzate (perché «fatto» è meglio di «perfetto», ma don’t try this at home);

Evoluzione di Laravel

• Versione 3: Moduli, download diretto dell’archivio;

• Versione 4: Composer, packages e rivoluzione dell’architettura;

Versione 5(oggi)

Novità di Laravel 5

• Astrazione ad un livello superiore con Contracts;

• Gestione del filesystem con Flysystem;

• Gestione autenticazione social con Socialite;

• Method Injection;

• Sviluppo di Features delle Versioni Precedenti• Migrations System;• Eloquent ORM;• Artisan;• Command Bus

Hands on Code! – Prima Parte

• Routing

• Model

• View

• Controller

Punto di Forza di Laravel

Service Container(IoC Container)

(quello vero)

Service Container?

• Tool per la gestione nel codice delle dipendenze di una classe;

• «Inietta» le dipendenze via costruttore o tramite un metodo;

• Si occupa di istanziare le classi automaticamente (resolving);

• Permette di definire logiche personalizzate di creazione delle singole istanze;

Hands on Code! – Seconda Parte

• Service Container

• Risoluzione di Dipendenze

• Risoluzione Personalizzata;

• Binding di Interfacce ad Implementazioni;

«Quando non devo usare Laravel?»

• Progetti eccessivamente piccoli in cui è importante la dimensione finale del package;

• Non vuoi usare PHP;

• Non vedo perché non dovresti.

Grazie a Tutti.