OBJIS : 10 ans d'expérience en formation JAVA. Programme détaillé formation 'Développeur Java web Mobile' OBJIS Congo



Documents pareils
Android 4 Les fondamentaux du développement d'applications Java

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Compte Rendu d intégration d application

Développement d applications professionnelles avec Android 2

CQP Développeur Nouvelles Technologies (DNT)

Cours en ligne Développement Java pour le web

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Devenez un véritable développeur web en 3 mois!

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

F O R M A T I O N CATALOGUE

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Les fondamentaux du développement d applications Java

Point sur les solutions de développement d apps pour les périphériques mobiles

Refonte front-office / back-office - Architecture & Conception -

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Auto-évaluation Aperçu de l architecture Java EE

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

4. SERVICES WEB REST 46

Vulgarisation Java EE Java EE, c est quoi?

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Introduction à la plateforme J2EE

Table des matières. Partie I Concepts de base Préface... VII

Web Tier : déploiement de servlets

Java pour le Web. Cours Java - F. Michel

Programmation des applications mobiles avec Android. 1 Inspiré du cours de Olivier Le Goaer

Apache Tomcat 6. Guide d'administration du serveur Java EE sous Windows et Linux. Résumé. Étienne LANGLET

Introduction aux «Services Web»

J2EE - Introduction. Développement web - Java. Plan du chapitre

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Programme ASI Développeur

Environnements de Développement

Android. Présentation d Android. Florent Garin

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

les techniques d'extraction, les formulaires et intégration dans un site WEB

1. Installation d'un serveur d'application JBoss:

BES WEBDEVELOPER ACTIVITÉ RÔLE

JOnAS 5. Serveur d application d

Outils, langage et approche Android Une introduction. Nicolas Stouls lyon.fr

Initiation à JAVA et à la programmation objet.

Application Web et J2EE

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Introduction ANDROID

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Catalogue des Formations Techniques

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Ociensa Technologies.

PROGRAMME DE FORMATION Cursus Développeur architecte JAVA - 50 jours. Avril - Juin 2013 Casablanca, Maroc.

TD/TP 1 Introduction au SDK d Android

Utilisation de Jakarta Tomcat

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Mise en œuvre des serveurs d application

TP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI

10. Base de données et Web. OlivierCuré

Outil de planification en ligne pour des créations de rendez-vous ou de sondage

Installation et prise en main

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. A308, Université de Paris 13

Bases Java - Eclipse / Netbeans

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

TP2 : Client d une BDD SqlServer

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

GECKO Software. Introduction à MOBIDICK. Modular But Integrated Application Framework

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Table des matières Introduction Démarrage Les composants graphiques... 26

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Formation : WEbMaster

Formation en Logiciels Libres. Fiche d inscription

Messagerie asynchrone et Services Web

Formation : Langues : Types d Intervention et Secteurs d Activité :

Formations Cours du soir Coaching Stage intensif. Brochure Rencontrez-nous au salon «Solutions Linux» 2010, stand B14

LE CENTRE DE RÉFÉRENCE PROFESSIONNELLE TIC DE BRUXELLES TAKE I.T. EASY FORMATION TECHNIQUES IT & WEB POUR INFORMATICIENS

Applications et Services WEB: Architecture REST

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Catalogue des formations Edition 2015

Joomla! Création et administration d'un site web - Version numérique

IBM DB2 Alphablox. d administration GC

Un serveur d'archivage

Module BD et sites WEB

Mettez les évolutions technologiques au service de vos objectifs métier

Projet Java EE Approfondi

- TP Programmation Android - NFA024 Conservatoire National des Arts et Métiers

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Création d une application JEE

TP1 : Initiation à Java et Eclipse

Architecte Logiciel. Unité de formation 1 : Développer en s appuyant sur les modèles et les frameworks 7 semaines

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

SIO Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA - J2EE. 27 ans - 5 ans d'expérience

Application web de gestion de comptes en banques

Transcription:

