Grazie per aver inviato la vostra richiesta! Un membro del nostro team vi contatterà a breve.
Grazie per aver inviato la vostra prenotazione! Un membro del nostro team vi contatterà a breve.
Struttura del corso
Orientato agli oggetti Programming
- Classi e oggetti
- Proprietà e metodi
- Metodi del costruttore e del distruttore
- Ereditarietà delle classi
- Ambiti di attributi e metodi (visibilità)
- Gestione degli errori con eccezioni
- Spazi dei nomi
Presentazione del Symfony famework
- Introduzione del quadro Symfony e del suo ecosistema
- Installazione della Symfony « Standard Edition Distribution »
- Scoprire l'architettura del progetto Symfony (applicazione, bundle, librerie, bundle ecc.)
- Informazioni sul flusso di lavoro di elaborazione delle richieste HTTP
- Comprendere il concetto di ambiente (sviluppo, produzione e collaudo)
- Introduzione alla codifica e alle convenzioni di denominazione dei file
- Alla scoperta del concetto di « Bundle »
Debug del codice
- Ottenere aiuto dalla « Web Debug Toolbar »
- Analisi dei registri registrati
- Profilazione delle richieste HTTP grazie all'applicazione « Web Profiler »
- Individuazione dei problemi grazie a errori espliciti ed eccezioni
- Utilizzo delle funzionalità dei componenti Debug e VarDumper
Configurazione dell'applicazione
- Confronto tra i formati di configurazione integrati supportati: XML, YAML e PHP
- Configurazione dell'applicazione grazie ai parametri globali
- Route e URL dell'applicazione di configurazione con annotazioni
- Sovrascrivere la configurazione definita da un « bundle » incorporato o di terze parti
Generazione di contenuti per l'utente finale
- Introduzione al motore dei modelli Twig
- Confronto tra Twig e le strategie di template PHP grezzi
- Accesso alle variabili globali dai modelli Twig (richiesta, sessione, utente)
- Utilizzo di tag, filtri e funzioni per generare e formattare i contenuti in un modello Twig
- Rendere i modelli veramente estensibili grazie alla funzione di ereditarietà dei modelli
- Suddivisione dei modelli in blocchi di modelli più piccoli per evitare duplicazioni di codice
- Rendering di un controller Symfony dall'interno di un modello Twig
- Generazione di URL in base alla configurazione delle route dell'applicazione
- Rendering di Symfony moduli con helper personalizzati per la visualizzazione Twig
Sviluppo del controller e analisi della richiesta
- Progettazione di una classe di controller con i relativi metodi di azione
- Mappatura dei pattern URL ai controller Symfony grazie alle annotazioni
- Generazione di risposte grezze e risposte basate su modelli Twig
- Accesso alle informazioni del client dall'oggetto Request
- Lettura e scrittura dei dati della sessione
- Lettura e scrittura dei dati dei cookie
- Attivazione di una pagina di errore 404 quando la risorsa non viene trovata
- Attivazione di un reindirizzamento interno a un altro controller per evitare duplicazioni di codice
- Reindirizzamentodell'utente a un'altra pagina
Interagire con l'Utente Finale grazie ai Moduli
- Alla scoperta della componente « Form »
- Progettazione ed elaborazione di semplici moduli Web
- Aggiunta di vincoli di convalida sui dati dei campi modulo inviati
- Prototipazione del rendering del modulo grazie agli helper di visualizzazione Twig
- Raccolta dei dati inviati dal modulo ed elaborazione degli stessi
- Invio del modulo dati validati e filtrati via e-mail a qualche destinatario
Internazionalizzazione e localizzazione dell'interfaccia utente
- Alla scoperta della componente « Traduzione »
- Modifica delle impostazioni locali dell'utente predefinito
- Definizione di chiavi di traduzione astratte personalizzate nei modelli Twig
- Gestione di traduzioni dinamiche, comprese le frasi pluralizzate
Inserimento delle dipendenze e contenitore di servizi
- Informazioni sul principio di inserimento delle dipendenze
- Introduzione al contenitore di servizi Symfony
- Elencare tutti i servizi integrati Symfony grazie agli strumenti a riga di comando
- Registrazione di nuovi servizi aziendali personalizzati nel contenitore di inserimento delle dipendenze
- Accesso a un servizio registrato dal contenitore del servizio
- Creazione e accesso ai parametri di configurazione globali dal contenitore
Stipulare un'assicurazione di qualità con test automatizzati
- Alla scoperta del framework di automazione dei test PHPUnit
- Comprendere gli obiettivi dell'automazione dei test (unit test e test funzionali)
- Configurazione di un gruppo di test automatizzati
- Progettazione ed esecuzione di un gruppo di unit test
- Progettazione ed esecuzione di una suite di test funzionali
- Generazione di report di code coverage
Interazione con l'utente finale e i moduli
- Progettazione ed elaborazione di moduli web
- Automatizzare il rendering dei moduli con gli helper della visualizzazione Twig
- Personalizzazione del rendering dei moduli con temi per moduli Twig integrati e personalizzati
- Configurazione dei tipi di campo modulo come servizi
- Applicazione di regole di vincolo di convalida predefinite ai dati inviati
- Applicazione di regole di vincolo di convalida personalizzate ai dati inviati
- Contestualizzare la validazione dei dati grazie ai gruppi di validazione
Limitazione di Access alle aree protette dell'applicazione
- Introduzione ai principi di autenticazione e autorizzazione
- Protezione di alcune pagine dell'applicazione grazie a una strategia di autenticazione basata su moduli
- Implementazione del sottocomponente Security Guard per gestire l'autenticazione
- Impostazione di un criterio di controllo di accesso in base ai ruoli dell'utente
- Test delle autorizzazioni dell'utente da un controller e da un modello Twig
- Registrazione delle regole di autorizzazione personalizzate grazie ai « votanti » di sicurezza
Miglioramento delle prestazioni delle applicazioni con HTTP Caching ed ESI
- Guida introduttiva ai flussi di lavoro di memorizzazione nella cache HTTP
- Alla scoperta dei diversi tipi di sistemi di cache
- Confronto tra le strategie di scadenza e di convalida della cache
- Applicazione dei vincoli della cache di scadenza e convalida alle pagine Web generate
- Memorizzazione nella cache di frammenti di pagina grazie alla tecnologia ESI (« Edge Side Includes »)
- Installazione e configurazione della cache del proxy inverso incorporata in Symfony
Interrogare un Sistema Relazionale Database con la Dottrina
- Alla scoperta delle basi della Dottrina ORM
- Comprendere i concetti di «entità» e «repository»
- Automatizzare le classi PHP e SQL la generazione di codice delle query con Doctrine
- Persistenza dei dati nel database grazie all'entity manager ORM di Doctrine
- Recupero dei dati dal database grazie a Doctrine
- Costruire ed eseguire query personalizzate SQL grazie all'oggetto Doctrine Query Builder
Requisiti
- Conoscenza del concetto di Object Oriented Programming
- Conoscenza di PHP
- Conoscenza di base di qualsiasi framework MVC/MVP
28 ore
Recensioni (1)
Abhinav did an excellent job! Within four days he covered all the important concepts that are used in REAL software development. I am so thankful have him as our trainer!