Tutorial PHP - Programmazione orientata agli oggetti: Fondamenti e pratica

Visibilità delle proprietà in PHP – public, private e protected

Tutti i video del tutorial Tutorial PHP – Programmazione ad oggetti: Concetti base e pratica

La visibilità delle variabili, in particolare per quanto riguarda proprietà e metodi nella programmazione orientata agli oggetti, è un concetto chiave di grande importanza per ogni sviluppatore. In particolare in PHP, i modificatori di visibilità public, private e protected determinano chi può accedere a determinate proprietà e metodi. Questi concetti aiutano a implementare l'incapsulamento dei dati, rendendo i programmi orientati agli oggetti più robusti e manutenibili. In questa guida imparerai come vengono utilizzati questi modificatori e quali effetti possono avere sulla struttura della tua programmazione.

Principali risultati

  • public: le proprietà sono accessibili da ovunque.
  • private: le proprietà sono accessibili solo all'interno della stessa classe.
  • protected: le proprietà sono accessibili all'interno della classe e nelle classi derivate.

Guida passo-passo

1. Creare una semplice classe con una proprietà pubblica

Per iniziare, creiamo una classe Auto in cui definiremo una proprietà pubblica chiamata Velocità. Questo ti darà una chiara idea di come puoi accedere a questa proprietà dall'esterno.

Visibilità delle proprietà in PHP – public, private & protected

Ora puoi creare un oggetto di questa classe:

Visibilità delle proprietà in PHP – public, private & protected

Se ora imposti la velocità di Auto a 30, 50 o anche 130, non hai restrizioni di accesso: questa è la forza della visibilità public.

2. Introduzione della velocità massima con una proprietà privata

Ora aggiungiamo una proprietà privata velocitàMassima e modifichiamo il metodo in modo che imposti solo le velocità consentite. In questo modo puoi assicurarti che vengano assegnati solo valori validi.

Con questo metodo puoi impostare la velocità assicurandoti nel contempo che non si verifichino errori dovuti a valori troppo alti.

Visibilità delle proprietà in PHP – public, private & protected

3. Utilizzo di metodi Getter e Setter per proprietà private

Poiché la velocitàMassima è privata, puoi renderla accessibile solo tramite metodi all'interno della classe. L'esempio seguente mostra come implementare metodi Getter e Setter.

Visibilità delle proprietà in PHP – public, private & protected

Attraverso questi metodi raggiungi l'incapsulamento e il controllo sulle proprietà dall'esterno.

Visibilità delle proprietà in PHP – public, private & protected

4. Comprendere il modificatore protected

Ora consideriamo il modificatore protected. Questo consente alle classi che ereditano da altre classi di accedere a determinate proprietà. Ciò significa che le subclassi possono continuare a utilizzare o sovrascrivere un metodo o una proprietà specifica.

Visibilità delle proprietà in PHP – public, private & protected

In questo caso, l'auto da corsa può accedere alla proprietà protetta, mentre le classi esterne non possono. Questo consente di codificare un comportamento mirato per le classi derivate.

5. Decisione sulla visibilità

Una decisione importante che devi prendere riguarda la visibilità delle tue proprietà. In linea di massima, dovresti utilizzare private, a meno che non sia ovvio che una proprietà sia necessaria all'interno di un'ereditarietà. In questo caso scegli protected.

Visibilità delle proprietà in PHP – public, private & protected

Tieni presente che se sei in fase di manutenzione o stai lavorando a una nuova funzionalità, puoi sempre modificare i tuoi controlli di accesso in seguito, se necessario.

Riassunto – Visibilità delle proprietà: public, private e protected in PHP

La visibilità delle proprietà in PHP è fondamentale per comprendere l'incapsulamento dei dati e la programmazione orientata agli oggetti. Con i modificatori public, private e protected puoi ottenere precisione e controllo sull'accesso a proprietà e metodi nelle tue classi. Applicando correttamente questi principi, migliorerai notevolmente la manutenibilità e la sicurezza del tuo codice.

Domande frequenti

Cosa significa public in PHP?public significa che la proprietà o il metodo è accessibile da ovunque.

Cosa significa private in PHP?private significa che la proprietà o il metodo può essere chiamato solo dalla propria classe.

Cosa significa protected in PHP?protected significa che la proprietà o il metodo può essere chiamato dalla propria classe e dalle classi derivate.

Quando dovrei usare private?Dovresti usare di default private per massimizzare visibilità e controllo.

Quando posso passare a protected?Passa a protected quando una proprietà è necessaria all'interno di classi derivate e desideri impedire l'accesso dall'esterno.