Corso PHP
CORSO PHP (aggiornato sempre all’ultima versione stabile)
Il PHP è un linguaggio di programmazione, ovvero uno scripting “server-side” molto utilizzato, OpenSource e gratuito. PHP è l’acronimo di Hypertex Prepropocessor ed è utilizzato fondamentalmente nello sviluppo web ambito BACK-END.
I suoi principali punto di forza sono tre:
- Può essere completamente integrato nell’HTML
- Può essere utilizzato su tutti i sistemi operativi compresi Linux e MacOS; lavora con quasi tutti i server web
- Supporta una completa gamma di Database
In generale con PHP è possibile raccogliere dati da un forum, creare e sviluppare pagine con contenuti dinamici (es. creare piattaforme web con registrazione utente e creazione user), mandare e ricevere cookies e molto altro ancora.
La richiesta di sviluppatori back-end e PHP è molto alta sul mercato del lavoro ed è ormai una tecnologia utilizzatissima nei progetti web.
Requisiti per gli studenti: conoscenze basi di almeno un linguaggio di programmazione
Obiettivi del corso: acquisire le competenze per lo sviluppo web con PHP 8 ad oggetti
Corso PHP erogato solo per aziende e su richiesta. Modalità virtual classroom online o frontale.
E’ necessario munirsi di pc portatile (Windows, Mac o Linux) per seguire le lezioni e sviluppare durante il corso.
Vuoi essere ricontattato?
Lasciaci il tuo numero telefonico e la tua email, ti richiameremo nelle 24h:
Programma Didattico (40 ore):
Modulo 1 – Fondamenti e contesto
-
Motivazioni per l’uso di OOP in PHP — limiti del paradigma procedurale
-
Introduzione agli oggetti: classi, istanze, responsabilità
-
Cenni sulle novità di PHP 8 / 8.x rilevanti per l’OOP
-
Type system avanzato: union types,
mixed,static,never -
Named parameters, nullsafe operator, match expressions
-
Constructor property promotion (definizione proprietà direttamente nel costruttore)
-
Novità introdotte in PHP 8.3/8.4 (tipizzazione delle costanti, deep-cloning delle proprietà readonly, property hooks, visibilità asimmetrica)
-
Modulo 2 – Basi di programmazione a oggetti
-
Definizione di classe
-
Creazione di oggetti (istanze)
-
Proprietà (attributi / campi)
-
Metodi (funzioni dell’oggetto)
-
Differenza tra membri statici e istanza
-
Introduzione ai tipi (type hints) per parametri e ritorni
Modulo 3 – Costruttori, visibilità e principi di incapsulamento
-
Metodo magico
__construct()e, se rilevante,__destruct() -
Promotion delle proprietà nel costruttore (PHP 8)
-
Visibilità:
public,protected,private -
Costanti di classe (incluse novità di PHP 8.3/8.4)
-
Metodi getter / setter (pattern convenzionali)
-
Progetti di incapsulamento: best practice
Modulo 4 – Ereditarietà, overriding e classi finali
-
Ereditarietà semplice (extends)
-
Overriding di metodi
-
Uso di
parent:: -
Keyword
final(classi finali, metodi finali) -
Tipi covarianti / controvarianti nei metodi (parametri / ritorni) con il tipo (PHP 8)
-
Esercizi pratici
Modulo 5 – Classi astratte, interfacce e polimorfismo
-
Classi astratte: definizione, metodi astratti
-
Interfacce: regole, implementazione
-
Polimorfismo: il “contratto” di interfacce e classi astratte
-
Uso combinato: interfacce + ereditarietà
-
Multipli contratti con interfacce
-
Esercizi guidati
Modulo 6 – Trait, composizione, design e operazioni sugli oggetti
-
Trait (reuse di metodi)
-
Composizione vs ereditarietà
-
Delegation / design pattern semplici (es. Strategy, Decorator)
-
Type hinting avanzato (tipi union, interfacce,
static) -
Clonazione con
__clone() -
Deep cloning, oggetti immutabili
-
Esercitazioni pratiche
Modulo 7 – Integrazione, casi reali e best practice
-
Refactoring di codice procedurale in OOP
-
Caso di studio completo: progettazione di un mini modulo (es. gestione utenti, entità articolo, etc.)
-
Gestione delle eccezioni e validazioni nei metodi
-
Design orientato agli oggetti e principi SOLID (introduzione)
-
Testing di unità su classi (cenni)
Docente Programmatore PHP senior con pluriennale esperienza nel settore