Programme détaillé formation 'Développeur Java web Mobile' OBJIS Congo Objectifs : fournir les connaissances théoriques et pratiques permettant d'intégrer un projet JAVA Entreprise Audience : toute personne déterminée à exercer un métier porteur de développeur Java Web Mobile Prérequis : connaissances de base en informatique Durée : 600 heures en cours du soir (sur 2 ans) ou cours du jour (sur 1 an) Contact : 00 242 04 490 55 12 / contact@objis-congo.com Table des matières Vous allez apprendre à :...2 Programme détaillé 1ère année : fondamentaux Java et Jee...2 Programme détaillé 2ème année: perfectionnement Jee et mobilité...5

Vous allez apprendre à : Maîtriser les concepts clés de la Programmation Orientée Objet (POO) Développer des applications JAVA type 'client lourd' Accéder à une base de données avec JAVA Développer des applications Web en JAVA Valider votre expertise à travers des mini-projets en binôme Augmenter la productivité de vos développements Développer des applications Mobile avec ANDROID Valider votre expertise à travers des mini-projets en binôme Programme détaillé 1ère année : fondamentaux Java et Jee Introduction Atouts java : portabilité, sécurité, réseau, gestion mémoire Comparaison Java et C/C++, PHP, C#, Visual basic Lien entre java standard (jse), java entreprise (jee) et java micro (jme) Notion de JSR : Java Specification Request Notion de JCP : Java Community Process Historique : java a 20 ans! Développement Java cycle : coder, compiler, exécuter, déployer outils clés de java : javac, java, jar, javadoc Byte code, machine virtuelle Java (JVM) Ramasse-miettes Java : Garbage Collector Gestion des exceptions dans java Différence entre JRE et JDK Environnement Eclipse Valeur ajoutée d un environnement de développement Comparaison Eclipse / Netbeans Notions de vues, perspectives, plugins, MarketPlace Génération de la Javadoc, Génération d un livrable Jar API Java java.lang, java.util, java.io Librairies de base Java Virtual Machine (JVM) Technologies d intégration (JDBC, RMI, JNDI) Technologies de déploiement java Généricité, bouche for étendue Javadoc API JSE 8 Bases du langage Types primitifs, types Objets Tableaux dans java Chaînes de caractères dans java Opérateurs et Instructions

Notion de package Gestion des exceptions java Programmation Objet : Définition de classes Java Définitions de classes et fichiers source java méthodes, arguments, Champs, portée public, private, protected, default Organisation des fichiers et packages Importation de classes java Constructeurs, this, super Conteneurs du JDK et classes string Méthode tostring() Méthodes main() et points d entrée Concepts objets Classe et Objet Encapsulation Héritage (super) Interface Polymorphisme Surcharge, redéfinition Classes utilitaires Classe de base : Object, Integer, String, StringBuffer, Math Les Collections : Vector, List, HashMap, Entrées / Sorties Lectures / écritures dans un fichier Sérialisation Accès aux données Introduction java JDBC Différences api java.sql et javax.sql Approche classique : Connection, Statement, ResultSet Interface Rowset, et comparaison rowset/resultset Notion de transaction. Autocommit JDBC Gestion Exceptions Création Interface Graphique Présentation AWT et SWING Méthodologie création IHM Conteneur, Layout, Composants Ecouteurs Architecture Nouveautés Java 8 Programmation fonctionnelle Expressions Lambda Multithreading Introduction JEE spécifications JEE 7 (JSR 342) architecture, conteneurs, services, APIS, roles, clients, livrables, serveurs services clés : JNDI, JPA, JTA, JCA, JAAS, JAX-WS, EJB, JSP, Servlets différences Tomcat, JBoss, WebSphere, WebLogic Services spécifiques JEE 7 JEE et HTML5 : WebSockets JEE et le Cloud Computing JEE et JSON Servlets Le protocole HTTP (en têtes, gestion de l état, pile TCP/IP)

