Per comprendere la programmazione orientata agli oggetti (OOP) il primo step è comprendere le classi e gli oggetti e la relazione tra di loro.
Cos’è una classe
La classe è un insieme di codice utilizzato per generare uno o più oggetti.
Immaginiamo una classe come un prototipo di vettura, così come da un prototipo vengono create le vetture che verranno messe in commercio, così da una classe vengono creati gli oggetti con le caratteristiche definite all’interno della classe stessa.
Sintassi di una Classe
Le classi vengono dichiarate con la keyword class. Per convenzione usiamo il PascalCase per definire il nome di una classe(primo lettera maiuscola, altre parole che iniziano con la prima lettera in maiuscola).
//dichiarazione di una classe
class NomeClasse {
// Corpo della classe
}
Un oggetto è un istanza di una classe, in poche parole significa che l’oggetto è stato creato a partire da una classe, che fornisce un modello o una struttura per il suo comportamento e le sue proprietà.
Per creare un oggetto partendo da una classe, dobbiamo utilizzare la parola chiave new seguita dal nome della classe utilizzando le parentesi tonde come se stessimo invocando una funzione
// Creazione dell'oggetto a partire da una classe
$nuovoOggetto = new NomeClasse();
Esempio con una Classe e creazione di un oggetto partendo da una classe
<?php
// Programmazione Orientata agli oggetti OOP
// Per convenzione usiamo il PascalCase (primo lettera maiuscola, altre parole che iniziano con la prima lettera in maiuscola)
class Automobile {
// Corpo della classe
}
$citroenC4 = new Automobile();
$panda4x4 = new Automobile();
var_dump($citroenC4, $panda4x4);
/* In output abbiamo due oggetti che hanno un identificatore (#1 e #2)
object(Automobile)#1 (0) {
}
object(Automobile)#2 (0) {
}
*/
?>