Too Cool for Internet Explorer
:: Programming ::
Introducing OOP

Brought to you by Salvatore La Bua

Programming -> Introducing OOP

Introduzione alla programmazione orientata agli oggetti (OOP)

La programmazione orientata agli oggetti, al contrario di quella procedurale, incapsula i dati e le funzioni in entita' chiamate classi.
In questo modo, classi diverse possono interagire tra loro pur non conoscendo vicendevolmente l'effettiva implementazione delle stesse.
Ad esempio, una classe produce come output (dopo una determinata elaborazione) un numero reale, il quale verra' a sua volta elaborato da un'altra classe che ne potrebbe calcolare l'elevamento ad un certo esponente. Ciascuna classe e' un oggetto indipendente e come tale ignora il modo in cui possano venir generati gli output delle singole classi.
Detto questo, avendo definito il modo in cui le classi si interfacciano tra loro, e' possibile capire come esse possano essere implementate indipendentemente le une dalle altre; nella programmazione procedurale, invece, non esiste una ben definita identificazione delle entita' in gioco, in quanto sono presenti soprattutto funzioni per l'elaborazioni dei dati, salvo alcuni casi particolari.

In C o anche in C++, l'esempio piu' semplice di oggetto (verra' specificato in seguito la differenza tra struttura e classe) si realizza con la parola struct.
Realizziamo adesso la struttura Time, tale che contenga i valori delle ore, dei minuti e dei secondi:

struct Time {
   int ore;
   int minuti;
   int secondi;
};

Come penso sia evidente, la struttura di tipo Time e' composta da tre membri, valori interi che rappresenteranno le ore, i minuti e i secondi.
Per ottenere l'oggetto strutturaOrario di tipo Time si puo' procedere come segue:

Time strutturaOrario;

Per impostare invece i valori dei singoli membri:

strutturaOrario.ore = 10;
strutturaOrario.minuti = 30;
strutturaOrario.secondi = 0;


A questo punto la struttura di tipo Time contiene i valori 10, 30 e 0 relativi rispettivamente ad ore, minuti e secondi.

Top

Google
WWW Shogoki.it