SlideShare uma empresa Scribd logo
1 de 16
JAVA




©Objet Direct 2011
Présentations

     Votre formateur
     Objet Direct




    Conseil architecture du SI                               Pilotage de l’entreprise
                                      Optimisation et
      Applications métiers       intégration des processus     Optimisation de la
          spécifiques                                            performance




           Web et
           Objet                         ERP                          BI



2
Notre Environnement




3
Présentations

     Quelles sont vos attentes ?
     Quel est votre rôle au sein d’une équipe projet ?




4
Introduction




•   Découvrir que Java est un langage, mais aussi une
    plateforme
•   Comprendre le principe et l’intérêt d’une machine virtuelle
•   Connaître l’histoire de Java et son utilisation actuelle
Java est un langage


     Java est conçu pour être un langage

             ● Simple, orienté objet et familier
                     • Pas besoin de connaissances poussées, utilisation de librairies de haut niveau
                     • Les utilisateurs de C++ ne sont pas désorientés


             ● Robuste et sûr
                     • Vérification à la compilation et à l’exécution
                     • Gestion de la mémoire simple (pas d’arithmétique sur les pointeurs)
                     • Présence du ramasse-miettes (Garbage Collector)


             ● Indépendant de la machine employée pour l’exécution
                     • Bytecode Java interprété sur une JVM


             ● Très performant

             ● Multi-thread


6   Introduction à Java
La JVM : principe de la machine virtuelle


                           Mon application             Mon application

                          API                        API
                                       JVM                              JVM
                  Code natif                      Code natif

                            OS : Windows                   OS : Linux


     Les programmes Java sont compilés en bytecode Java

     La JVM peut interpréter le bytecode ou le compiler à la volée
      (JIT: Just In Time)

     Plusieurs éditeurs implémentent la machine virtuelle (Oracle,
      Apple, IBM, Google, …)


7   Introduction à Java
Java est une plateforme


     Java est aussi une plateforme
             ● Java SE (Standard Edition)
                     • Contient les API de base, les API pour le poste client et les API d’usage général
             ● Java ME (Micro Edition)
                     • Spécialisé pour les applications mobiles
             ● Java EE (Enterprise Edition)
                     • Spécification d’extensions à Java SE à destination des serveurs d’application
                     • Garantit une architecture standardisée
                     • Java EE est une norme, pas un produit


     La plateforme n’est pas uniquement à destination de Java
             ● Elle est utilisée par des langages récents (Groovy, Clojure, JRuby, Scala,
               Jython…)
             ● Mais aussi par des langages plus anciens :
                     • JavaScript : Rhino
                     • PHP: Quercus




8   Introduction à Java
WORA (Write Once, Run Anywhere)


     Développement sur n’importe quel environnement
             ● Généralement un ordinateur sous Windows, Linux ou Mac
     Compilation dans un bytecode standard

      Code                                         byte
                                                                               011001…
      source                Compilateur            code               JVM


     Exécution sur n’importe quelle environnement équipé d’une JVM
             ● PC, téléphone, routeur, …

     Java équipe plus de 4,5 milliards de périphériques
             ●   Plus de 800 millions de PC
             ●   2,1 milliards de téléphones portables et autres périphériques de poche
             ●   3,5 milliards de cartes à puce
             ●   Des décodeurs, des imprimantes, des webcams, des jeux, des systèmes de navigation
                 automobile, des terminaux de loterie, des appareils médicaux, des bornes de paiement de
                 parking, …

             Source : http://www.java.com/fr/about/


9   Introduction à Java
Développer et exécuter
Objectifs




•   Installer l’environnement nécessaire au développement et à
    l’exécution
•   Connaître l’emplacement de la documentation de référence
•   Savoir compiler un programme Java et l’exécuter
JRE


      Le JRE (Java Runtime Environment) doit être installé pour
       pouvoir exécuter un programme Java
      Il contient
             ● La JVM qui interprète le bytecode et le convertit en code natif
             ● Les API (bibliothèque de classes) à partir desquelles sont développées les
               applications Java
      Disponible sur http://www.java.com/fr/download/


                                                 JRE

                                       API
                                                       JVM
                                    Code natif



12   Développer et exécuter
JDK


      Le JDK doit être installé pour pouvoir développer en Java

      Il contient
        ● Le JRE
        ● javac : le compilateur permettant de générer le bytecode
        ● jar : l’archiveur permettant de regrouper en un seul fichier (zip) un ensemble
          de classes
        ● javadoc : le générateur de documentation
        ● D’autres outils de développement


      Disponible sur
      http://www.oracle.com/technetwork/java/javase/downloads/index.html




