Gladir.com - Java - Introduction


Le langage Java est un langage inventé Kevin Le Helley de l'entreprise Sun Microsystems en l'année 1994. Ce langage est très particulier:

  • Environnement d'exécution: Appelé JRE pour Java Runtime Environment (Environnement d'exécution Java), soit son propre environnement, ses ressources et, son JVM, pour Java Virtual Machine (Machine Virtuelle Java), soit son code machine ou code natif (Jasmin) s'exécutant de façon indépendante du microprocesseur de la machine.
  • Portable: Il est portable en théorie sur n'importe quel machine: Linux, Windows, Mac, Mainframe,... N'importe quel application développés fonctionnera de façon identique sur une autre machine ou système d'exploitation.
  • Pas de référence pour les fonctions: Bien qu'il soit fortement inspiré du langage C++, il n'est pas possible de passé par référence de simple valeur de type de données primitifs.
  • Tous est objets: Dans se langage tous est objet à l'exception des types de données primitifs.
  • Polyvalence: Avec Java, il est possible de développer des applets pouvant s'intégré à une page HTML d'un navigateur, il possible d'utilisé des architectures clients/serveurs, il possible d'utiliser le JSP l'équivalent du PHP, ASP ou ASP .NET.
  • Gestionnaire de mémoire: Le ramasse-miettes (Garbage Collector) utilise un système de gestion de mémoire permettant d'éviter la confusion des pointeurs qu'utilisait le langage C et C++, car il détruit automatiquement les objets lorsqu'on ne fait plus référence à eux.
  • Lenteur d'exécution: Malheureusement, le Java a toujours eu des lenteurs d'exécution sur un poste de travail, mais les choses s'améliore car il existe maintenant des compilateurs compilant le langage Java en code machine 80x86, PC 601,... ramenant le langage dans la course.
Tous ses changements d'orientation s'inspire sur les 5 philosophies suivantes:
  • Orienté objet: Développé le langage dans une optique très poussé de POO (programmation orientée objet).
  • Indépendant de la machine: Permettre à un programme de s'exécuter sur n'importe quel machine.
  • Réseaux natif: Utilisation des réseaux informatiques de manière natif et pleinement intégré.
  • Code distant sécuritaire: Pouvant utilisé du code d'une machine distante de manière et ne provoquant pas l'arrivé de faille de sécurité sur le système d'exploitation.
  • Facilité: Le langage devrait être facile à utiliser et avoir les forces du langage C++.
Voici un tableau comparatif avec les autres langages, Framework et Outils:
Java & Sun Chez les concurrents
JSP

PHP, ASP ou ASP .NET

Java

Microsoft J++

Eclipse

NetBeans, JBuilder, Symantec Café,...

Swing

Technologie .NET, SAS/JMP,...

Méthode «Math.abs»

Fonction Abs dans presque tous les autres langages non-objet

System.out.print

Voici les instructions équivalente que les autres langages utilisent pour cette méthode:

Langage Instruction
ASP Response.Write
C printf
C++ std::cout
Pascal Write
PHP echo
... ...

Dernière mise à jour: Lundi, le 13 mars 2006