FILIERE CONCEPTEUR / DEVELOPPEUR EN ENVIRONNEMENT OBJET • 57 JOURS – 399HEURES CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET OBJECTIFS Acquérir les compétences clés nécessaires et la maîtrise des pratiques recommandées pour intégrer des projets de conception, de développement ou de maintenance d’application multi-tiers JAVA. PRE-REQUIS Avoir des notions d’algorithmie PROFIL DES PARTICIPANTS Demandeur d’emploi, indemnisé ou non, titulaire d’un BAC +5 (ou supérieur) d’un domaine scientifique (Mathématiques, Physique, Chimie, Biologie, Mécanique, Electronique, etc.), ou titulaire d’un BAC +2 (ou supérieur) en informatique, ou d’une expérience d’au moins 5 ans dans les métiers du développement. METHODES ET MOYENS PEDAGOGIQUES Alternance d’exercices, cas pratiques et de notions théoriques. 1 PC par stagiaire, remise des supports sur clé USB personnalisée, tableau blanc, vidéoprojecteur Evaluation, cas pratiques, QCM CERTIFICATION / ATTESTATION Attestation de formation Diplôme RNCP de Niveau I (Bac + 5) « Concepteur/Développeur en Environjnemnt Objet » LIEU DE LA FORMATION AJC FORMATION CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET Développement basé sur la réalisation de modèles avec UML 2J Programmation Java – Fonctions essentielles 4J Programmation Java - Fonctions avancées 3J TEST Agile TDD et JUNIT 1J PROJET Projet fonctions Java SE 2J Concepts des bases de données relationnelles 1J Le langage SQL 2J Programmation Java et base de données 1J JPA avec Hibernate 4J Initiation Web avec HTML5, CSS, JAVASCRIPT, BOOTSTRAP 4J Java EE et les API Servlet et JSP 2J Projet JSP/Servlet et méthodes 2J Gérer les dépendances avec Maven 1J Gestion de version de sources avec Git 1J Java Server Faces (JSF) 3J Enterprise Java Beans 2J PROJET METIER Projet JSF/CDI/EJB/JDBC et méthodes 2J SOA Services Web avec Java SE 2J Initiation Spring 3J Spring Web 3J Angular JS V1 et Sensibilisation V2 4J METHODES AGILE SCRUM 3J PROJET FINAL Projet Final - Applications Métier Java EE 3J COMPORTEMENTAL Communiquer efficacement 1J Evaluation des acquis 1J CONCEPTION JAVA BASE DE DONNEES PERSISTANCE WEB PROJET WEB GESTION DE PROJET JAVA FRAMEWORK FRAMEWORK CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Maîtriser les principes de l'approche objet et son vocabulaire. Etre en mesure de lire et de comprendre les principaux diagrammes UML. • • Objectifs et principes d’un développement basé sur la réalisation de modèles objets (MDE/MDA) Diagramme de communication Les concepts généraux de modélisation objet (abstraction, classe, encapsulation, ...) Diagramme de structure composite • Le Design Pattern d’IHM : Model View Controller Framework d’IHM • • Unified Modeling Language (UML) Styles et patterns d'architecture UML et les processus méthodologiques Architecture logicielle à base de composants Présentation d’Unified Process (UP) • Etre en mesure de s'appuyer sur UML pour mener à bien le développement de systèmes informatiques basé sur la réalisation de modèles. • Architecture Différents modèles d’architecture Composants, programmation métier • De l’analyse à la conception Projection du modèle d’analyse sur l’architecture Définition de contrats entre modules fonctionnels Interface d’architecture, de métier, de contrôle • Avantage du modèle objet Design Pattern métiers : adapteur, décorateur, etc. Framework, logiciels et outils Cycle de vie des logiciels et problèmes d'évolution et de maintenance Comment concevoir et réaliser des applications rapidement à partir de frameworks et de composants réutilisables ? CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 4 jours, 28 heures Compilation et exécution Kit de développement Java La compilation Just In Time et la technologie Hot Spot Déploiement des applications • OBJECTIFS Connaître l’architecture de Java SE Connaître les fonctions essentielles de Java SE Comprendre les principes de la programmation orientée objet types primitifs, structures de contrôle, tableaux, … • Déclaration d’une classe Visibilité d’une classe et de ses membres. Bloc d’initialisation statique Constructeurs Spécialisation des classes. Classes abstraites, classes d’interface Les méthodes à arguments variables Les types énumérés Les imports statiques Transtypage des objets. Autoboxing des types primitifs Les types génériques Les classes internes • • • CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME Annotations standards RÉFÉRENCE : CONCDEVJAVA DURÉE : Syntaxe des annotations. Déclaration et utilisation 3 jours, 21 heures • OBJECTIFS Connaître les fonctions avancées de Java SE Savoir déployer et gérer des applications Java SE • Gestion des données à l’aide de JDBC. Utilisation de datasources avec JNDI Invocation dynamique DII • Architecture JMX Agent JMX Mise en œuvre de JMX. • • • CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 1 jour, 7 heures Processus de test Qualité logicielle Typologies de Test Test unitaire et test d’intégration • OBJECTIFS Comprendre la valeur ajoutée des tests unitaires Mettre en œuvre un test unitaire avec Junit Comprendre la notion de Mock et la mettre en œuvre Présentation de la TDD Tests traditionnels et TDD Impact sur la documentation Impact des tests sur la conception Le développement orienté comportement Coûts et bénéfices • Classe de test Méthode de test @Test @Before et @BeforeClass @After et @AfterClass Assert Intégration avec Eclipse • Notion de Suite de test @RunWith Tests paramétrés • Définition d’un Mock Quand les créer Types de Mock Types d’implémentations Bibliothèques de Mocks Mise en œuvre Mockito CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Savoir concevoir et implémenter une application en utilisant les possibilités de JavaSE, des principes de conception adaptés. Les stagiaires travaillent en toute autonomie, en binômes. Ils sont libres d’effectuer les choix adaptés, de développer les parties dont ils jugent avoir le plus besoin et d'apporter leurs propres solutions aux problèmes posés. Le formateur encadre les stagiaires par sa présence et répond aux questions. Il intervient pour épauler un binôme en difficulté ou pour faire le point à l'ensemble du groupe sur des notions non acquises. Il peut être amené à approfondir ou compléter certaines connaissances. • Couches logicielles Modèle Vue Contrôleur (MVC) et ses variantes Domain Driven Design Frameworks CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 1 jour, 7 heures OBJECTIFS Connaître les principes de fonctionnement d’une base de données relationnelle. Limites des systèmes à fichier Organisation base de données Définitions Objectifs des SGBD Fonctions des SGBD Processus de conception de base de données • Généralités Entités et attributs Types et occurrences Identifiants Associations et cardinalités Exemples • Généralités Relations, attributs et tuples Contraintes d'intégrité Traduction modèle E/A - modèle relationnel Problème de la redondance Normalisation Algèbre relationnelle Architecture d'une base de données CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME • RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Savoir écrire des requêtes simples ou complexes. Connaître la syntaxe de l’ordre SELECT Connaître les prédicats simples Savoir écrire des requêtes sur une seule table Comprendre ce qu’est une jointure Savoir écrire des requêtes sur plusieurs tables Connaître les fonctions utilisées dans les requêtes • Comprendre le regroupement Savoir écrire une requête utilisant le regroupement • Connaître les opérateurs ensemblistes Savoir écrire une requête utilisant des opérateurs ensemblistes • Connaître les opérateurs utilisés pour les sous requêtes Savoir écrire des requêtes imbriquées • Savoir insérer une ligne dans une table Savoir modifier une ligne dans une table Savoir supprimer une ligne dans une table CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA JDBC, Java, ODBC, SQL Architecture, interfaces, exemples • DURÉE : 1 jours, 7 heures OBJECTIFS Savoir mettre en œuvre l’accès aux données de bases relationnelles avec JDBC Architecture “classique” Architecture revisitée: Java côté client, Java côté serveur • Utilisation de l'API JDBC Sélection des pilotes de base de données Connexion à une base de données • Oracle SQl server MySQL CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 4 jours, 28 heures Notion de mapping Objet/Relationnel Historique d’hibernate Hibernate et les spécifications JPA Concurrents : EclipseLink, iBatis Versions d’hibernate • OBJECTIFS Savoir utiliser Hibernate comme fournisseur de persistance JPA (Java Persistence API) Spécification JPA 2.0 Fournisseur de persistence EntityManagerFactory EntityManager persistence.xml Persistence unit @ManyToOne, @ManyToMany Eager, Lazy Implications Jee Fetching • 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 • Design Patterns pour couche de persistance Persistance du modèle objet Gestion de l’héritage Gestion des associations • Clauses des requêtes Les fonctions d’aggrégation Les requêtes polymorphes Les sous requêtes Transactions Exceptions Gestion du cache Lazy-Loading • Ecriture du fichier de mapping Gestion de l’identifiant Types de données et personnalisation GTypes de mapping (Top-Down, BottomUp, 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...) • Hibernate dans une application client / serveur Hibernate dans une application Web Hibernate dans une architecture distribuée • Introduction Hibernate et Spring Intégration hibernate et Struts Designs pattern MVC, Business Delegate • Stratégies de cache Cache niveau 1 Cache niveau 2 Types de Cache Configuration statique Configuration dynamique • Problématique Design pattern Niveau d’isolation Appli multi bases Mise en oeuvre Implémentations CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 4 jours, 28 heures • • Requêtes et Réponse HTTP Notion de framework En tête HTTP Codes retour serveur Augmenter la productivité et l’ergonomie des écrans web Analyse avec F12 CSS et Javascript BOOTSTRAP Installation et mise en oeuvre • OBJECTIFS S’initier aux technologies standards du Web Comprendre le positionnement de ces technologies dans une architecture en couche Augmenter la productivité de création d’écrans avec Bootstrap Contexte : web statique Balises HTML HTML et HTML 5 Formulaire Audio et Vidéo Validation de champs • Contexte : ergonomie et habillage web statique Feuille de style externe, interne et inline Notion de cascade Notion de class Notion de id Notion de block Sizing et Positionning • Contexte : web dynamique Spécification ECMA Script Les objets javascript Les objets du navigateur Validation des champs Gestion DOM : Document Object Model Gestion Evénements CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • • • • Principales classes de l'architecture Servlet (ServletContext, ServletRequest, ServletResponse, …) Forme des JSP > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Comprendre et savoir utiliser les composants Web de l'architecture JEE (Servlet, JSP) Le cycle de vie d'une servlet et la gestion des servlets par le conteneur. Méthodes doGet et doPost • Les étapes d'une requête JSP • Directives Scripts JSP (déclarations, expressions et scriplets) Les objets implicites et leur portée Traitement des erreurs JSP Fichiers WAR et EAR Fichier de configuration web.xml • Déploiement sur un serveur à l'aide de Ant Les taglibs et leur descripteur XML Balises personnalisées Balises d'actions prédéfinies • Paramètres d'initialisation Utilisation des JavaBeans dans les JSP Exploration du client et du serveur Récupération des paramètres http • • Langage EL Récriture d'URL Les librairies standards (core, fmt, …) Champs cachés de formulaires Cookies Utilisation d'un objet session Contexte d'une servlet Ecriture de librairies spécifiques CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Savoir concevoir et implémenter une application en utilisant les possibilités des API Servlet et JSP, des principes de conception adaptés. Les stagiaires travaillent en toute autonomie, en binômes. Ils sont libres d’effectuer les choix adaptés, de développer les parties dont ils jugent avoir le plus besoin et d'apporter leurs propres solutions aux problèmes posés. Le formateur encadre les stagiaires par sa présence et répond aux questions. Il intervient pour épauler un binôme en difficulté ou pour faire le point à l'ensemble du groupe sur des notions non acquises. Il peut être amené à approfondir ou compléter certaines connaissances. CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 1 jour, 7 heures OBJECTIFS Comprendre la valeur ajoutée de Maven pour le développeur Mettre en œuvre la gestion de dépendances avec Maven Intégrer Maven dans Eclipse Définition de Maven pour un développeur Définition de Maven pour un chef de projet Règle du « Convention over configuration » dans Maven Valeur ajoutée de Maven par rapport à ANT Détails et sections du fichier pom.xml de Maven Le « super POM » et les mécanismes d’héritage de Maven Exploration de la structure des projets Maven Les types de projets Maven Notion de propriétés et de filtre des ressources dans Maven • • Définition de Maven pour un développeur Présentation du modèle POM Maven et notion de coordonnées Détails et sections du fichier pom.xml de Maven Le « super POM » et les mécanismes d’héritage de Maven Exploration de la structure des projets Maven Les types de projets Maven Notion de propriétés et de filtre des ressources dans Maven • Repository local de Maven : .m2/repository Mécanisme de localisation d’une librairie dans Maven Notion de repositories distants Outillage pour la gestion du cache et de la sécurité avec Nexus Mise en place de Maven Présentation du modèle POM Maven et notion de coordonnées Dépendance transitive dans Maven Optimisation des dépendances dans Maven Le cycle de construction d’un projet Maven Les différents cycles de construction Comprendre les phases / goals /cycles Maven CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : Pourquoi versionner son code source ? Les concepts de base du contrôle de version 1 jour, 7 heures • Qu'apporte la décentralisation ? OBJECTIFS Principe de fonctionnement Comprendre les principes DVCS Branche, dépôt, merge, rebase et tous les concepts DVCS Savoir mettre en place et configurer Git Le contrôle de version Apprendre à gérer son code source avec Git Apprendre à collaborer avec les dépôts Git Savoir manipuler les outils annexes à Git Pourquoi versionner son code source ? Les concepts de base du contrôle de version • Créer/cloner un dépôt Consulter l'état de l'arbre de travail Visualiser les modifications Enregistrer les modifications Parcourir l'historique des révisions Retrouver l'auteur d'une modifications Les concepts de base du contrôle de version • Créer une branche Passer de branche en branche avec les merges ou le rebase Mettre à jour un dépôt Exporter son dépôt Les dépôts distants CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures OBJECTIFS • • Rappels clés JEE 7 Rôle dans l’architecture JSF Les 8 Objectifs de JSF Annotations : @ManagedBean, @ManagedProperty JSF : un framework orienté ’composant’ Implémentation de référence : Mojarra Les concurrents directs et indirects de JSF 2 Annotation : @SessionScoped, @RequestScoped Propriétés par défaut : ’name’, ’scope’ • Savoir démarrer, maintenir et faire évoluer un projet basé sur le framework de création d’écrans JSF 2 (annotations). Maîtrisez le cycle de requête JSF et savoir gérez la navigation entre écrans, ainsi que la validation / conversion des données de formulaires • Fichiers clés : web.xml et facesconfig.xml Configuration du controleur FacesServlet dans web.xml Besoin : industrialiser création écrans xmlns:ui="http://java.sun.com/jsf/fa celets Utilisation XHTML Url gérés : *.faces, *.jsf, /faces/* Notion de template Paramétrer le mode développement ui:composition, ui:define, ui:insert, ui:include Annotations ou xml ? Débogage • • 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 conversion Etape 4 : mise à jour du model Etape 5 : logique métier Etape 6 : rendu de la réponse Utilisation du Phaselistener 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’ CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures 30 Composants JSF : visibilité, style CSS, binding Passage de paramètres aux composants Composants d’affichage texte et image OBJECTIFS Savoir démarrer, maintenir et faire évoluer un projet basé sur le framework de création d’écrans JSF 2 (annotations). Maîtrisez le cycle de requête JSF et savoir gérez la navigation entre écrans, ainsi que la validation / conversion des données de formulaires 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 • • Modèle évènementiel JSF Création d’un évènement Ecouteurs d’évènements • Règles de navigation : par page, globale, par action • 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 Structure des messages JSF : la classe FacesMessage Afficher un message avec HtmlMessage et HtmlMessages Créer un message applicatif avec la classe FacesContext • 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 CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures • • Jee : architecture, services Présentation EJB Statefull ainsi Serveurs d’applications jee 5 Comparaison Stateless - Statefull Conteneur web et conteneur EJB @Statefull EJB2 et EJB3 Les EJB Statefull dans les architectures cluster • • OBJECTIFS Comprendre le rôle et les fonctionnalités des composants EJB Savoir écrire et mettre en œuvre des composants EJB3 Service de nomage (JNDI) : rôle et utilisation Configuration JNDI Présentation du nouveau modèle de persistence des EJB3 Présentation de JBossNS, Clé primaire simple et composite InitialContext() @Entity, @Id, @Generated, @OneToMany Lookup JNDI fichier jndi.properties ENC • Historique et objectifs Requêtage des EJB entité Présentation du pattern "injection de dépendance" Stratégie de mapping de fetching Gestion basique des datasource Services du conteneur EJB • Les 3 types d’EJB : Session, Entity et Message Beans Notion de transaction Dynamic proxy Interfaces : Local, Remote Les intercepteurs et proxy Compatibilité avec la version 2.x • Présentation EJB Stateless Interface et implémentation (@Stateless) Cycle de vie Multithreading et Pool d’EJB Configuration par annotation ou XML Statistiques d’accès à un EJB Création d’un webService à partir EJB3 Session Niveau d’isolation Introduction au commit à deux phases (2PC) Gestion des exceptions CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures OBJECTIFS Savoir concevoir et implémenter une application en utilisant les possibilités de CDI, de JSF et des EJB. Les stagiaires travaillent en toute autonomie, en binômes. Ils sont libres d’effectuer les choix adaptés, de développer les parties dont ils jugent avoir le plus besoin et d'apporter leurs propres solutions aux problèmes posés. Le formateur encadre les stagiaires par sa présence et répond aux questions. Il intervient pour épauler un binôme en difficulté ou pour faire le point à l'ensemble du groupe sur des notions non acquises. Il peut être amené à approfondir ou compléter certaines connaissances. CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME Intérêt des Services Web RÉFÉRENCE : CONCDEVJAVA DURÉE : 2 jours, 14 heures Cycle d’utilisation Java Api for XML Web Services (JAXWS) • OBJECTIFS Savoir écrire et mettre en œuvre des Webservices en Java Structure d’un message SOAP WSDL UDDI Principes de REST et mise en œuvre. • Ecriture d’un Service Web en Java SE Exemple d’EJB stateless Web Service • CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures Concepts de conteneur léger Vue d'ensemble et exemples d'utilisation Pattern "Inversion de Contrôle (IoC) ; Injection de dépendance" Tests unitaires en isolation Approche MVC avec Spring MVC OBJECTIFS Connaître les bases du framework Spring Gérer la configuration des composants d'une application avec Spring Connaître les bonnes pratiques de développement avec Spring Connaître les apports de la Programmation Orientée Aspect (AOP) • Les Beans, BeanFactory et ApplicationContext Modes singleton ou prototype Gestion des propriétés, "collaborators" Méthodes d'injection de dépendance Configuration de Beans spécifiques à Spring, cycle de vie Définition de Bean abstrait et héritage • Pattern DAO avec JDBC et les Classes abstraites de Spring Implémentation DAO avec les APIs Hibernate Démarcation de transactions par programmation et déclaration • Concept de transaction Gérer les transactions avec Spring Transactions programmatiques Transactions déclaratives CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures • Introduction à la configuration Spring Cycle des objets Spring Simplification de la configuration Test d'intégration avec Spring Développer des applications Web avec Spring et Spring MVC. Implémenter des interactions avec état (stateful) en utilisant Spring Web Flow. Sécuriser les applications Web avec Spring Sécurity. Tester les applications Web pour la conformité et les performances. Créer des interfaces web riches avec Ajax et jQuery. Utiliser Spring Roo pour créer des applications Web en quelques minutes Utiliser l'outil SpringSource Tools Suite et Spring Insight. Conversion des données Data binding Validation avec Spring et Bean Validation (JSR 303) Gestion des objets de formulaire • OBJECTIFS Rendu des formulaires Pattern modèle-vue-contrôleur dans Spring MVC La DispatcherServlet Présentation du modèle de programmation des contrôleurs Les vues dans Spring MVC Simplication de la configuration • Support de l'internationalisation Changement du look-and-feel avec les thèmes • • Beans d'infrastructure dans Spring MVC Mapping d'URL Intercepteurs et adaptateurs Résolution des exceptions Source de messages Ajax et Spring MVC Utilisation des frameworks JavaScript Spring MVC et jQuery Création de tag pour diminuer la taille des JSP • • Structuration des pages Modèles réutilisables avec Apache Tiles Configuration de Tiles dans Spring MVC Architecture et configuration • • Motivations derrière Spring Web Flow : gestion de la double soumission de formulaires, état de session obsolète, collision entre fenêtres Vues et résolution Chaîne de résolution des vues Alterner les vues Vues JSON Construction typique d'un flot Utiliser XML pour écrire ses flots Test de l'exécution des flots CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • • Les scopes disponibles (request, flash, conversation, etc.) Motivations derrière Spring Security > PROGRAMME RÉFÉRENCE : CONCDEVJAVA Exécution des actions et data binding DURÉE : 3 jours, 21 heures OBJECTIFS Validation et branches Spring Security dans un environnement Web Les différents types d'actions Utilisation des tags de Spring Security Etat de décision Sécurisation des méthodes Java Gestion des exceptions • Développer des applications Web avec Spring et Spring MVC. Implémenter des interactions avec état (stateful) en utilisant Spring Web Flow. Sécuriser les applications Web avec Spring Sécurity. Tester les applications Web pour la conformité et les performances. Créer des interfaces web riches avec Ajax et jQuery. • • Débugguer les application dans un navigateur Tester les applications Web Selenium Apache JMeter • • • • Utiliser Spring Roo pour créer des applications Web en quelques minutes Réutilisation des flots : sous-flots et héritage de flot Utiliser l'outil SpringSource Tools Suite et Spring Insight. Sécurisation des flots Execution listeners Créer une application en 10 minutes avec Spring Roo Getter/setter implicites, toString et finders: comment Spring Roo fonctionne ? La couche d'accès aux données La couche Web CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 4 jours, 28 heures • • Javascript : prototypes, closures et callbacks La boîte à outils du développeur Web/Javascript Qu'est-ce qu'une architecture orientée REST ? Appels AJAX avec le service $http Consommer des ressources REST avec le service $resource Mise à jour asynchrone : notion de promise • • OBJECTIFS Découvrir AngularJS Développer une application riche à partir d'une maquette statique S'intégrer dans une architecture orientée REST Un écosystème riche de librairies spécialisées JQuery, le couteau suisse du développeur web Architecture et fonctionnalités d'AngularJS • Intégration de la librairie AngularJS Notion de binding Utilisation des expressions • Association d'un contrôleur à un template Notion de scope, et hiérarchie des scopes Propagation des événements de binding Activation de l'internationalisation Formatage des dates, nombres et monnaies • Mise en place d'un filtre existant Paramétrage du filtre "filter" Développer son propre filtre • Définition et API Cycle de vie d'une directive; Manipulation du scope dans les directives Collaboration avec ngModelController Transclusion Boite à outil : $parse, $compile, angular.element • • Configuration du routage, notion de deep-linking Gestion de l'historique de navigation et accès aux paramètres de l'URL Préparer l'affichage d'une vue • Notion de module, module par défaut Modularisation de l'application sous forme de services Injection de dépendances : avantages et bonnes pratiques • Validation des champs de saisie Traitement des formulaires Particularités aux applications singlepage Bonnes pratiques et outils pour l’authentification • Approche des technologies : Jasmine, KarmaJS Tests unitaires avec ngMock Tests end to end avec Angular Scenario • Industrialisation du développement avec Yeoman Optimisation des ressources (javascript, images) Simplifier les styles CSS avec un préprocesseur Angular-UI et autres modules CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures OBJECTIFS Définition théorique et pratique des rôles Scrum dans un environnement projet Agile Principes et valeurs des méthodes Agile et de Scrum. Historique du Lean, d’Agile et de Scrum. Le Produit, La vision, Le valeur métier (Business Value) Le Product Backlog et les requirements. • Les différents rôles du framework Scrum. Caractéristiques, autorité, responsabilité. Les différentes réunions et activités de Scrum. Les différents artefacts ou livrables dans Scrum. Les estimations relatives et le plan de release. Comment estimer et planifier avec Scrum. Management visuel et autres outils. Démarrer un projet en utilisant Scrum. Sujets avancés (Ces sujets sont choisis en concertation avec le groupe) CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 3 jours, 21 heures OBJECTIFS Permettre aux participants de mettre en œuvre tout ce qu’ils ont appris au cours des sessions de formations précédentes en en finalisant le projet ProxiBanque . Savoir développer une architecture en couche à forte valeur ajoutée en privilégiant les interfaces. Apprendre à gérer les risques d’un projet et faire des choix de conception adaptés au problème. Apprendre à effectuer des tests de validation. Réaliser un ou plusieurs rédactionnels de suivi de projet. Les stagiaires travaillent en toute autonomie, en binômes. Ils sont libres d’effectuer les choix adaptés, de développer les parties dont ils jugent avoir le plus besoin et d'apporter leurs propres solutions aux problèmes posés. Le formateur encadre les stagiaires par sa présence et répond aux questions. Il intervient pour épauler un binôme en difficulté ou pour faire le point à l'ensemble du groupe sur des notions non acquises. Il peut être amené à approfondir ou compléter certaines connaissances. CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • • Définition et schéma de la communication Respecter les 6 étapes d’un entretien Communication verbale et non verbale Présenter efficacement ses idées (Modèles SCORE et DESC) Les phénomènes de prisme et d’inférences Obtenir l’adhésion de ses interlocuteurs (Modèle CAP) L’écoute active Rebondir face aux attitudes négatives > PROGRAMME RÉFÉRENCE : CONCDEVJAVA DURÉE : 1 jour, 7 heures OBJECTIFS Savoir improviser, accrocher, débattre, conquérir un public à l’oral comme à l’écrit Savoir se faire comprendre, faire partager ses idées et faire participer ses auditeurs Le questionnement La communication assertive • Se connaître pour mieux communiquer • Adapter son style à la variété des situations et des interlocuteurs Les différents types de réunions et d’entretiens Savoir faire passer un message clair et convaincre dans la communication ascendante et descendante Préparation et suivi Apprendre à mieux mobiliser par le verbe. Fixer le cadre (Thème, objectif, plan) • Respecter le cycle d’attention des adultes Utiliser les outils d’animation pertinents Faire une introduction efficace Réagir positivement en toutes circonstances (Gestion des incidents) Soigner la conclusion Réaliser des PowerPoint efficaces Respecter les règles de rédaction et de présentation d’un rapport Rédiger des mails professionnels Lexique de vocabulaire complémentaire CONCEPTEUR/DEVELOPPEUR EN ENVIRONNEMENT OBJET • > PROGRAMME RÉFÉRENCE : CONCDEVJAVA • DURÉE : 1 jour, 7 heures Formations technique Formation aux méthodes OBJECTIFS Savoir improviser, accrocher, débattre, conquérir un public à l’oral comme à l’écrit Savoir se faire comprendre, faire partager ses idées et faire participer ses auditeurs Adapter son style à la variété des situations et des interlocuteurs Savoir faire passer un message clair et convaincre dans la communication ascendante et descendante Apprendre à mieux mobiliser par le verbe. Formation à la communication • des bénéfices des difficultés rencontrées et des préoccupations • de solutions possibles permettant de remédier aux difficultés rencontrées d’amélioration pour l’ensemble du cursus de professionnalisation propositions individuelles d’amélioration •