13
Documentation


      La documentation
             ● Javadoc oracle : http://download.oracle.com/javase/7/docs/api/index.html
             ● Java tutorial : http://download.oracle.com/javase/tutorial/


      Bonne pratique : Documenter !
             ● javadoc sur ses propres classes et méthodes
             ● Mais aussi commentaires au sein du code
             ● La complétion automatique ne dispense pas de lire la javadoc
             ● Les IDEs permettent de consulter la javadoc directement dans l’IDE, de
               manière contextuelle




14   Développer et exécuter
Point d’entrée


      Méthode main : point d’entrée de l’application.

       package com.objetdirect.exemple;

       /**
        * Classe de gestion des clients.
        */
       public class GestionClient {

              /**
               * Méthode principale de l'application.
               * @param args les arguments fournis via la ligne de commande.
               */
              public static void main(String[] args) {
                  // TODO implémenter un vrai programme
                  System.out.println("Hello World");
              }
       }




15   Développer et exécuter
Exécuter un programme Java


      Exécuter un programme
             ● Pour exécuter, on utilise java
                     • Rappel : seules les classes contenant une méthode main peuvent être exécutées
             ● La classe doit être dans le classpath
                     • Tout comme pour javac, il peut être redéfini via l’option –cp


      Exemple
             ● java –cp ./lib/log4j-1.2.16.jar;./build com.objetdirect.exemple.GestionClient




16   Développer et exécuter

Mais conteúdo relacionado

Mais procurados

Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
Algeria JUG
 
Cours android
Cours androidCours android
Cours android
Ad Hafsa
 
Java uik-chap2-dev java
Java uik-chap2-dev javaJava uik-chap2-dev java
Java uik-chap2-dev java
Amel Morchdi
 
Java uik-chap6-poo heritage v2 java
Java uik-chap6-poo heritage v2 javaJava uik-chap6-poo heritage v2 java
Java uik-chap6-poo heritage v2 java
Amel Morchdi
 

Mais procurados (20)

Java 2015 2016_zied_elleuch
Java 2015 2016_zied_elleuchJava 2015 2016_zied_elleuch
Java 2015 2016_zied_elleuch
 
Quand java prend de la vitesse, apache maven vous garde sur les rails
Quand java prend de la vitesse, apache maven vous garde sur les railsQuand java prend de la vitesse, apache maven vous garde sur les rails
Quand java prend de la vitesse, apache maven vous garde sur les rails
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'art
 
Base11
Base11Base11
Base11
 
Cours android
Cours androidCours android
Cours android
 
Java uik-chap2-dev java
Java uik-chap2-dev javaJava uik-chap2-dev java
Java uik-chap2-dev java
 
Introduction java
Introduction javaIntroduction java
Introduction java
 
Introduction à Java
Introduction à JavaIntroduction à Java
Introduction à Java
 
Sonar-Hodson-Maven
Sonar-Hodson-MavenSonar-Hodson-Maven
Sonar-Hodson-Maven
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8
 
Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Booster votre application Windows Phone 8
Booster votre application Windows Phone 8
 
20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache Maven20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache Maven
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
 
Java uik-chap6-poo heritage v2 java
Java uik-chap6-poo heritage v2 javaJava uik-chap6-poo heritage v2 java
Java uik-chap6-poo heritage v2 java
 
Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5
 
Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014
 
Java scripting api
Java scripting apiJava scripting api
Java scripting api
 
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
 

Destaque

Pp carrieres
Pp carrieresPp carrieres
Pp carrieres
96bobcat
 
Celebrem Sant Jordi
Celebrem Sant JordiCelebrem Sant Jordi
Celebrem Sant Jordi
montsepl78
 
Que Es Una Red Extensa
Que Es Una Red ExtensaQue Es Una Red Extensa
Que Es Una Red Extensa
luis perez
 
Marketing y Negocios en Internet
Marketing y Negocios en InternetMarketing y Negocios en Internet
Marketing y Negocios en Internet
Homero J Simpson
 
Que Es Un Red Local
Que Es Un Red LocalQue Es Un Red Local
Que Es Un Red Local
luis perez
 
PresentacióN1
PresentacióN1PresentacióN1
PresentacióN1
Edu Fraga
 
Que Es Un Intranet
Que Es Un IntranetQue Es Un Intranet
Que Es Un Intranet
luis perez
 

Destaque (20)

Pp carrieres
Pp carrieresPp carrieres
Pp carrieres
 
Modèles de donnèes & d'opportunités BI
Modèles de donnèes & d'opportunités BI  Modèles de donnèes & d'opportunités BI
Modèles de donnèes & d'opportunités BI
 
Celebrem Sant Jordi
Celebrem Sant JordiCelebrem Sant Jordi
Celebrem Sant Jordi
 
Les derniers achats
Les derniers achatsLes derniers achats
Les derniers achats
 
