1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 1 : Introduction.

Slides:



Advertisements
Présentations similaires
Speedup Prediction for Selective Compilation of Embedded Java Programs
Advertisements

Le monde i-mode Epreuve Oral – 16/03/05 Master STIC / CAM API et environnement de développement Bakogiannis Anastasios ( )
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
A RECUPERER EN ENTRANT Le polycopié de Caml Partie 1
Cours 5 : XML et les architectures N-tier Janvier Version 1.0 -
La machine virtuelle virtuelle utopie et/ou réalité ?
Programmation par Objets 1 Module IN504 Animé par : Marianne Huchard Marie-Laure Mugnier Khalil Ben Mohamed
A propos de java Sun, fin 1995 C++ nettoyé semi-interprété
ESSI AM Dery Merci à Rémi Vankeisbelck, Michel Riveill etc
Mobiles Services and Midlets
Présentation de l’Architecture Windows NT
L’architecture .net et ASP.net
Exposé de Système - Informatique et Réseau
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
Programmer en JAVA par Tama
INTRODUCTION A JAVA Chapitre 1 : Introduction
Programmation Objet en JAVA Cours 9 : Réseau R. M
LICENCE MIAGE Introduction Programmation Orientée Objet JAVA philippe
Présentation de Java Stéphane Frénot INSA lyon
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV EJB Entité Module Java Expert.

1 Une introduction à Java IFT 287 (Semaine 1). 2 Java - Historique Développé par Sun Microsystems en 1994 –Inventeur James Gosling (canadien!) Objectif.
Introduction aux services WEB
Common Gateway Interface
Projet de veille technologique
INF 111 PROGRAMMATION ORIENTÉ-OBJET
Mémoire de fin d’études présenté par Amine Brikci-Nigassa
Programmation Approche composants Ing5 SI
Dan Bismuth Tutrices : Marie-Lise Flottes - Joanne Acland
Introduction à la programmation (Java)
Microsoft dot Net Extrait du cours. La programmation fenêtrée facile. Une approche objet. Philippe Garraud: Formateur indépendant.
Le langage JAVA Année scolaire
Programmation Orienté Objet Application Au Langage JAVA Licence professionnelle ATC ~ 07/08 Bessem BOURAOUI
Formation JAVA. Par: SILMI.S
IFT 6800 Atelier en Technologies d’information
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 3 : Classes et Objects.
IFT 6800 Atelier en Technologies d’information
COURS DE PROGRAMMATION ORIENTEE OBJET :
BlueJ_I_II 1 Java, les objets : tout de suite ! Notes de cours associées a ces deux chapitres
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
Java vs. C++ Pierre-Yves ALIZON – Ingénieurs 2000.
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
4 - Annuaires Les Annuaires d ’Entreprises Offres et solutions
SGBD orientés Objet Standards : OMG et ODMG.
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
Présentation de CORBA et de IIOP
Approche fonctionnelle Approche objet JAVA
Introduction Java Conception par Objet et Programmation Java
Introduction à la programmation objet avec java
Premiers pas dans le langage Java 2012/ Premiers pas dans le langage Java TI3.4 Responsable : M lle Sana Ezzedine
IUT du Limousin L.U.P Michel Vergnaud Programmation Objet - Java.
Introduction à JAVA Sylvie Billot
Introduction au langage JAVA
Présentation de Java Olivier de Pertat. Qu'est-ce que Java ? Un langage de programmation orienté objets Une architecture de Virtual Machine Un ensemble.
Java RMI: Remote Method Invocation
Une brève présentation de C# Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
02/06/2015© Robert Godin. Tous droits réservés.1 5 Interface entre SQL et un programme n SQL incomplet n Défaut d'impédance (impedance mismatch) – modèle.
Philippe Gandy - 1 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
22 Concepts de base du langage Java. 2-2 Objectifs A la fin de ce cours, vous serez capables de : Identifier les éléments essentiels de Java Identifier.
Programme de baccalauréat en informatique Structures de données IFT Abder Alikacem TP4 Département d’informatique et de génie logiciel Édition septembre.
Présentation Sur Java Serhani Mohamed Adel Septembre 2001.
pour les programmeurs en C++ Java 2 Part 1 3 Histoire de Java Projet de connexion des machines: 1991 Le nom Java a été introduit dans un café Développé.
Remote Method Invocation
Java Remote Method Invocation
Introduction à Java Caractéristiques principales Environnement Java Environnement de développement Compilation et exécution.
Java Réalisé par: Mouna POKORA. PLAN: Définition : Historique: Caractéristiques: un langage orienté objet: un langage interprété : un langage portable:
Présentation de Java 2006 INSA lyon
JAVA.
Transcription de la présentation:

