mirror of
https://github.com/Steffo99/appunti-magistrali.git
synced 2024-11-28 21:04:19 +00:00
29 lines
783 B
Markdown
29 lines
783 B
Markdown
# Introduzione agli oggetti
|
|
|
|
Per rendere più comoda la scrittura di codice, dobbiamo avere un meccanismo che protegga alcune componenti del codice dal misuso.
|
|
|
|
Supponiamo di voler implementare un contatore.
|
|
|
|
Esso avrà:
|
|
|
|
- 1 attributo
|
|
- Valore contatore
|
|
- 3 operazioni
|
|
- Definizione
|
|
- Incremento
|
|
- Lettura
|
|
|
|
Devo prevenire tutte le operazioni all'infuori di queste, come il decremento.
|
|
|
|
In C non possiamo farlo: nulla impedisce al programmatore di fare ad esempio `cont++`!
|
|
|
|
Ci serve allora una soluzione.
|
|
Immaginiamoci un linguaggio che abbia costrutti per:
|
|
|
|
- livelli più alti di astrazione
|
|
- protezione migliore dei dati
|
|
- migliore riutilizzo del codice
|
|
|
|
Vogliamo che ci dia un errore se viene eseguito `cont++`, ad esempio.
|
|
|
|
Vogliamo definire dei **vincoli**.
|