Nuestros desayunos
Nuestros desayunosNuestros desayunos
Nuestros desayunos
 
1 puntos en contacto
1 puntos en contacto1 puntos en contacto
1 puntos en contacto
 
Optimización Tiempo Directivos y Profesionales
Optimización Tiempo Directivos y ProfesionalesOptimización Tiempo Directivos y Profesionales
Optimización Tiempo Directivos y Profesionales
 
39334324 ecriture-sms
39334324 ecriture-sms39334324 ecriture-sms
39334324 ecriture-sms
 
julian montilla 6d
julian montilla 6djulian montilla 6d
julian montilla 6d
 
GSM - 20 ans de folie
GSM - 20 ans de folieGSM - 20 ans de folie
GSM - 20 ans de folie
 
Que Es Una Red Extensa
Que Es Una Red ExtensaQue Es Una Red Extensa
Que Es Una Red Extensa
 
Maria Ju Li Ana !!
Maria Ju Li Ana !!Maria Ju Li Ana !!
Maria Ju Li Ana !!
 
Postgrado de docencia superior
Postgrado de docencia superiorPostgrado de docencia superior
Postgrado de docencia superior
 
Marketing y Negocios en Internet
Marketing y Negocios en InternetMarketing y Negocios en Internet
Marketing y Negocios en Internet
 
Que Es Un Red Local
Que Es Un Red LocalQue Es Un Red Local
Que Es Un Red Local
 
PresentacióN1
PresentacióN1PresentacióN1
PresentacióN1
 
Que Es Un Intranet
Que Es Un IntranetQue Es Un Intranet
Que Es Un Intranet
 
Tu Fe
Tu FeTu Fe
Tu Fe
 
Dossier Mundial De La Jci Version 2009
Dossier Mundial De La Jci Version 2009Dossier Mundial De La Jci Version 2009
Dossier Mundial De La Jci Version 2009
 
Ejercicio3
Ejercicio3Ejercicio3
Ejercicio3
 

Semelhante a Objet Direct Formation Java pour devenir autonome

I le langage java d'una manière avancée introduction
I  le langage java d'una manière avancée introductionI  le langage java d'una manière avancée introduction
I le langage java d'una manière avancée introduction
sabrine_hamdi
 
0251-formation-java-programmation-objet.pdf
0251-formation-java-programmation-objet.pdf0251-formation-java-programmation-objet.pdf
0251-formation-java-programmation-objet.pdf
Ombotimbe Salifou
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
oussemos
 

Semelhante a Objet Direct Formation Java pour devenir autonome (20)

Chap 02 poo en java
Chap 02 poo en javaChap 02 poo en java
Chap 02 poo en java
 
Gwt oxiane-novae-lr
Gwt oxiane-novae-lrGwt oxiane-novae-lr
Gwt oxiane-novae-lr
 
I le langage java d'una manière avancée introduction
I  le langage java d'una manière avancée introductionI  le langage java d'una manière avancée introduction
I le langage java d'una manière avancée introduction
 
Javaoop
JavaoopJavaoop
Javaoop
 
0251-formation-java-programmation-objet.pdf
0251-formation-java-programmation-objet.pdf0251-formation-java-programmation-objet.pdf
0251-formation-java-programmation-objet.pdf
 
Introduction JavaEE
Introduction JavaEEIntroduction JavaEE
Introduction JavaEE
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux
 
Java j2ee
Java j2eeJava j2ee
Java j2ee
 
.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?.Net pour le développeur Java - une source d'inspiration?
.Net pour le développeur Java - une source d'inspiration?
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
J2 ee
J2 eeJ2 ee
J2 ee
 
Introduction à Play Framework 2
Introduction à Play Framework 2Introduction à Play Framework 2
Introduction à Play Framework 2
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
 
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
 
2 - java : caractéristiques de java
2 - java : caractéristiques de java2 - java : caractéristiques de java
2 - java : caractéristiques de java
 
Ez18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshellEz18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshell
 
Seance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptxSeance_1_cours_introduction_java_Copie.pptx
Seance_1_cours_introduction_java_Copie.pptx
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & tools
 