Servlet : entre le réseau et votre programme L API servlet et le cycle de vie (init, service, destroy) Configuration web.xml et déploiement dans WAR Controlleur J2ee : le RequestDispatcher Design pattern MVC JavaServer Pages (JSP) Historique et comparaison avec Servlets Cycle de vie d une page JSP JSP et l intégration des JavaBeans Comparaison des modèles MVC 1 & MVC 2 Gestion des sessions Cookies EJB 3 Architectures distribuées création EJB Session sans état communication servlets / EJB Injection avec CDI (JSR 299) JSTL et EL Valeur ajoutée de balises jstl c:out, c:foreach variables implicites Langage EL Mise en oeuvre Optimisation JSP avec Jstl/EL DataSource JNDI Problématique de création et fermeture de connexion Pool de connexion Service JNDI Mise en oeuvre DataSources JNDI sous Tomcat. context.xml, web.xml Sécurité Spécification JAAS Authentifier et Autoriser balises security-constraint, web-resource-collection fichier web.xml, server.xml, context.xml Notion de royaume d authentification (Realm) Notion de LoginModule (BASIC, FORM, DIGEST, CLIENT-CERT) Filtres Comprendre les filtres JEE Interface Filter Création filtre configuration filtre balise filter du web.xml Listener Comprendre les listeners JEE Interface Listener Création listener configuration listener balise listener du web.xml Introduction aux frameworks de présentation Qu est ce qu un framework? Panorama frameworks de vues : struts, Spring MVC, JSF, Wicket Quel framework choisir?

