cos’è l’incapsulamento?

Il processo per cui si nascondono dettagli realizzativi, rendendo campi e metodi privati e creando un’interfaccia pubblica (insieme di metodi pubblici tra cui setter e getter) per accedere ad essi indirettamente, prende il nome di incapsulamento.

perché incapsulare?

  • Si semplifica e modularizza il lavoro di sviluppo (perchĂ© non è necessario conoscere i dettagli implementativi di una classe per crearne un oggetto).
  • Si creano delle “scatole nere”. Avendo meno informazioni a disposizione, si facilita il lavoro di gruppo e l’aggiornamento (maintenance) del codice. Inoltre il debug è piĂą facile.

Esempio

I getter e i setter garantiscono la consistenza dei dati, fanno da filtro tra i dettagli implementativi e ciò che vede l’utente esterno e facilitano la modifica del codice (perché le chiamate ai getter e ai setter rimangono le stesse, ma i loro codici interni cambiano).