|
La programmazione in Java
Java è un linguaggio di programmazione ad oggetti nato in tempi recenti, ma che ha già avuto un notevole successo e diffusione in tutto il mondo. La fortuna di questo linguaggio è legata in maniera inequivocabile all'espansione della rete Internet che ne ha valorizzato le caratteristiche e gli ha offerto un vasto campo di sviluppo. Allo stesso modo anche la rete ha ottenuto innumerevoli vantaggi da questo linguaggio che ha portato ad una notevole semplificazione in fase di implementazione di molti servizi, alla semplificazione delle operazioni, ad un miglioramento sostanziale dell'interfaccia utente ed alla introduzione di nuove potenzialità.
La nascita di Java è avvenuta presso i laboratori di Sun Microsystem nei primi anni 90. Lo sviluppo di un nuovo linguaggio fu intrapreso per venire incontro a determinate esigenze che il C++, che in quel momento era il linguaggio fondamentale dello sviluppo del software, era inadatto a soddisfare. Tali esigenze possono così sintetizzarsi ...
realizzare una reale indipendenza dalla piattaforma, cosa che con il C++ non si sarebbe riusciti mai a raggiungere, in quanto questo linguaggio permette un'accesso alle risorse a livello basso (ex puntatori), e quindi molto strettamente legato all'architettura.
La possibilità di avere una gestione della grafica più semplice e potente, dato il ruolo sempre più importante di questo settore e la enorme pesantezza di tale gestione con il C++.
la maggiore sicurezza permettendo un accesso più limitato del C++ alle risorse.
Il fattore decisivo per lo sviluppo di Java fu nel 1992 la nascita del WWW. Infatti Java per le caratteristiche che abbiamo detto sopra, prima di tutto l'indipendenza dalla piattaforma, si rivelò subito il miglior linguaggio per sviluppare software in questo nuovo ambito. A tale scopo furono introdotte le "applet" piccole applicazioni destinate al WEB di facile implementazione, essenzialmente per dotare di animazioni le classiche pagine HTML. L'applet è stato senza dubbio l'elemento che ha decretato il successo di Java, portando ad avvicinarsi a tale linguaggio un numero sempre più alto di persone. Nel 1995 vennero distribuiti dalla Sun Microsystems
il browser HOT JAVA e il pacchetto di sviluppo JDK che ebbero un tale successo da costringere nel giro di pochissimo tempo i produttori di browser a dotare i loro sistemi della caratteristiche necessarie ad eseguire le applets java.

Vediamo ora cosa sono queste applets che hanno conquistato Internet. Un'applet è in pratica un piccolo programma in Java che può essere scaricato dalla rete, esattamente come un'immagine o un suono all'interno di una sessione HTTP. La differenza fra queste e le applet sta nel fatto che l'applet è in realtà un programma e come tale può interagire con l'utente, modificandosi a seconda degli input che riceve.La grossa novità è legata allo sviluppo di HOT JAVA, cioè al fatto di poter far girare un programma Java sul browser andando ad inserirsi in un settore della programmazione completamente scoperto.

Un'applet viene messa a disposizione da un Server HTTP, da cui attraverso la rete risulta accessibile ad un qualsiasi utente dotato di Client HTTP (browser) opportunamente abilitato. L'applet viene caricata automaticamente e quindi eseguita come parte di un documento WEB. Naturalmente l'applet gira sul client, ma qui per ragioni di sicurezza le vengono impediti gran parte degli accessi, potenzialmente pericolosi alle risorse del sistema (ex: lettura e scrittura su hard disk, apertura di connessioni tcp/ip etc...). Questo avviene per garantire la sicurezza della macchina client verso applicazioni di dubbia provenienza, che potrebbero essere virus oppure carpire informazioni locali all'insaputa dell'utente.

Cominciamo adesso a vedere più in dettaglio questo linguaggio di programmazione. Anche se è nato in modo indipendente, Java mantiene alcune affinità con il C++, che sono state volutamente lasciate per renderlo più familiare e semplice da imparare al vasto numero di programmatori di questo linguaggio. Ma pur mantenendo alcune affinità non bisogna scordarsi che Java nasce proprio dall'esigenza di colmare alcune lacune lasciate proprio dal C++ e cioè un linguaggio che permettesse di utilizzare costrutti più semplici, sicuri e affidabili di questo. Vediamo più in dettaglio quali sono i costrutti più "pericolosi" di C e C++ che Java elimina:
aritmetica dei puntatori
- strutture (struct)
- definizione di tipi
(typedef)
- preprocessore
(#define)
- allocazione e deallocazione esplicita della memoria
- conversione automatica dei tipi
- ereditarietà multipla
Inoltre Java aggiunge garbage collection (GC) automatica, che elimina la delicata fase di distruzione degli oggetti allocati dinamicamente in C e C++, e conserva la tecnologia OO di base di
C++

Java è un linguaggio object oriented "puro", cioè che rispetta i principi di questo paradigma. Questo, per esempio, non è vero per il C++ che perde alcune delle caratteristiche del paradigma OOP per mantenere la compatibilità con il C.

Una delle caratteristiche fondamentali della programmazione ad oggetti è quella legata alla riusabilità del codice, cioè al fatto che una classe creata per un certo programma possa essere riutilizzata tranquillamente per un altro. Già il C++ permetteva di riusare le funzioni del linguaggio C.
Java, invece, fornisce uno standard per il codice, sufficientemente elastico da essere efficiente, e vincola la progrqammazione all'OOP.

Java è un tipo di linguaggio che per volontà dei propri creatori non privilegia le prestazioni, ma favorisce in generale la semplicità nella gestione di gran parte delle risorse ricorrendo spesso all'automazione di queste. Tale caratteristica fa si che Java risulti più potente, rispetto agli altri linguaggi, nella gestione di parti complesse della programmazione come la gestione della grafica o dei collegamenti in rete. D'altra parte un limite alle prestazioni è dato anche dalla presenza di una macchina virtuale (JVM) che interpretando il meta-codice (bytecode) realizza l'indipendenza dall'architettura.
Continua...
Nuova pagina 1
|