Sommario
Nel Programmazione orientata agli oggetti, gli oggetti sono rappresentazioni astratte di elementi, che definiamo attraverso i loro attributi e che hanno una serie di metodi che ci consentono di manipolare e avere accesso a questi attributi.esistere 3 caratteristiche che ci danno la ragione per usare i nostri oggetti invece di dipendere dalle funzioni, librerie e globali che il linguaggio ci mette a disposizione, questi sono:
- Polimorfismo: uso delle stesse operazioni su oggetti diversi di classi diverse.
- Incapsulamento: nascondere i suoi attributi da entità esterne all'oggetto in modo che possa proteggerli.
- Eredità- Creare oggetti più specifici che ereditano gli attributi ei metodi di base di una classe superiore più generale.
Questo termine significa che ha molte forme, questo significa che possiamo eseguire operazioni che funzioneranno in modo diverso a seconda del tipo o della classe dell'oggetto. Facciamo un semplice esempio, immaginiamo di avere un carrello della spesa, poi definiamo come vogliamo che si ottengano i dati di prezzo e il prodotto desiderato, come vediamo nell'immagine seguente che creiamo una tupla.
Questo consiste nel nascondere al mondo esterno i dettagli interni della classe, in modo che sia accessibile solo dai propri oggetti e metodi, in questo modo possiamo lavorare con le classi senza dover conoscere il loro funzionamento interno, eliminando la complessità dell'implementazione e proteggendo la logica all'interno dei nostri oggetti.
Ci permette anche lavorare con la certezza che i dati all'interno del nostro oggetto non verranno modificati, poiché se funzionano in modo astratto saremo in grado di istanziare più volte e ogni istanza è totalmente individuale.
Diamo un'occhiata a un esempio di un oggetto che non è incapsulato:
Ora con un incapsulamento, diamo un'occhiata a come funzionerebbe l'intero flusso del programma.