Programme détaillé 2ème année: perfectionnement Jee et mobilité Framework JSF Framework Hibernate Web Services Android Introduction JSF 2 Rappels clés JEE 7 Les 8 Objectifs de JSF JSF : un framework orienté composant Spécifications JSF 2.0, 2.1 et 2.2 (JSR 344) Nouveautés JSF 2.2 : Faces flow, MultiTemplating, HTML5 Implémentation de référence : Mojarra Jar : javax.faces-2.2.1.jar Les concurrents directs et indirects de JSF 2 Configuration JSF 2 fichiers clés : web.xml et faces-config.xml Configuration du controleur FacesServlet dans web.xml Url gérés : *.faces, *.jsf, /faces/* Paramétrer le mode développement : javax.faces.project_stage Annotations ou xml? Cycle de vie requête JSF 2 Les 6 étapes clés du cycle de vie requête JSF Etape 1 : restauration de la vue Etape 2 : application des paramètres de la requête Etape 3 : validation et convertion Etape 4 : mise à jour du model Etape 5 : logique métier Etape 6 : rendu de la réponse Utilisation du Phaselistener Bean managés role dans l architecture JSF Annotations : @ManagedBean, @ManagedProperty Annotation : @SessionScoped, @RequestScoped Propriétés par défaut : name, scope Facelets Besoin : industrialiser création écrans xmlns:ui="http://java.sun.com/jsf/facelets Utilisation XHTML Notion de template ui:composition, ui:define, ui:insert, ui:include Débogage Gestion des ressources d un projet JSF convention : répertoire resources Gestion des feuilles de style : h:outputstylesheet Gestion des images : h:graphicimage Gestion des scripts javascript : h:outputscript attribut library attribut name Bibliothèque des composants standards

30 Composants JSF : visibilité, style CSS, binding Passage de paramètres aux composants Composants d affichage texte et image Composants de saisie et "value change event" Composants de commande "action event" Combo-box, listes, cases à cocher et boutons radio PanelGroup et le PanelGrid DataGrid Gestion des messages utilisateur Structure des messages JSF : la classe FacesMessage Afficher un message avec HtmlMessage et HtmlMessages Créer un message applicatif avec la classe FacesContext Validation Principe de la validation JSF Méthode de validation dans un backing-bean Les validators standards de l API JSF Modèle de programmation pour écrire un validator personnalisé Validation avec implémentation JSR 303 : Hibernate validator Gestion des évènements Modèle évènementiel JSF Création d un évènement Ecouteurs d évènements Navigation JSF Règles de navigation : par page, globale, par action Formulaire JSF Création formulaire JSF (XHTML) : balises html et core Créer le @ManagedBean du formulaire Langage d expression JSF : Unified EL Validation des champs et cycle de vie Conversion implicite des champs Composants Additionnels Les limites des composants JSF Atouts et configuration composants Primefaces Atouts et configuration composants Richfaces Internationaliser une application JSF Rappel internationalisation Java Gestion du locale : par défaut, personnalisée Catalogues de traduction : libellés, Messages applicatifs, messages d erreur de validation Introduction JPA Notion de mapping Objet/Relationnel Historique d hibernate Hibernate et les spécifications JPA Concurrents : EclipseLink, ibatis Versions d hibernate Persistance avec JPA Spécification JPA 2.0 Fournisseur de persistence EntityManagerFactory EntityManager persistence.xml Persistence unit @ManyToOne, @ManyToMany Eager, Lazy

Implications Jee Fetching Persistance avec Hibernate Processus de développement Top-down, Bottom-up, Meet in the meedle Connexion à la base de données Configuration d Hibernate et Session Factory Création, ajout et suppression d objets Session Hibernate HibernateUtils Conception avec Hibernate Design Patterns pour couche de persistance Persistance du modèle objet Gestion de l héritage Gestion des associations HQL et JPQL Clauses des requêtes Les fonctions d aggrégation Les requêtes polymorphes Les sous requêtes Mapping objet relationnel Ecriture du fichier de mapping Gestion de l identifiant Types de données et personnalisation GTypes de mapping (Top-Down, Bottom-Up, Meet in the Midlle) Mapping d héritage (une table par classe, une table par hiérarchie... ) Mapping d association (par clé étrangère, par table de jointure...) Introduction : Architecture SOA et Web Services Synthèse : les 5 caractéristiques clés de SOA Méthodologie : les 7 briques clés d une architecture SOA Relation SOA / Web Services Technologies principales Web Services- : HTTP, XML, SOAP, WSDL, UDDI XML dans Java Syntaxe et espaces de nom XML Description de XML avec les schémas Conversion et déconversion de paramètres avec JAXB Personnalisation des liaisons XML-Java XML bien formé / XML valide Manipulation XML : SAX, DOM, StaX Messages SOAP Rôle de SOAP dans les services Web Structure des messages SOAP SOAP-ENV, Header, Body, Attachement Opération, messages et erreurs Interface avec WSDL Rôle de WSDL dans les Web Services Anatomie d un document WSDL : 5 sections clés Description du contrat / interfaces / opérations dans section porttype Comprendre les sections abstraites : messages, types Comprendre les sections concrètes : binding, services Spécification de l implémentation du service (service) Spécification du protocole d échange de messages (Binding)

Gouvernance web services Gouvernance : brique N 2 d une architecture SOA Conformité avec les normes WSI (Web Service Interoperability) Intégration de proxies et d adaptateurs Mise en œuvre d une terminaison de service Web avec JAX-WS Personnalisation de services Web JAX-WS Déploiement d un fichier WAR de service Web Interception de trafic entre les services Web et les clients Optimisation de la transmission de messages Développement Web Services SOAP en Java 8 Méthodologie : créer WS à partir de WSDL (WSDL-first) ou à partir du code (code-first)? Comprendre l API de haut niveau JAX-WS : Java API for XML Web Services Comprendre l API de bas niveau SAAJ valider la conformité de son WS avec les normes internationales WS-I Outils WS-I : outils : Analyzer, Monitor Création d intercepteurs (Handler) coté web service et coté client Optimisation de la transmission de messages avec MTOM Clients de services Web Accès à des services Web via leur WDSDL Création de fichiers sources clients à partir de WSDL Personnalisation des fichiers sources générés avec JAX-WS Conception et création de services et de clients de notification (one-way) Écriture de clients multithreadés Interception et modification de messages SOAP Requêtes asynchrones Approche REST Développement de services Web RESTful avec JAX-WS Caractéristiques clés : POJO annotés, HTTP, XML / JSON Créer de l interactivité du côté client Invoquer des services Web avec l API Dispatch Traitement des messages XML reçus Sécurité déléguée au transport Développement REST avec Framework Jersey et CXF Comparaison SOAP / REST critère interopérabilité critère- : transport critère- : gouvernance critère- : spécifications critère- : sécurité SoapUI : introduction Besoin : tester web services version Open Source version Pro périmètre installation configuration Introduction ANDROID Un monde ouvert! Concurrents Architecture Android Android pour développeur Android pour constructeur Android et Java

Android et C Android et Linux Boîte à outils SDK Android Plugin Eclipse ADT Virtual Device Manager SDK Manager Périphérique virtuel (AVD) Machine virtuelle Dalvik Dalvik Debug Monitoring Service (DDMS) Android Asset Packaging Tool (aapt) Création package (.apk) Android Debug Bridge (ADB) SQLite Traceview MkSdCard Dx activitycreator layoutopt Emulateur Compilation Conception Contraintes développement pour mobiles Développer pour Android Composants d une application Android Les 4 types d application Android Fichier et éditeur Manifest.xml Cycle de vie application Android Priorités des applications Etat des processus Ressources XML / Java Classe Application Activity : la classe Activity : le cycle de vie Interface utilisateur Fondamentaux Activity, View, View Group Views personalisées Widgets Android Layouts : Linearlayout, FrameLayout Layouts : RelativeLayout, TableLayout Gallery Ressources drawable Résolution Menus Balises dans Manifest.xml Optimisations Ecran d accueil Live Folders Recherche Quick Search Box Live WallPapers Boîtes de dialogue Classe Dialog Extensions classe Dialogs AlertDialog activity à thème Dialog Toasts

Intent Présentation Cas d utilisation Définition d un besoin Action et données d un Intent Types d action : VIEW, EDIT, DELETE, PICK... Constructeur Relation Intent / Activity Intent implicites Intent explicites Pending Intents Launch Intent Intent Filters Linkify Notifications BroadCast Receiver Présentation Cas d utilisation Services Présentation Cas d utilisation Adapters Présentation Cas d utilisation Widgets Fichier Manifest Présentation Role balise manifest balise uses-sdk balise uses-configuration balise use-features balise support-screen balise application balise provider balise receiver balise instrumentation balise permission balise intent-filter Ressources Répertoire res Externalisation ressources Ressources drawable Ressources layout Ressources strings Couleurs Dimensions Animations Menus Ressources dans code Référencement ressources Cycle de vie et état Cycle de vie d une activity Pile des activities priorité Etats : Active, pause, stop, insactive Changement d état

Cycles : complet, visible, actif Classe Activity ListActivity, MapActivity, TabActivity Persistance données Sauvegarde état Activity Sauvegarde choix utilisateur Shared Preferences Impact sur vitesse, efficité, robustesse Fichiers Internet Webkit Connection à Internet Flux de données WebView xmlpullparser Bande passante Cache Base de données SQlite Avantages SQlite Transactions Inconvénient SQlite Cursor Content Values CRUD Content provider Présentation Cas d utilisation Publication données Consommation de données content :// découplage appli/données gestionnaire contacts base médias bases natives SQLiteOpenHelper SQLiteHelper Géolocalisation Géocodage avant / inverse Map Views Map activity Overlay Position Alertes Location Manager Location Provider Taches de fonds Création et démarrage services Priorités Création threads Afficher Toasts Notification Manager Notifications continues Alarmes Multimedia lecture fichiers audio, video Ressources

Video View Media Recorder Intents audio / video images EXIF Media Store reconnaissance vocale Téléphonie et SMS Initier appel téléphoniques Etat téléphone, réseau, carte SIM Monitoring Envoi SMS, MMS Intents sms, mms SMS entrants Bluetooth gérer périph. Bluetooth mode de découverte Monitoring Réseau Monitorer connexion internet Préférences transfert données Tache de fond Wi-Fi Monitorer Wi-Fi Détails réseau Wi-Fi Configuration Wi-Fi Scanner points d accès Wi-Fi Capteurs Introduction Sensor Manager Monitoring capteurs Interprétation valeurs Compas, accéléromètre Capteurs d orientation Vibreur Sécurité Sécurité Linux Sécurité Android Balise permissions du Manifest.xml Certificats Keystore Multithread Comprend Multitachge Android Communication ninter processus (IPC) Liens utiles