RELAZIONE CONCLUSIVA ANCARANI SILVIA Con il linguaggio in java si inizia ad affrontare la programmazione ad oggetti e a pensare che ogni classe contiene e crea oggetti. L’oggetto è dotato di un’interfaccia visiva ed una parte nascosta che ne rappresenta il funzionamento. Esso offre all’utente un insieme di operazioni a seconda del tipo di oggetti che rappresenta. Un sistema ad oggetti è costituito appunto da più oggetti che interagiscono tra loro scambiandosi informazioni. Al contrario degli algoritmi gli oggetti dipendono dal tempo e si comportano in modo diverso a seconda delle circostanze. Possiamo inoltre avere oggetti composti che sono costituiti da più oggetti ATOMICI, ossia che hanno un solo valore. Le classi in java vengono usate sia nella loro parte statica come componenti SW che nella parte dinamica, come costruttori di oggetti come tipo di dato astratto. Le classi possono essere raggruppate in un package, ossia un’unità concettuale. Nella creazione degli oggetti occorre prima definire il riferimento, ossia il tipo che dà il nome alla classe che fa da modello, in seconda fase creo l’oggetto dinamicamente. Ora che abbiamo appreso il concetto di programmazione ad oggetti, è facile capire i seguenti concetti. PROGETTAZIONE INCREMENTALE: una volta creato un programma che funziona, non lo modifico più ma posso aggiungere nuovi metodi. RIUSABILITA’: a partire dalle classi già definite si cerca di definire le sottoclassi relative ad esse ma più precise. Si può qui introdurre il concetto di eredità, ossia si parte da una classe base, per esempio “persone”, e si vuole creare una sottoclasse studenti: quest’ultima eredita dalla prima tutte le proprietà ed i metodi, ma può anche aggiungerne dei nuovi, senza però eliminare i metodi già esistenti. Definiamo le interfacce come un insieme di classi che ne definiscono dei metodi: in questo modo vengono riscritti i metodi più volte ed è uno svantaggio. Ora che abbiamo gli strumenti necessari, possiamo utilizzare la grafica in java creando finestre, disegnando figure e quindi utilizzando colori etc... Ogni tipo di classe crea l’oggetto voluto e ad esso applica i metodi opportuni per realizzare lo scopo del progetto. In java si possono fare anche delle applicazioni grafiche, che sono eseguibili ovunque, o degli APPLET che sono applicazioni che fanno parte di una pagine di Internet e che quindi necessitano di un Browser abilitato per l’esecuzione. Sorge però spontaneo chiedersi com’è gestita la concorrenza in java. Vengono utilizzati degli THREAD che, a differenza dei processi, possono condividere delle aree di memoria comuni. In tal modo non occorre attendere il termine di un’esecuzione perché più processi possono essere lanciati contemporaneamente. Penso quindi che il linguaggio java sia molto utile, soprattutto per programmare i sistemi di impresa dove esistono già dei programmi ben funzionanti ma occorre apportare delle modifiche o aggiunte di nuovi metodi. Il modo più corretto di affrontare questo tipo di problemi è proprio con l’utilizzo di java in quanto i programmi già esistenti non vengono modificati e vengono però incapsulati con nuovi metodi che quindi completano il SW.