Pascal/Programmazione ad oggetti: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
Ciampix (discussione | contributi)
Ramac (discussione | contributi)
m sistemato
Riga 1: Riga 1:
{{Pascal}}
{{Pascal}}
La '''[[w:programmazione orientata agli oggetti|programmazione orientata agli oggetti]]''' (OOP) è un paradigma di programmazione che consente di gestire applicazioni complesse, come applicazioni molto grandi o con interfacce grafiche elaborate, con semplicità.
==Introduzione==
La programmazione orientata agli oggetti (OOP) è un nuovo paradigma di programmazione che consente di gestire applicazioni complesse, come applicazioni molto grandi o con interfacce grafiche elaborate, con semplicità. Quest'obbiettivo si raggiunge raggruppando (in ''classi'') le strutture dati e le procedure che le elaborano ottenendo appunto degli ''oggetti'' caratterizzati da proprietà (i dati) e metodi (le procedure). I moderni compilatori Pascal come FreePascal o Delphi, permettono queste funzionalità consentendo all'utente di creare applicazioni con Classi e Tipi.
<br/>Quest'obbiettivo si raggiunge raggruppando in ''classi'' le strutture dati e le procedure che le elaborano ottenendo appunto degli ''oggetti'' caratterizzati da proprietà (i dati) e metodi (le procedure).


La programmazione orientata agli oggetti è tuttavia un'estensione dell'originale linguaggio Pascal, ed è sopportata solo dai moderni compilatori come [[w:Free Pascal|Free Pascal]] o [[w:Delphi|Delphi]], che consentono all'utente di creare applicazioni con classi e oggetti.
Di seguito un semplice esempio di programma (testato con FreePascal) che implementa la programmazione a oggetti.


Di seguito un semplice esempio di programma (testato con Free Pascal) che implementa la programmazione a oggetti.
==Descrizione==
Il programma memorizza un numero (1) nella variabile privata One, lo incrementa e lo stampa.


== Esempio ==
Il programma memorizza un numero (1) nella variabile privata One, lo incrementa e lo stampa.
<source lang=pascal>
program types; // Piccolo esempio OOP
program types; // Piccolo esempio OOP
type MyType=class
type MyType=class
private
private
Riga 29: Riga 32:
One:=One+1;
One:=One+1;
end;
end;

var
var
NumberClass:MyType;
NumberClass:MyType;
Riga 38: Riga 42:
NumberClass.Free; // distrugge l'istanza
NumberClass.Free; // distrugge l'istanza
end.
end.
</source>

Il programma mostrato è banale e non ha alcuno scopo se non quello di mostrare un'esempio di sintassi OOP. Esempi molto più complessi si trovano sul sito del progetto [http://www.freepascal.org/ FreePascal] e di [http://lazarus.freepascal.org/ Lazarus], un RAD per lo sviluppo di applicazioni OOP in FreePascal.
Il programma mostrato è banale e non ha alcuno scopo se non quello di mostrare un esempio di sintassi OOP. Esempi molto più complessi si trovano sul sito del progetto [http://www.freepascal.org/ FreePascal] e di [http://lazarus.freepascal.org/ Lazarus], un RAD per lo sviluppo di applicazioni OOP in FreePascal.

== Voci correlate ==
* [http://it.wikipedia.org/wiki/Programmazione_orientata_agli_oggetti Programmazione orientata agli oggetti]
* [http://it.wikipedia.org/wiki/Free_Pascal Free Pascal]
* [http://it.wikipedia.org/wiki/Lazarus Lazarus]
* [http://it.wikipedia.org/wiki/Delphi Delphi]


[[Categoria:Pascal|Programmazione ad oggetti]]
[[Categoria:Pascal|Programmazione ad oggetti]]

Versione delle 17:09, 31 gen 2008

Indice del libro

La programmazione orientata agli oggetti (OOP) è un paradigma di programmazione che consente di gestire applicazioni complesse, come applicazioni molto grandi o con interfacce grafiche elaborate, con semplicità.
Quest'obbiettivo si raggiunge raggruppando in classi le strutture dati e le procedure che le elaborano ottenendo appunto degli oggetti caratterizzati da proprietà (i dati) e metodi (le procedure).

La programmazione orientata agli oggetti è tuttavia un'estensione dell'originale linguaggio Pascal, ed è sopportata solo dai moderni compilatori come Free Pascal o Delphi, che consentono all'utente di creare applicazioni con classi e oggetti.

Di seguito un semplice esempio di programma (testato con Free Pascal) che implementa la programmazione a oggetti.

Esempio

Il programma memorizza un numero (1) nella variabile privata One, lo incrementa e lo stampa.

 program types;  // Piccolo esempio OOP
 
 type MyType=class
       private
        One:Integer;
       public
        function Myget():integer;
        procedure Myset(val:integer);
        procedure Increase();
      end;
 function MyType.Myget():integer;
 begin
   Myget:=One;
 end;
 procedure MyType.Myset(val:integer);
 begin
   One:=val;
 end;
 procedure MyType.Increase();
 begin
   One:=One+1;
 end;

 var
   NumberClass:MyType;
 begin
   NumberClass:=MyType.Create;  // crea l'istanza dell'oggetto
   NumberClass.Myset(1);
   NumberClass.Increase();
   writeln('Result: ',NumberClass.Myget());
   NumberClass.Free;  // distrugge l'istanza
 end.

Il programma mostrato è banale e non ha alcuno scopo se non quello di mostrare un esempio di sintassi OOP. Esempi molto più complessi si trovano sul sito del progetto FreePascal e di Lazarus, un RAD per lo sviluppo di applicazioni OOP in FreePascal.