Java (langage) - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Frameworks et API

Sun fournit un grand nombre de frameworks et d’API afin de permettre l’utilisation de Java pour des usages très diversifiés. On distingue essentiellement 4 grands frameworks :

  • J2SE : Ce framework est destiné aux applications pour poste de travail. En théorie, on doit désormais parler de Java SE ;
  • J2EE : Ce framework est spécialisé dans les applications serveurs. Il contient pour ce faire un grand nombre d’API et d’extensions. En théorie, on doit désormais parler de Java EE ;
  • J2ME : Ce framework est spécialisé dans les applications mobiles. En théorie, on doit désormais parler de Java ME ;
  • JavaCard : Ce framework est spécialisé dans les applications liées aux cartes à puces et autres SmartCards.

La persistance est basée sur les standards :

  • JDBC (Java DataBase Connectivity)
  • JDO (Java Data Objects)
  • EJB (Enterprise Java Beans)

On trouve toutefois de nombreuses autres technologies, API et extensions optionnelles pour Java :

  • JavaMedia : Framework multimédia, contenant notamment les API Java2D, Java3D, JavaSound, Java advanced Imaging
  • Java Telephony
  • Java TV
  • JXTA : Système de peer-to-peer reposant sur Java
  • Jini
  • JAIN
  • JDMK
  • JavaSpeech
  • JMI
  • JavaSpaces

Licence

Le 11 novembre 2006, le code source du compilateur javac et de la machine virtuelle HotSpot ont été publiés en Open Source sous la Licence publique générale GNU

Le 13 novembre 2006, Sun Microsystems annonce que tout le code source de Java sera publié en Open Source sous la Licence publique générale GNU d’ici mars 2007 sous le nom de projet OpenJDK.

Programmation

La programmation peut se faire pour des exemples simples avec le compilateur javac, mais pour avoir plus de confort il est préférable d’utiliser un environnement de développement intégré ou IDE, certains sont gratuits.

  • Environnements existants

Construction

Un programme Java peut être produit avec des outils qui automatisent le processus de construction (c'est à dire l'automatisation de certaines tâches faisant appel à un nombre potentiellement grand de dépendances comme des librairies, comme la compilation, la génération d'archives, des documentations, le déployement, etc.). Les plus utilisés sont :

  • Apache Ant (génération portable, décrite en XML)
  • Apache Maven (génération portable, décrite en XML)
  • SCons (génération portable de Java/C/C++). Exemple :
            Java(target = 'classes', source = 'src')            Jar(target = 'test.jar', source = 'classes')      

Resultats

           % scons -Q           javac -d classes -sourcepath src src/Exemple1.java src/Exemple2.java src/Exemple3.java           jar cf test.jar classes      
Page générée en 0.140 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise