Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 1 di 50
  • livello avanzato
Indice lezioni

PHP e la programmazione a oggetti

PHP è un linguaggio Object Oriented dalla versione 5 e interpreta questo paradigma in modo completo ma con le peculiarità date dalla sua natura web oriented
PHP è un linguaggio Object Oriented dalla versione 5 e interpreta questo paradigma in modo completo ma con le peculiarità date dalla sua natura web oriented
Link copiato negli appunti

Prima della versione 5, PHP è stato un linguaggio sostanzialmente procedurale. Era in realtà dotato di un singolare modello ad oggetti, ma assolutamente incompleto e tale da non permettere l'applicazione dei concetti base della OOP: la Programmazione Orientata agli Oggetti.

Ora PHP dispone di un solido modello OOP, completo di tutti i più importanti strumenti che questo paradigma è in grado di offrire, anche se con alcuni limiti di carattere strutturale.

A differenza di altri linguaggi che sfruttano il paradigma OOP come Java, che nascono per applicazioni general purpose, PHP è un linguaggio di tipo Web oriented e presenta dei limiti sia nell'architettura che nella sintassi. Questo è il motivo per il quale, quando si tratta di PHP, sarebbe meglio non parlare di "Programmazione Orientata agli Oggetti" ma di "programmazione in stile OOP".

Cosa è la programmazione ad oggetti?

La Programmazione Orientata agli Oggetti, è un paradigma di programmazione in cui, a differenza di quello "procedurale", il flusso del programma non è gestito tramite chiamate a procedura sequenziali, ma è rappresentato dalla interazione e dallo scambio di messaggi tra oggetti.

Questo stile di programmazione, utilizza le classi per organizzare le strutture dei dati e le procedure che operano su di esse. Questo permette di creare un "oggetto" composto da due entità:

  1. metodi (le procedure);
  2. attributi (i dati).

Il paradigma OOP, risulta molto utile nella strutturazione di programmi di grandi dimensioni, permettendo la separazione tra dati e logica applicativa e utilizzando il principio di progettazione DRY (Do not Repeat Yourself), criterio secondo il quale andrebbe evitata ogni forma di ripetizione e ridondanza logica nell'implementazione del sorgente.

Alcune peculiarità della OOP, come l'architettura, la maggiore chiarezza e linearità del codice ad oggetti rispetto a quello procedurale, permettono di ottenere un sorgente modulare e facile da modificare. Inoltre la OOP consente di gestire meglio gli errori e semplifica il debugging.

Tra gli altri vantaggi della programmazione ad oggetti vi sono:

Vantaggio Descrizione
Riusabilità Utilizzo di parti di codice già sviluppate con relativi vantaggi nei tempi di sviluppo e scrittura.
Refactoring Permette di migliorare la progettazione o la struttura del codice esistente senza alterarne le funzionalità.
Modularità Suddivisione del programma in singole parti (oggetti) indipendenti, che interagiscono tra di loro.
Estendibilità Possibilità di aggiungere nuove funzionalità, riducendo le modifiche necessarie e senza compromettere il funzionamento del programma.
Manutenzione La OOP, utile soprattutto nella strutturazione di programmi complessi, facilita le modifiche e la manutenzione.
Efficienza Gli oggetti, grazie alla modularità, riusabilità ed alla struttura del codice, portano ad un incremento della produttività.

Scopo e obiettivi della guida

Questa guida ha lo scopo di descrivere tutti i concetti fondamentali della programmazione ad oggetti in PHP, consentendo allo sviluppatore di realizzare applicazioni object oriented con il linguaggio PHP. La trattazione verrà sostanzialmente divisa in due parti:

  1. una parte teorica dove si studieranno i concetti, le teorie, i namespaces ed il funzionamento fondamentale della OOP.
  2. una parte pratica, finale, dove affronteremo lo sviluppo di un'applicazione completa in PHP tramite l'OOP.

Nella prossima lezione continueremo a parlare delle basi della OOP, evidenziando ulteriormente le differenze tra questo paradigma e quello procedurale.

Piergiuseppe Cuozzo (PIERG), laureato in informatica nel 2006 ha svolto negli anni diverse attività di Project Manager e Web Development maturando una conoscenza professionale del linguaggio PHP e della piattaforma Prestashop. Attualmente ricopre il ruolo di consulente e programmatore Prestashop presso la web agency Iride comunicazione s.r.l.

Ti consigliamo anche