Corso attualmente non disponibile
Introduzione allo sviluppo web con PHP
Corso
A Distanza
Hai bisogno di un coach per la formazione?
Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.
Descrizione
-
Tipologia
Corso
-
Metodologia
A distanza
-
Durata
3 Giorni
La conoscenza del linguaggio di programmazione PHP è una delle competenze tecniche più richieste agli sviluppatori web poiché è quello più utilizzato al mondo.
Questo linguaggio lato server permette infatti lo sviluppo completo di pagine, siti e web app dinamiche in grado di interfacciarsi con database e gestire tutte le interazioni che normalmente un utente ha con una pagina web. Può inoltre essere usato anche per scrivere script a riga di comando o applicazioni stand-alone con interfaccia grafica.
Form, moduli di contatto, pagine di login, gestione di aree riservate, invio di mail: tutte queste e molte altre sono le competenze di chi lavora e sviluppa in PHP.
Profilo del corso
Il corso è rivolto a programmatori con esperienza in qualsiasi linguaggio.
Opinioni
Materie
- PHP
- HTML
- CSS
- Reti informatiche
- Infrastructure designing
- Server deployment
- Network
- Services designing
- Server
- Informatica
- PC
- Bootstrap
Professori
Senior Software Architect
Senior Software Architect
Programma
Blocco 1: Introduzione e sintassi base
· Il modello di sviluppo su piattaforma LAMP e affini:
o Architettura LAMP
o Open source vs. closed source: la filosofia Open Source e le sue licenze.
o Dove sono i miei dati? On-premises, shared hosting, cloud, CDN, PaaS.
o Dove posso chiedere aiuto? Documentazione e community.
· PHP: i blocchi di costruzione
o Origini, storia, governance (meccanismo RFC, PHP-FIG, ...). Gli standard.
o Il linguaggio (interpretato a tipizzazione debole, thread di esecuzione, concorrenza)
o Il modello di esecuzione in un ambiente web: il protocollo HTTP, l'interazione con l'interprete
o Costrutti di base
§ variabili, tipi di dato, operatori
§ blocchi di esecuzione, visibilità variabili, variabili globali
§ funzioni, costrutti
§ array
§ errori, eccezioni
· Primo sguardo su HTML
· Q&A
Laboratorio: creeremo un'app per la gestione di una lista della spesa. In questo blocco imposteremo l'ambiente di sviluppo, imposteremo la nostra prima paginaHTML/PHP, e creeremo e valideremo un form.
Blocco 2: feature avanzate di PHP, sicurezza
· PHP: caratteristiche indispensabili
o I cookie
o $_SESSION: salvataggio dei dati di sessione, cookie di sessione, serializzazione oggetti, funzioni magiche, sicurezza
o $_SERVER: le informazioni sul server
o $GLOBALS e le variabili globali
o Comunicazione con il database: mysqli e dbo
· Privacy e sicurezza. Vettori di attacco standard.
o A cosa serve attaccare un sito web?
o Mai fidarsi dei dati dell'utente: register_globals, whitelisting e blacklisting
o Come memorizzare le credenziali nel database, attacchi contro l'autenticazione utente (bruteforcing, timing)
o Tipi di attacco: SQL Injection, XSS, Filesystem, DoS, ...
Laboratorio: analizzeremo il codice scritto in precedenza per cercare le vulnerabilità di cui abbiamo parlato. Vedremo in che modo è possibile interagire con il database, e implementeremo un meccanismo minimale di login. Vedremo infine in quale modo è possibile fare il debug del codice PHP.
Blocco 3: programmazione a oggetti con PHP
· Programmazione a oggetti
o Classi e oggetti
§ Dichiarazione e istanziazione di oggetti
§ Passaggio di parametri, serializzazione, type hinting
§ Ereditarietà
§ Loading e autoloading
§ Namespacing
§ DBO, Propel, Doctrine
§ Alcuni pattern: singleton, factory, MVC, Dependency Injection
· Strategie di organizzazione di un progetto web
o Gestire le dipendenze di un progetto: Composer
o I framework lato server, e l'organizzazione dei file: Laravel
o I framework lato client
§ Linguaggi di templating
§ Costruzione di web app in congiunzione con framework JS: Vue.js
Laboratorio: rielaboreremo il codice scritto prima con le modalità a oggetti.
Hai bisogno di un coach per la formazione?
Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.
Introduzione allo sviluppo web con PHP