Génération et exécution de bytecode Java
Pour implémenter vos algorithmes, il vous faut trouver un langage simple, de haut niveau, généraliste mais vous
permettant par la suite d’évoluer vers des applications plus complexes et complètes. Dans un esprit d’ouverture et de
compatibilité, il serait intéressant que ce langage ne soit pas disponible uniquement sous Windows, et que si possible
le programme résultant puisse fonctionner sur plusieurs systèmes d’exploitation sans avoir à le modifier, ni à le
recompiler. Parmi les langages qui pourraient convenir, il y a C# (prononcer C Sharp) et Java. Le premier, issu de la
technologie «.NET» de Microsoft, était à l’origine destiné uniquement aux plateformes Windows (.NET était décrit
multiplateforme, ce qui selon Microsoft signifiait compatible avec la plupart des versions de Windows, pas les autres
systèmes comme MacOS ou Unix). Une implémentation libre et fonctionnant sur un grand nombre d’architectures
matérielles et de systèmes d’exploitation est disponible sous la forme de Mono qui propose la plupart des éléments
de .NET. Mais certains de ceuxci sont protégés par des brevets (les brevets logiciels ne sont pas valides en Europe) et
n’y sont pas tous intégrés. Aussi il existe les programmes en C# qui pourraient ne pas fonctionner avec Mono. Il faut
donc temporairement mettre ce langage à l’écart.
4. Java
a. Les avantages
Java, cependant, dispose de toutes les qualités nécessaires. Basé sur une machine virtuelle (tout comme Mono,
d’ailleurs), il suffit que celleci soit intégralement disponible pour la plupart des environnements matériels et des
systèmes d’exploitation pour que tout programme Java fonctionne sans aucune modification. C’est le cas. Développé
originellement par Sun Microsystems, le langage Java, sa machine virtuelle et tout son environnement (ce qu’on
résume par la "Technologie Java") sont disponibles pour Windows mais aussi pour MacOS, Linux et la plupart des
autres Unix (Solaris, AIX, HPUX, Tru64, etc). Tout programme en Java fonctionnera sur tous ces systèmes ! Mieux, si
vous êtes amateur de liberté et de logiciels libres, sachez que la version 7 (prévue en 2008) sera la première version
disponible sous licence GPL.
Il existe plusieurs versions de Java. Celle qui vous intéresse en priorité dans le cadre de ce livre est la version
standard, ou SE (Standard Edition). Vous pouvez télécharger Java depuis le site de Sun Microsystems à l’adresse
http://java.sun.com/javase/downloads/index.jsp. Quand cela sera possible, chaque algorithme présenté par la suite
sera implémenté (programmé) en Java. Pourquoi ce langage estil intéressant pour les débutants ?
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
19
Pour implémenter vos algorithmes, il vous faut trouver un langage simple, de haut niveau, généraliste mais vous
permettant par la suite d’évoluer vers des applications plus complexes et complètes. Dans un esprit d’ouverture et de
compatibilité, il serait intéressant que ce langage ne soit pas disponible uniquement sous Windows, et que si possible
le programme résultant puisse fonctionner sur plusieurs systèmes d’exploitation sans avoir à le modifier, ni à le
recompiler. Parmi les langages qui pourraient convenir, il y a C# (prononcer C Sharp) et Java. Le premier, issu de la
technologie «.NET» de Microsoft, était à l’origine destiné uniquement aux plateformes Windows (.NET était décrit
multiplateforme, ce qui selon Microsoft signifiait compatible avec la plupart des versions de Windows, pas les autres
systèmes comme MacOS ou Unix). Une implémentation libre et fonctionnant sur un grand nombre d’architectures
matérielles et de systèmes d’exploitation est disponible sous la forme de Mono qui propose la plupart des éléments
de .NET. Mais certains de ceuxci sont protégés par des brevets (les brevets logiciels ne sont pas valides en Europe) et
n’y sont pas tous intégrés. Aussi il existe les programmes en C# qui pourraient ne pas fonctionner avec Mono. Il faut
donc temporairement mettre ce langage à l’écart.
4. Java
a. Les avantages
Java, cependant, dispose de toutes les qualités nécessaires. Basé sur une machine virtuelle (tout comme Mono,
d’ailleurs), il suffit que celleci soit intégralement disponible pour la plupart des environnements matériels et des
systèmes d’exploitation pour que tout programme Java fonctionne sans aucune modification. C’est le cas. Développé
originellement par Sun Microsystems, le langage Java, sa machine virtuelle et tout son environnement (ce qu’on
résume par la "Technologie Java") sont disponibles pour Windows mais aussi pour MacOS, Linux et la plupart des
autres Unix (Solaris, AIX, HPUX, Tru64, etc). Tout programme en Java fonctionnera sur tous ces systèmes ! Mieux, si
vous êtes amateur de liberté et de logiciels libres, sachez que la version 7 (prévue en 2008) sera la première version
disponible sous licence GPL.
Il existe plusieurs versions de Java. Celle qui vous intéresse en priorité dans le cadre de ce livre est la version
standard, ou SE (Standard Edition). Vous pouvez télécharger Java depuis le site de Sun Microsystems à l’adresse
http://java.sun.com/javase/downloads/index.jsp. Quand cela sera possible, chaque algorithme présenté par la suite
sera implémenté (programmé) en Java. Pourquoi ce langage estil intéressant pour les débutants ?
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
19