Objet Direct Formation Java pour devenir autonome

  • 2. Présentations  Votre formateur  Objet Direct Conseil architecture du SI Pilotage de l’entreprise Optimisation et Applications métiers intégration des processus Optimisation de la spécifiques performance Web et Objet ERP BI 2
  • 4. Présentations  Quelles sont vos attentes ?  Quel est votre rôle au sein d’une équipe projet ? 4
  • 5. Introduction • Découvrir que Java est un langage, mais aussi une plateforme • Comprendre le principe et l’intérêt d’une machine virtuelle • Connaître l’histoire de Java et son utilisation actuelle
  • 6. Java est un langage  Java est conçu pour être un langage ● Simple, orienté objet et familier • Pas besoin de connaissances poussées, utilisation de librairies de haut niveau • Les utilisateurs de C++ ne sont pas désorientés ● Robuste et sûr • Vérification à la compilation et à l’exécution • Gestion de la mémoire simple (pas d’arithmétique sur les pointeurs) • Présence du ramasse-miettes (Garbage Collector) ● Indépendant de la machine employée pour l’exécution • Bytecode Java interprété sur une JVM ● Très performant ● Multi-thread 6 Introduction à Java
  • 7. La JVM : principe de la machine virtuelle Mon application Mon application API API JVM JVM Code natif Code natif OS : Windows OS : Linux  Les programmes Java sont compilés en bytecode Java  La JVM peut interpréter le bytecode ou le compiler à la volée (JIT: Just In Time)  Plusieurs éditeurs implémentent la machine virtuelle (Oracle, Apple, IBM, Google, …) 7 Introduction à Java
  • 8. Java est une plateforme  Java est aussi une plateforme ● Java SE (Standard Edition) • Contient les API de base, les API pour le poste client et les API d’usage général ● Java ME (Micro Edition) • Spécialisé pour les applications mobiles ● Java EE (Enterprise Edition) • Spécification d’extensions à Java SE à destination des serveurs d’application • Garantit une architecture standardisée • Java EE est une norme, pas un produit  La plateforme n’est pas uniquement à destination de Java ● Elle est utilisée par des langages récents (Groovy, Clojure, JRuby, Scala, Jython…) ● Mais aussi par des langages plus anciens : • JavaScript : Rhino • PHP: Quercus 8 Introduction à Java
  • 9. WORA (Write Once, Run Anywhere)  Développement sur n’importe quel environnement ● Généralement un ordinateur sous Windows, Linux ou Mac  Compilation dans un bytecode standard Code byte 011001… source Compilateur code JVM  Exécution sur n’importe quelle environnement équipé d’une JVM ● PC, téléphone, routeur, …  Java équipe plus de 4,5 milliards de périphériques ● Plus de 800 millions de PC ● 2,1 milliards de téléphones portables et autres périphériques de poche ● 3,5 milliards de cartes à puce ● Des décodeurs, des imprimantes, des webcams, des jeux, des systèmes de navigation automobile, des terminaux de loterie, des appareils médicaux, des bornes de paiement de parking, … Source : http://www.java.com/fr/about/ 9 Introduction à Java
  • 11. Objectifs • Installer l’environnement nécessaire au développement et à l’exécution • Connaître l’emplacement de la documentation de référence • Savoir compiler un programme Java et l’exécuter
  • 12. JRE  Le JRE (Java Runtime Environment) doit être installé pour pouvoir exécuter un programme Java  Il contient ● La JVM qui interprète le bytecode et le convertit en code natif ● Les API (bibliothèque de classes) à partir desquelles sont développées les applications Java  Disponible sur http://www.java.com/fr/download/ JRE API JVM Code natif 12 Développer et exécuter
  • 13. JDK  Le JDK doit être installé pour pouvoir développer en Java  Il contient ● Le JRE ● javac : le compilateur permettant de générer le bytecode ● jar : l’archiveur permettant de regrouper en un seul fichier (zip) un ensemble de classes ● javadoc : le générateur de documentation ● D’autres outils de développement  Disponible sur http://www.oracle.com/technetwork/java/javase/downloads/index.html 13
  • 14. Documentation  La documentation ● Javadoc oracle : http://download.oracle.com/javase/7/docs/api/index.html ● Java tutorial : http://download.oracle.com/javase/tutorial/  Bonne pratique : Documenter ! ● javadoc sur ses propres classes et méthodes ● Mais aussi commentaires au sein du code ● La complétion automatique ne dispense pas de lire la javadoc ● Les IDEs permettent de consulter la javadoc directement dans l’IDE, de manière contextuelle 14 Développer et exécuter
  • 15. Point d’entrée  Méthode main : point d’entrée de l’application. package com.objetdirect.exemple; /** * Classe de gestion des clients. */ public class GestionClient { /** * Méthode principale de l'application. * @param args les arguments fournis via la ligne de commande. */ public static void main(String[] args) { // TODO implémenter un vrai programme System.out.println("Hello World"); } } 15 Développer et exécuter
  • 16. Exécuter un programme Java  Exécuter un programme ● Pour exécuter, on utilise java • Rappel : seules les classes contenant une méthode main peuvent être exécutées ● La classe doit être dans le classpath • Tout comme pour javac, il peut être redéfini via l’option –cp  Exemple ● java –cp ./lib/log4j-1.2.16.jar;./build com.objetdirect.exemple.GestionClient 16 Développer et exécuter