Sviluppo Avanzato di Web App con PHP5 e Symfony3

Pratical Web App Security
19 aprile 2017
IoT: usare RasBerry PI, Arduino e Intel Edison
19 aprile 2017
Web Development

Sviluppo Avanzato di Web App con PHP5 e Symfony3

PHP è oggi uno dei linguaggi più diffusi in ambito web. Con questo linguaggio sono state sviluppate alcune delle piattaforme di maggior successo nella rete come WordPress, Drupal, Joomla, Magento e viene adottato da innumerevoli imprese. Il corso vuole affrontare il linguaggio partendo dalla programmazione a oggetti, cercando di evidenziare le buone pratiche di sviluppo e le cattive pratiche da evitare, con lo scopo di portare il discente a disporre degli strumenti e la forma mentis necessari per adeguarsi alla domanda delle realtà enterprise consolidate o emergenti in Italia e nel mondo. La seconda parte del corso è dedicata a Symfony 3 uno dei framework di riferimento nel mondo PHP, grazie ad una suite di componenti indipendenti e fortemente disaccoppiati che permettono di sviluppare applicazioni web facilmente manutenibili, con un ROI molto competitivo e una solida scalabilità.

Prerequisiti

I partecipanti dovranno conoscere HTML e CSS e avere esperienza di sviluppo di siti web

Obiettivi formativi

Questo corso illustra le tecniche di programmazione ad oggetti con il linguaggio PHP e presenta il funzionamento di Symfony 3 offrendo una visione critica e ragionata delle soluzioni che vengono proposte dal framework. Il fine è quello di formare discenti in grado di iniziare a lavorare produttivamente e in maniera professionale con PHP e Symfony e di trasferirgli le competenze per vedere il framework come un utile strumento di cui servirsi anziché un rigido paradigma cui sottostare.

Programma

  • L’evoluzione dell’ecosistema PHP: dallo stack LAMP a NGINEX e PHP FPM
  • I fondamenti del linguaggio e le direttive per il coding style (psr-2)
  • Cosa NON bisognerebbe MAI fare in PHP
  • Il versionamento del codice: PHP e git
  • Interfacciarsi ai database con PDO
  • Sviluppare a Oggetti in Php
  • SPL: interfacce e classi per un nuovo standard
  • Overview dei più comuni design pattern
  • Testing in PHP con PHPUnit
  • Non reinventare la ruota, ovvero del perché è giusto usare componenti librerie e framework: Composer, Doctrine, Silex
  • Symfony 3: breve introduzione al framework e ai suoi componenti
  • Installazione e configurazione
  • Composer e autoloading
  • L’organizzazione della codebase: i bundle
  • Request, Routing, Controller e Response
  • La vita di una richiesta HTTP in symfony 3: la nostra prima pagina
  • Template con twig
  • La persistenza: ORM con Doctrine
  • Form e validazione: un semplice CRUD
  • Il Service Container, ovvero la gestione delle dipendenze attraverso dependency injection
  • Sicurezza delle web application