Journal du Net Développeur >  Java >  Guide pratique Java

Guide pratique Java > 2. Le langage, définition

Précédente 3. Le langage, en pratique 

Le livre blanc décrivant Java, publié par James Gosling et Henry McGilton en mai 1996, indique que le langage s'inspire des avancées de Smalltalk, Eiffel, Objective C et Cedar/Mesa, et se concentre sur 5 objectifs :

  1. Etre simple, orienté Objet et syntaxiquement familier
  2. Etre robuste et sécurisé
  3. Avoir une architecture neutre, et être portable
  4. Avoir de hautes performances
  5. Etre interprété et disposer de processus légers (multithreading)

Java répond au premier en proposant des principes fondamentaux rapidement compréhensibles. Le langage est conçu dès le départ comme étant orienté Objet, par le biais d'une large bibliothèque d'objets directement exploitables. Enfin, la syntaxe est aussi proche que nécessaire de celle de C++, pour faciliter la migration des développeurs.

La robustesse voulue par le second objectif est atteinte par les nombreux tests réalisés lors de la compilation, et une gestion de la mémoire très stricte, sans pointeurs explicites ni arithmétiques, et avec un ramasse-miettes. La sécurité est assurée par la plate-forme, qui interdit à toute application d'être atteinte par un programme tiers.

Java a été conçu dès le départ pour fonctionner au sein d'environnements hétérogènes. Le compilateur résout cela en produisant des bytes-codes, un format intermédiaire de programme, et qui seront interprétés par une machine virtuelle spécifique à chaque système. C'est cette JVM (Java Virtual Machine) qui assure donc la portabilité du code Java.

Les performances de Java ne seront jamais comparables à celles des compilateurs natifs, mais les concepts de compilateurs JIT (Just In Time) autorisent des vitesses plus qu'honorables.

Java est avant tout un langage interprété, mais également compilé : les fichiers sources sont compilés en bytes-codes, qui eux-mêmes sont interprétés par la JVM de chaque machine. La plate-forme gère le multithreading directement depuis le langage, grâce à la classe Thread. Cette simplicité de gestion des threads qui est l'une des raisons du succès de Java côté serveurs.

  Sommaire
 Le langage, définition
Précédente Retour au sommaire Page suivante 
Introduction | 1 | 2 | 3 | 4
 
|
Haut de page
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex