Differenze tra le versioni di "Pascal/Concetti fondamentali"

nessun oggetto della modifica
(Nuova pagina: {{Pascal}} La programmazione orientata agli oggetti gra attorno a tre concetti fondamentali e di cruciale importanza. Questi concetti sono: *L'incapsulamento *L'ereditarietà *Il poli…)
 
*L'ereditarietà
*Il polimorfismo
 
==L'incapsulamento==
Per un buon approccio alla programmazione agli oggetti, la prima cosa che si deve fare è stabilire quali sono gli oggetti, cosa fanno, quali sono le loro caratteristiche e come interagiscono fra di loro.
 
Abbiamo detto che gli oggetti sono strutture che contengono '''campi''' e '''metodi'''. Per campi si intende variabili (in senso molto lato) o meglio, puntatori a zone di memoria. I metodi invece sono le procedure, le funzioni, i costruttori e i distruttori (concetti che vedremo più avanti).
Quindi i metodi sono la parte attiva di un oggetto, che possono modificare le caratteristiche di questo oggetto, cioè possono modificare i campi. Il procedimento con la quale si incapsulano i metodi e i campi in un oggetto, si chiama '''incapsulamento'''. Per essere più precisi, a venire incapsulata è la '''classe''', che sarebbe un "tipo" di oggetto. Sebbene nella sintassi del Turbo Pascal venga utilizzata la parola chiave <code>object</code> per definire una classe, ciò non deve creare perplessità.
Un oggetto per essere creato ha bisogno di essere istanziato da una classe, quindi per esempio avendo una classe Studente, da questa classe possono venire istanziati due oggetti: Francesco e Giorgio.
 
Qui di seguito un esempio in codice su come creare un oggetto (classe):
 
<code>
TYPE TStudente = OBJECT
Nome,Cognome: String;
AnnoDiNascita: integer;
FUNCTION GetNome : String;
FUNCTION GetCognome : String;
FUNCTION GetAnnoNascita : integer;
PROCEDURE SetNome(nome:string);
PROCEDURE SetCognome(cognome:string);
PROCEDURE SetAnnoNascita(anno:integer);
END;
</code>
In questo modo abbiamo definito la classe TStudente che contiene i campi Nome, Cognome e AnnoDiNascita, e i metodi per memorizzare i dati o per ottenerli dall'esterno.
 
 
[[Categoria:Pascal|Concetti fondamentali della OOP]]
381

contributi