Java & Java EE Histoire, présent et futur ?
Khaled BEN DRISS
Directeur BU ingénierie Logicielle
Khaled.bendriss@oxiasoft.com
Tozeur le 24 avril 2012
SOA– OXIA – 2010
Khaled BEN DRISS
Java histoire
2
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Le groupe OXIA en bref Un leader des Systèmes d’Information et du Nearshore au Maghreb : • • • • •
SOA– OXIA – 2010
• •
Date de création : 1998 Forme juridique : Société Anonyme Effectif : +240 personnes (juin 2011) 80% de l’activité réalisée en dehors de la Tunisie Filiale à Paris Filiale à Alger Certification ISO 9001 version 2000 (AFAQ QUAL/2005/25140 ) depuis 7 ans
Java histoire
3
3
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Des projets menés dans plus de 20 pays
Pays d’intervention de OXIA: Tunisie, Algérie, Maroc, Libye, France, Cote d’ivoire, Guinée, Cameroun, Gabon, Egypte, Portugal, Burkina Faso, Sénégal, Ghana,… OXIA se situe principalement à Tunis et Alger et intervient au travers d’un réseau de SOA– OXIA – 2010
partenaires locaux dans les autres pays d’Afrique.
Java histoire
4
4
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
OXIA Offre et vision globale Your Partner of choice
Business Solutions Technologie et infogérance
Nous appuyons les acteurs régionaux dans leur croissance en les aidant à maîtriser leur processus et leur risques et en leur proposant des solutions métiers leader dans leur domaine.
Nous avons développé une approche pragmatique de conseil en Supply Chain et un partenariat avec les solutions ERP leader du marché
Télécoms & Services Conseil opérationnel et technologique pour appuyer un secteur en plein développement, Centres de services et infogérance
Pour ses client Nearshore, OXIA offre des centres de services en ingénierie informatique et en infogérance à la pointe de la technologie selon des normes de services les plus strictes (24h/24 7j/7 )
Java histoire
5
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
SOA– OXIA – 2010
Management Consulting
Services Financiers
Industrie et Distribution
Quelques références Industrie
Distribution
Banking & Finance
Telecom et services
SITEX
Java histoire
SOA– OXIA – 2010
Nearshore
6
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Java & Java EE Histoire, présent et futur ?
M. Khaled BEN DRISS, Directeur BU Ingénierie Logicielle
khaled.bendriss@oxia-group.com
www.oxia-group.com
Confidentiel
V1-0-2
avril 2012
SOA– OXIA – 2010
Objectif de la présentation
Java histoire
8
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Plan Plan de la présentation Java un langage Objet Java EE et le succès de Java La place de la communauté Java
SOA– OXIA – 2010
Java va t il rater le virage PaaS ?
Java histoire
9
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Genèse de Java ? •Printemps 90 : Naughton, Gosling et Sheridan : "Le consommateur est le centre du projet, il faut construire un
environnement de petite taille avec une petite équipe et intégrer cet environnement dans une nouvelle génération de machines : des ordinateurs simples pour des gens normaux." •Printemps 91 : Microprocesseur grand public. La "Green Team" prototype une machine de pilotage de l'électroménager
•Août 92 : -------duke---------->
Java histoire
Construction d’un PDA appelé Star7 ayant une interface graphique et un agent intelligent appelé Duke pour prêter assistance à l’utilisateur 10
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
SOA– OXIA – 2010
•Août 91 : Gosling développe Oak
Accouchement de Java, il y a presque 17 ans! •Le langage Java est un langage de programmation orienté objet créé par James Gosling et Patrick Naughton, employés de Sun Microsystems, présenté officiellement le 23 mai 1995 au SunWorld.
Java histoire
11
Tunisie -Tunis– ISG 24/04/2012
SOA– OXIA – 2010
•Août 1995 - Première licence sur Netscape (211 classes & interfaces) •Janvier 1996 - JDK 1.0.1 • Février 1997 - JDK 1.1 (477 classes & interfaces)
khaled.bendriss@oxia-group.com
Java : Write once deploy anywhere (Portabilité) Source *.java
•Byte-Code/P-Code/J-Code opcode : 1 octet pour l'instruction 0,n opérandes
Compilateur javac
•MicroProcesseur logiciel Jeu d'instructions Registres (pc, optop, frame, vars)
Byte-Code *.class
Pile, Heap Ramasse-miettes Tas de constantes
•==> Compilé ou Interprété
Interpréteur SE Matériel
Java histoire
12
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
SOA– OXIA – 2010
MV
Espace de stockage des méthodes
Plan Plan de la présentation Java un langage Objet Java EE et le succès de Java La place de la communauté Java
SOA– OXIA – 2010
Java va t il rater le virage PaaS ?
Java histoire
13
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
La plateforme Java est + importante que le langage Java •J2SE 1.2 (9 décembre 1998 - 1 524 classes et interfaces) •Java 2 : le « 2 »pour marquer le changement, ce qui est mis en avant c’est plateforme J2SE (Java 2 Platform, Standard Edition) remplace JDK pour distinguer la plate-forme
de base
La JVM
J2EE (Java 2 Platform, Enterprise Edition) Notions de conteneur EJB Servlets JSP
JSM Javamail SOA– OXIA – 2010
…
J2ME (Java 2 Platform, Micro Edition)
•C’est le début du succès de la plateforme Penser architecture Java histoire
14
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
SOA– OXIA – 2010
La plateforme Java est + importante que le langage Java
Java histoire
15
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
La plateforme Java est + importante que le langage Java Indépendance , intégration
métier Responsable IT Architecte
version des Services, visibilité, sécurité
Assembleur de composants Développeur de composants Java histoire
16
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
SOA– OXIA – 2010
#$%! , java C#, bugs… I…
Java 5 un changement important du langage •Nouveautés au langage dans la version J2SE 5.0 (30/04/2004, 3270 classes & interfaces, initialement numérotée 1.5!!!!) : Programmation générique – Generics Annotation Autoboxing/unboxing Énumérations — le mot-clé enum Varargs Imports statiques Extension du for pour les boucles …
•Changement du marketing de SUN
Java histoire
SOA– OXIA – 2010
Pour rattraper C#
17
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Plan Plan de la présentation Java un langage Objet Java EE et le succès de Java La place de la communauté Java
SOA– OXIA – 2010
Java va t il rater le virage PaaS ?
Java histoire
18
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
La communauté Java est + importante que la plateforme Java •Java Community Process Créé en 1998, le JCP () est le processus chargé de définir les évolutions de Java : cela
concerne aussi bien les plateformes que les API. Le site du JCP est à l'url www.jcp.org
•Organismes open source (Apache, Eclipse, Netbeans, CodeHaus, SpringSource, Jboss, ...) enrichissent la communauté d'APIs et d'outils particulièrement utiles et sont même moteurs d'inspirations sur certaines évolutions de Java. Des Frameworks de qualité (log4j Vs Java log, …) Des alternatives aux standards (velocity, GWT, …) Des extensions plus innovantes (Spring, Hibernate, Groovy,…)
SOA– OXIA – 2010
•Le modèle open source et la communauté Java ont réussi à influencer SUN jusqu'à la pousser à mettre Java en GPL
Java histoire
19
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Java 7 la première version GPL
SOA– OXIA – 2010
•Le 07 juillet 2007 (version 07 le 07/07/07 ) •Il s’agit de la première version sous la licence GPL •Sous le contrôle d’Oracle
Java histoire
20
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Plan Plan de la présentation Java un langage Objet Java EE et le succès de Java La place de la communauté Java
SOA– OXIA – 2010
Java va t il rater le virage PaaS ?
Java histoire
21
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Java 8 : encore une version en attente d’un sursaut Nouveautés probables de cette version sera l’ajout des closures (à la groovy ou scala) Gestion de modules de la JVM avec le projet Jigsaw
Entre temps : Avril 2012 Java a perdu sa place de 1er langage de programmation au profit du langage C
SOA– OXIA – 2010
(qui lui n’a pas avancé)
Java histoire
22
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Java est toujours à la recherche de la productivité Les grandes « erreurs » de la plateforme Java Les applets Les servelts pour faire du HTML (du moins jusqu’à l’apparition des JSP) Les EJB 1 et 2 du moins jusqu’à la version 3 J2ME Il a fallu attendre android
SOA– OXIA – 2010
Le poids de vendeur de serveur d’application dans les décisions JCP Java EE est « vue » comme Trop complexe à faible productivité Pas encore de proposition pour un langage dynamique à la Groovy
Java histoire
23
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Java 8 : encore une version en attente d’un sursaut CloWM Le monde Java a besoin d’une proposition claire pour le CloWM (le Cloud, le Web et Mobile) une plateforme de développement Cloud PaaS une plateforme de développement productive pour le web (type Grails)
SOA– OXIA – 2010
une plateforme de développement mobile (type android)
Java histoire
24
Tunisie -Tunis– ISG 24/04/2012
khaled.bendriss@oxia-group.com
Khaled Khaled BEN BEN DRISS DRISS
Directeur Directeur Associé Associé Tel Tel :: +216 +216 71 71 28 28 27 27 00 00 Mob.: Mob.: +216 +216 25 25 23 23 45 45 30 30 khaled.bendriss@oxia-group.com khaled.bendriss@oxia-group.com
11 rue Claude Bernard 1002 Le Belvédère Tunis, Tunisia Tél : +216 71 28 27 00 Fax : +216 71 28 27 05
www.oxiasoft.com