Java comme langage de programmation
Java est un langage de programmation particulier qui possède des caractéristiques avantageuses: y Simplicité et productivité: à Intégration complète de l’OO à Gestion mémoire (« Garbage collector ») y Robustesse, fiabilité et sécurité y Indépendance par rapport aux plateformes y Ouverture: à Support intégré d’Internet à Connexion intégrée aux bases de données (JDBC) à Support des caractères internationaux y Distribution et aspects dynamiques y Performance
Java comme langage de programmation Simple et orienté objet
•Java est un langage de programmation simple y Langage de programmation au même titre que C/C++/Perl/Smalltalk/Fortran mais plus simple y Les aspects fondamentaux du langage sont rapidement assimilés •Java est orienté objet : y La technologie OO après un moment de gestation est maintenant complètement intégrée y En java, tout est un objet (à la différence du C++ par ex.) •Simple aussi parce qu’il comporte un grand nombre d’objets prédéfinis pour l’utilisateur •Java est familier pour les programmeurs C++
Java comme langage de programmation Robuste et sécurisé
•Conçu pour créer des logiciels hautement fiables •Oblige le programmeur à garder à l’esprit les erreurs hardware et software •Vérifications complètes à l’exécution et à la compilation •Existence d’un « garbage collector » qui permet d’éviter les erreurs de gestion de la mémoire
Java comme langage de programmation Neutre architecturalement
• Il existe une grande diversité de systèmes d’exploitation • Le compilateur Java génère un bytecode, c’est à dire un format intermédiaire, neutre architecturalement, conçu pour faire transiter efficacement le code vers des hardware différents et/ou plateformes différentes • Le bytecode ne peut-être interprété que par le processeur de la JVM
Unix JVM
Java comme langage de programmation Ouvert et distribué •Support intégré d’Internet y La Class URL y Communication réseaux TCP et UDP y RMI, CORBA, Servlets y JINI, le « must » pour construire des applications complexes distribuées….. •Connectivité aux bases de données y JDBC: Java DataBase Connectivity y Offre des facilités de connexions à la plupart des BD du marché y Offre un pont vers ODBC •Support des caractères internationaux y Java utilise le jeu de caractères UNICODE y JVM équipée de tables de conversion pour la plupart des caractères y JVM adapte automatiquement les paramètres régionaux en fonction de ceux de la machine sur laquelle elle tourne..
Java comme langage de programmation Performant •Considération basique •Exécution ralentie à cause de l’interpréteur ? •Le code natif généré par l’interpréteur est-il aussi rapide que celui réalisé par un compilateur classique (par ex C)? •Plusieurs processus peuvent être exécutés en même temps y Comparable au multitâche d’un OS y Le temps du CPU est divisé (sliced) y Toutes les bibliothèques Java •Edition de lien effectuée à l’exécution du programme •Codes exécutables chargés depuis un serveur distant permet la mise à jour transparente des applications.
Java comme Plateforme
•Plateforme = environnement hardware ou software sur lequel le programme est exécuté. •La Java « Platform » se compose de: y la Java Virtual Machine (Java VM) y la Java Application Programming Interface (Java API).