1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 1 : Introduction

2 Qu'est-ce que Java ? Un langage de programmation orienté objets Une architecture de Machine Virtuelle Un ensemble d'API variées Un ensemble d'outils (le JDK)

3 Bref historique 1993 : projet Oak (langage pour l'électronique grand public) 1995 : Java / HotJava à WWW3 Mai 95 : Netscape prend la licence Sept 95 : JDK 1.0 b1 Déc 95 : Microsoft se dit intéressé Janv 96 : JDK Eté 96 : Java Study Group ISO/IEC JTC 1/SC22 Fin 96 : RMI, JDBC, JavaBeans,... Fév 97 : JDK 1.1

4 Les caractéristiques du langage Java Orienté objets Interprété Portable Simple Robuste Sécurisé Multi-threads Distribué

5 Java est un langage orienté objets Tout est classe (pas de fonctions) sauf les types primitifs ( int, float, double,...) et les tableaux Toutes les classes dérivent de java.lang.Object Héritage simple pour les classes Héritage multiple pour les interfaces Les objets se manipulent via des références Une API objet standard est fournie La syntaxe est proche de celle de C

6 Java est portable Le compilateur Java génère du byte code. La Java Virtual Machine (JVM) est présente sur Unix, Win32, Mac, OS/2, Netscape, IE,... Le langage a une sémantique très précise. La taille des types primitifs est indépendante de la plate-forme. Java supporte un code source écrit en Unicode. Java est accompagné d'une librairie standard.

7 Java est robuste A lorigine, c'est un langage pour les applications embarquées. Gestion de la mémoire par un garbage collector. Pas daccès direct à la mémoire. Mécanisme d'exception. Accès à une référence null exception. compilateur contraignant (erreur si exception non gérée, si utilisation dune variable non affectée,...). Tableaux = objets (taille connue, débordement exception). Seules les conversions sûres sont automatiques. Contrôle des cast à l'execution.

8 Java est sécurisé Indispensable avec le code mobile. Pris en charge dans l'interpréteur. Trois couches de sécurité : Verifier : vérifie le byte code. Class Loader : responsable du chargement des classes. Security Manager : accès aux ressources. Code certifié par une clé.

9 Java est multi-thread Intégrés au langage et aux API : synchronized garbage collector dans un thread de basse priorité java.lang.Thread, java.lang.Runnable Accès concurrents à objet gérés par un monitor. Implémentation propre à chaque JVM. Difficultés pour la mise au point et le portage.

10 Java est distribué API réseau (java.net.Socket, java.net.URL,...). Chargement / génération de code dynamique. Applet. Servlet. Protocole / Content handler. Remote Method Invocation. JavaIDL (CORBA).

11 Les performances Actuellement le byte code est interprété. Plusieurs types de génération de code machine : Conversion statique en C (j2c, Tabo,...) Conversion statique en code natif. Compilation en code machine à la volée (JIT).

12 Les outils (1) Environnements de développement : Sun JDK 1.1.x (compilateur, interpréteur, appletviewer,...) java-mode emacs IDE : Visual Age, Café, CodeWarrior, Java WorkShop, Jbuilder, Visual J++,... Browsers : Sun HotJava 1.1 Netscape Navigator Internet Explorer

13 Les outils (2) JVM : Kaffe, Cacao, Harissa,... Convertisseur : c2j, j2c, Tabo... Décompilateur/ 'obscurcisseur' : Mocha / Crema Générateur de parseurs : JavaCC, JavaCUP Profiler : Hyperprofiler, ProfileViewer

14 Les outils (3) Java Development Kit javac : compilateur de sources java java : interpréteur de byte code appletviewer : interpréteur d'applet javadoc : générateur de documentation (HTML, MIF) javah : générateur de header pour l'appel de méthodes natives javap : désassembleur de byte code jdb : debugger javakey : générateur de clés pour la signature de code rmic : compilateur de stubs RMI rmiregistry : "Object Request Broker" RMI