Java

Java logo Nel 1991 James Gosling, Patrick Naughton e Mike Sheridan cominciarono l'elaborazione di un nuovo linguaggio di programmazione che fosse veramente orientato agli oggetti (Object Oriented). In effetti, fino a quel momento il linguaggio OOP più diffuso era ed è tuttora il C++ che ha una grande affidabilità ed una potenza non indifferente ma che non supporta a pieno il modello Object Oriented.
Nel 1993 il gruppo di programmatori della Sun, partecipa ad un progetto importante che poi abbandoneranno ma che gli farà dirigere gli sforzi nella direzione della compatibilità multipiattaforma. Nel 1994, quando ci fu un'esplosione di Internet, Java cominciava a fare i primi passi sulla grande rete. Tuttora è uno dei linguaggi più utilizzati per creare applicazioni leggere da poter visualizzare direttamente da Browser Web.

Come funziona Java?

Java è un linguaggio completamente rivolto agli oggetti, durante la programmazione non si può sbagliare e scrivere pezzi di codice non orientato agli oggetti come succedeva per la programmazione in C++. In un certo senso Java non soffre dell'ereditarietà di un linguaggio non OOP come il C. Java si appoggia su di una macchina virtuale (Virtual Java machine), vale a dire un software presente nel computer che riesce a tradurre il codice bytecode in istruzioni comprensibili alla macchina.
Il bytecode non è altro che il file finale che si ottiene dal processo della compilazione, ed è costituito da una sequenza di bytes che rappresentano il linguaggio della macchina virtuale. Questo codice essendo costituito da byte è molto leggero e quindi ideale per la rete. Da questo appena detto penserete di aver trovato il linguaggio perfetto; in effetti se non fosse per alcuni problemi legati alla macchina virtuale si potrebbe dire che Java è il linguaggio ideale.
In realtà la macchina virtuale, il cuore della tecnologia Java, è un software e come tale impiega un sacco di tempo per fare le operazioni di traduzione del codice. La sfida tecnologica per il futuro di java sarà quella di trovare un modo per spostare al livello hardware la conversione delle istruzioni e quindi ricreare una macchina Java non più virtuale ma parallela a quella esistente. Se ciò accadesse java avrebbe una diffusione paragonabile a quella del C++ per tutte le applicazioni.

Che cosa sono le applet?

Le applet sono i programmi in java per il Web. In java si posso creare due tipi di applicazioni: una standard che permette un controllo sulla macchina paragonabile ai programmi in C++ e l'altra per la applicazioni sulla rete e vengono chiamate applet. Per ovvi problemi di sicurezza le applet sono state ideate in maniera tale da non poter scrivere o leggere file su macchine remote.