MokaByte
Numero 24 - Novembre 98
|
|||
|
|
|
|
Lorenzo Bettini |
|
||
Uno dei vantaggi di Java, che forse ha contribuito alla sua immensa diffusione sia in ambito commerciale che in ambito universitario, è senz'altro la disponibilità gratuita del kit per la programmazione: non è necessario acquistare costosi programmi con immensi ambienti di sviluppo per scrivere applicazioni; non si parla di applicazioni semplici e banali, ma anche applicazioni di un certo livello. E' anche vero che avere dei tool per la programmazione visuale non guasterebbe, tuttavia il kit gratuito di Java è già sufficiente per poter programmare discretamente, e, col succedersi delle varie versioni, si arricchisce sempre più di varie utilità. Introduzione Il kit in questione
è scaricabile gratuitamente da Internet presso il sito della Sun
o presso uno dei tanti mirror sparsi in tutto il mondo; fra questi ve ne
sono molti di carattere universitario, ed in questo modo non diventa proibitivo
per il povero studente scaricarsi diversi Mega di programmi. Il kit è
in questione è appunto il JDK, che sta per giungere alla versione
1.2 (fino ad adesso la 1.2 è ancora in fase di beta); già
dalle prime versioni di qualche anno fa, questo pacchetto comprendeva diversi
tool interessanti ed utili.
javac: il compilatore JavaMa la lista dei tool disponibili non finisce qui, anche se questi sono i più utilizzati... STRUMENTO:jar-The Java Archive Tool Questo tool permette
di memorizzare in uno stesso archivio (detto appunto archivio JAR) diversi
file. In realtà JAR è un tool di archiviazione e compressione
general-purpose, che utilizza il formato di compressione ZIP e ZLIB, anche
se è nato con lo scopo di memorizzare in uno stesso file più
classi Java (i file .class) che costituiscono un'applet o un'applicazione,
insieme ai vari file grafici, sonori, o altri archivi utili alle applet
o alle applicazioni. Poiché Java è nato per le applicazioni
distribuite ed anche per inserire applicazioni nelle pagine web (applet),
memorizzando tutto in un unico archivio, l'applicazione può essere
scaricata con una sola transazione HTTP, ottenendo così successivamente
un'esecuzione che non richiede più accessi alla rete per il recupero
dei dati dell'applet.
L'opzione c sta
per create ed f per file; in questo modo si memorizzano nel file myjarfile
tutti i file con estensione .class. Per estrarre i file si utilizzerà
l'opzione x (extract), mentre se si vuole solo ottenere a schermo la lista
dei file contenuti nell'archivio si potrà utilizzare l'opzione t.
Ad esempio
Estrae i file
contenuto nell'archivio specificato.
STRUMENTO: jarsigner - JAR Signing and Verification Tool Come accennato è possibile firmare digitalmente i file jar; questo è possibile tramite questo tool: jarsigner. In questo modo è possibile:
1.Firmare i file JAR
Una firma digitale
è una stringa di bit che viene calcolata tramite i dati che vengono
firmati e tramite la chiave privata della persona o della compagnia che
ha realizzato l'applicazione; questa può essere verificata tramite
la chiave pubblica, distribuita dall'entità che ha posto la firma;
in questo modo solo chi ha la chiave privata può effettuare la firma,
ma tutti quelli che hanno la chiave pubblica la possono verificare.
STRUMENTO: javadoc - The Java API Documentation Generator Spesso quando
si effettua il browsing della documentazione ufficiale di Java, o comunque
di una libreria Java di un certo livello, si nota che lo stile è
alquanto uniforme. Si tenga presente che la documentazione
di una libreria è molto importante, ma mantenere sincronizzate la
libreria con la documentazione può essere spesso molto faticoso,
e non sono rari errori di allineamento. La cosa ideale sarebbe quella di
scrivere la documentazione direttamente nei sorgenti, ma dopo si dovrebbero
distribuire i sorgenti, o comunque, anche se questo può non rappresentare
un problema per il programmatore, lo può rappresentare per l'utente
che deve andare direttamente nei sorgenti della libreria per cercare di
capire a cosa serve una certa funzione.
Notare che è
possibile utilizzare i tag standard dell'HTML (tranne alcuni, come quelli
degli header). Vi sono poi dei tag particolari interpretati da javadoc
che permettono di realizzare documentazione come quella del jdk. Per una
trattazione completa si rimanda alla documentazione ufficiale, comunque
vale la pena di vedere qualche esempio:
I campi introdotti
dovrebbero essere abbastanza auto esplicativi, e rispecchiano la documentazione
che siamo abituati a leggere. Vale la pena di notare i tag @see che permettono
di introdurre automaticamente dei link ad altre classi. Se si vogliono
commentare dei membri della classe si scriverà qualcosa di simile:
Per produrre
la documentazione in html si dovrà utilizzare il comando javadoc;
vediamo un esempio di utilizzo; supponiamo che i file .java siano nella
directory C:\ws\src\java\awt\*java e che la directory di destinazione sia
C:\ws\html. Il comando da lanciare è
In questo modo
si genera la documentazione html per le classi pubbliche nei package java.awt
and java.awt.event inserendola nella directory di destinazione C:\ws\html.
STRUMENTO: javap
- The Java Class File Disassembler
STRUMENTO: javah - C Header and Stub File Generator Questo comando genera un header C ed i file sorgenti necessari per implementare metodi nativi; i file generati (header e programmi C) potranno essere utilizzati dai programmi C per riferirsi alle variabili di un certo oggetto all'interno del codice nativo. In particolare il file .h contiene una definizione di struct che rappresenta il layout della classe corrispondente, ed i campi della struttura corrispondono alle variabili istanza della classe. STRUMENTO: native2ascii - Native-to-ASCII Converter Questo comando torna comodo quando si prendono file che contengono caratteri non standard, o dovuti al passaggio da un sistemaoperativo ad un altro: converte un file con caratteri native-encoded (caratteri che non sono non-Latin 1 e non-Unicode) in uno che contiene caratteri Unicode-encoded. Questo comando è spesso necessario, oltre che utile, in quanto il compilatore Java e gli altri tool sono in grado di processore solo file che contengono caratteri Latin-1 e/o Unicode-encoded (notazione \udddd). Con questo tool si ovvia a problemi che possono insorgere nel caso si debbano utilizzare questi file con caratteri non standard. Conclusione Si è voluto
semplicemente fare una rapida carrellata sui tool che sono inclusi nella
versione standard del jdk; tutti questi tool sono ovviamente documentati
nella documentazione ufficiale, tuttavia a volte se ne ignora l'esistenza...
|
MokaByte Web 1998 - www.mokabyte.it MokaByte ricerca nuovi collaboratori. Chi volesse mettersi in contatto con noi può farlo scrivendo a mokainfo@mokabyte.it |