Développer en Java pour Mac OS
Par Mathieu Godart - Publié le
Ici, vous n'apprendrez pas à programmer en Java (cela présente peu d'intérêt pour un site Mac), mais simplement à mettre en oeuvre sur Mac un programme. En effet, la plupart des bouquins vous explique la marche à suivre sur PC, tout en.négligeant le Mac...
Si vous savez faire cela, il est assez simple d'apprendre par l'experience et en décortiquant les exemple. Il existe d'excellentes doc. sur le Net, notamment sur le site de Sun.
Le Java est un langage de programmation créé par Sun dans les années 90. Les programmes Java sont un peu particuliers : ils s'exécutent sur une machine virtuelle Java (MVJ), alors que les langages classiques compilent pour une machine physique (PowerPC, Intel, 68k, etc.). Cette spécificité permet au soft de s'éxécuter sur tous les systèmes qui possèdent une MVJ. C'est le cas de Mac OS, de Solaris, de Linux, de Windows, de Mac OS X et même de Palm OS !
Apple nous donne une raison suplémentaire de nous lancer dans la programmation Java : Mac OS X. En effet, le langage de Sun est très bien intégré à Mac OS X - et en particulier à Quartz. Les effort d'Apple pour promouvoir ce langage sont nombreux : forte présence au Java One (conférence des développeurs Java), mise à disposition d'aide et de doc complète sur le Java (la mailing list java-dev d'Apple est d'ailleurs très active), intégration de Java dans les Web Objects.
Les outils nécessaires au développement Java sont assez classique. Comme pour tout type de développement, vous devez disposer de :
Pour taper votre programme, n'importe quel traitement de texte fera l'affaire. Mais un éditeur avec coloration syntaxique sera beaucoup plus ergonomique ; il met de la couleur sur les mots clés, simplifiant ainsi la lecture du code. BBEdit est très utilisé, mais je vous avoue une certaine préférence pour Jext.
Jext est un éditeur pour Mac OS X, écrit en Java et totalement gratuit (sous licence GPL). Il propose des outils de gestion des projets, la compilation sans sortir du soft... Et, cerise sur le gâteau, c'est un logiciel français !
Il permet de transformer le programme (suite de mots clés et de fonctions) et un fichier binaire (suite de bits définissant les opérations élémentaires à effectuer par la MVJ). Pour Mac OS 8/9, vous devrez installer le SDK d'Apple. Sous OS X, vous n'avez rien à installer (pas même Project Builder), tout est là en standard. Quand je vous disais qu'Apple faisait la part belle à Java !
Elle interprète le fichier binaire et "commande" la machine physique (~ l'ordinateur). La MVJ 1.1 est installée en standard depuis Mac OS 8. Si vous l'avez désinstallée, elle est disponible sur le site d'Apple. Mac OS X intègre très bien Java, et une MVJ est installée avec le système.
Voici un exemple de programme qui affichera le message "Hello World" dans la console Java.
Une fois votre programme écrit dans l'éditeur et sauvé sur le disque, vous devez le compiler. Supposons que le programme porte le nom de "HelloWorld.java". Après avoir installé le SDK, vous trouverez l'application "javac" dans le dossier "SDK Tools".
Pour compiler "HelloWorld.java" vous devez le glisser sur l'icone de "javac". Cette opération créera des fichiers de type classe (ils portent l'extension ".class").
Il y a ensuite deux cas : soit votre programme est une application, soit c'est une applet.
Dans le premier cas, il vous suffit de déposer le fichier "HelloWorld.class" sur l'application "JBindery" se trouvant dans le dossier "Application Builders". Cliquez sur "Save As...", choisissez un nom et enregistrez. Cette opération aura pour effet de créer une application que vous n'aurez qu'à lancer pour voir le résultat de votre travail. Si vous modifiez votre code, vous n'aurez pas besoin de recréer l'application, il suffira de recompiler le programme.
Dans le cas d'une applet, vous devez appeler l'applet dans une page HTML, en utilisant le tag :
Il suffit ensuite d'ouvrir la page dans un navigateur supportant le Java (Netscape 4, IE 4, iCab 2, OmniWeb...). De la même manière que précédement, il n'est pas nécessaire de recréer la page à chaque modification du code, mais simplement de recompiler le code.
La compilation est un peu moins simple sous Mac OS X puisqu'il faut lancer l'application "Terminal", changer de dossier (en utilisant la commande "cd NomDuDossier" ou simplement "NomDuDossier") puis taper la ligne de commande "javac HelloWorld.java".
S'il s'agit d'une application, ne quittez pas le terminal et tapez "java HelloWorld &". Le programme se lance. Dans le cas d'une applet, c'est la même procédure que sous Mac OS 8 / 9. Jettez un oeil ci-dessus.
Si vous appuyez sur la flèche montante du clavier, la commande précédante est réaffichée. Faites le plusieurs fois pour ne pas avoir à retaper une commande déjà utilisée.
Le "&" placé après le nom d'une application sert à la lancer comme un nouveau processus. Le processeur la traitera indépendement du Terminal. Vous pourrez de ce fait continuer à taper des commandes dans le terminal.
Si vous savez faire cela, il est assez simple d'apprendre par l'experience et en décortiquant les exemple. Il existe d'excellentes doc. sur le Net, notamment sur le site de Sun.
Quézaco ?
Le Java est un langage de programmation créé par Sun dans les années 90. Les programmes Java sont un peu particuliers : ils s'exécutent sur une machine virtuelle Java (MVJ), alors que les langages classiques compilent pour une machine physique (PowerPC, Intel, 68k, etc.). Cette spécificité permet au soft de s'éxécuter sur tous les systèmes qui possèdent une MVJ. C'est le cas de Mac OS, de Solaris, de Linux, de Windows, de Mac OS X et même de Palm OS !
Apple nous donne une raison suplémentaire de nous lancer dans la programmation Java : Mac OS X. En effet, le langage de Sun est très bien intégré à Mac OS X - et en particulier à Quartz. Les effort d'Apple pour promouvoir ce langage sont nombreux : forte présence au Java One (conférence des développeurs Java), mise à disposition d'aide et de doc complète sur le Java (la mailing list java-dev d'Apple est d'ailleurs très active), intégration de Java dans les Web Objects.
La boîte à outils du programmeur
Les outils nécessaires au développement Java sont assez classique. Comme pour tout type de développement, vous devez disposer de :
Editeur de texte
Pour taper votre programme, n'importe quel traitement de texte fera l'affaire. Mais un éditeur avec coloration syntaxique sera beaucoup plus ergonomique ; il met de la couleur sur les mots clés, simplifiant ainsi la lecture du code. BBEdit est très utilisé, mais je vous avoue une certaine préférence pour Jext.
Jext est un éditeur pour Mac OS X, écrit en Java et totalement gratuit (sous licence GPL). Il propose des outils de gestion des projets, la compilation sans sortir du soft... Et, cerise sur le gâteau, c'est un logiciel français !
Le compilateur Java
Il permet de transformer le programme (suite de mots clés et de fonctions) et un fichier binaire (suite de bits définissant les opérations élémentaires à effectuer par la MVJ). Pour Mac OS 8/9, vous devrez installer le SDK d'Apple. Sous OS X, vous n'avez rien à installer (pas même Project Builder), tout est là en standard. Quand je vous disais qu'Apple faisait la part belle à Java !
La machine virtuelle Java
Elle interprète le fichier binaire et "commande" la machine physique (~ l'ordinateur). La MVJ 1.1 est installée en standard depuis Mac OS 8. Si vous l'avez désinstallée, elle est disponible sur le site d'Apple. Mac OS X intègre très bien Java, et une MVJ est installée avec le système.
Un exemple de programe : Hello World
Voici un exemple de programme qui affichera le message "Hello World" dans la console Java.
import java.io.*
class HelloWorld {
public void main( string args[] ) {
System.out.println("Hello World");
}
}
Sous Mac OS 8 ou 9
Compiler le code source
Une fois votre programme écrit dans l'éditeur et sauvé sur le disque, vous devez le compiler. Supposons que le programme porte le nom de "HelloWorld.java". Après avoir installé le SDK, vous trouverez l'application "javac" dans le dossier "SDK Tools".
Pour compiler "HelloWorld.java" vous devez le glisser sur l'icone de "javac". Cette opération créera des fichiers de type classe (ils portent l'extension ".class").
Exécuter la classe principale
Il y a ensuite deux cas : soit votre programme est une application, soit c'est une applet.
Dans le premier cas, il vous suffit de déposer le fichier "HelloWorld.class" sur l'application "JBindery" se trouvant dans le dossier "Application Builders". Cliquez sur "Save As...", choisissez un nom et enregistrez. Cette opération aura pour effet de créer une application que vous n'aurez qu'à lancer pour voir le résultat de votre travail. Si vous modifiez votre code, vous n'aurez pas besoin de recréer l'application, il suffira de recompiler le programme.
Dans le cas d'une applet, vous devez appeler l'applet dans une page HTML, en utilisant le tag :
<APPLET CODE="HelloWorld.class" WIDTH=500 HEIGHT=200
Il suffit ensuite d'ouvrir la page dans un navigateur supportant le Java (Netscape 4, IE 4, iCab 2, OmniWeb...). De la même manière que précédement, il n'est pas nécessaire de recréer la page à chaque modification du code, mais simplement de recompiler le code.
Sous Mac OS X
Compiler le code source
La compilation est un peu moins simple sous Mac OS X puisqu'il faut lancer l'application "Terminal", changer de dossier (en utilisant la commande "cd NomDuDossier" ou simplement "NomDuDossier") puis taper la ligne de commande "javac HelloWorld.java".
Exécuter la classe principale
S'il s'agit d'une application, ne quittez pas le terminal et tapez "java HelloWorld &". Le programme se lance. Dans le cas d'une applet, c'est la même procédure que sous Mac OS 8 / 9. Jettez un oeil ci-dessus.
Astuces pour le shell
Si vous appuyez sur la flèche montante du clavier, la commande précédante est réaffichée. Faites le plusieurs fois pour ne pas avoir à retaper une commande déjà utilisée.
Le "&" placé après le nom d'une application sert à la lancer comme un nouveau processus. Le processeur la traitera indépendement du Terminal. Vous pourrez de ce fait continuer à taper des commandes dans le terminal.