En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies et de technologies similaires permettant l’utilisation de données relatives à un même utilisateur par notre société ainsi que par des tiers comme les régies publicitaires partenaires, afin de réaliser des statistiques d'audiences et de vous proposer des services en lien avec votre recherche de formation, une offre publicitaire adaptée à vos centres d'intérêts et la possibilité de partager des contenus sur des réseaux sociaux. En savoir plus/paramétrer

Capgemini Institut

Développement et Architectures d'Applications

Certification / expertise

21 heure(s)

2685 € HT

Organisme privé de formation continue

Consultez le site de l'organisme

Objectifs

  • Etudier et connaitre les évolutions clés du développement d’applications : Abstraction de la conception, modélisation, urbanisme des solutions.
  • Les nouvelles architectures fondées sur l’asynchronisme des traitements, sur la réutilisation et la distribution des composants.
  • Le formalisme : De l’objet aux composants, de C++ à Java et C#.
  • Les processus nouveaux : Compilation intermédiaire, assemblages et archives.
  • Le rôle central de XML, l’architecture SOA, les MSA et les Web Services.
  • Les paradigmes nouveaux du développement : Cloud, langages scripts et dynamiques, forges collaboratives.
  • Le panorama des solutions du marché, avantages et inconvénients, exemples de mise en œuvre.
  • La mutation du métier de développeur : Abstraction, réutilisation, communication.

Public visé

  • DSI et leurs collaborateurs directs.
  • Décideurs informatiques.
  • Architectes.
  • Consultants.
  • Ingénieurs et chefs de projets.
  • Développeurs.
  • Maîtrises d’ouvrage.

Programme

Évolution des fondements : Plates-formes, méthodologies, XML :

Changements de repères :
  • De l’impératif à l’objet, du spécifique au standard, du jetable au réutilisable.
  • Du modèle propriétaire synchrone : Cobol/ CICS/ DB2, Cobol/TDS/IDSII aux conteneurs d’applications et à la désynchronisation des applications.
  • Distribution et urbanisation des applications : SOA et services Web, MSA.
Le back-office et les projets de migration lourde :
  • La réalité du marché : Vraies questions et fausses idées.
  • Les applications de back-office, le rôle des développeurs traditionnels et des langages impératifs.
  • Les problèmes concrets de cartographie et de recours aux compétences spécialisées.
  • La réalité de Cobol et le portage de ses applications.
  • La réutilisation des transactions via les passerelles dédiées.
  • La résurgence des L4G qui se sont adaptés.
Le nouveau périmètre méthodologique :
  • Les trois niveaux de la modélisation : Données, processus et orchestration.
  • Méthodologies, langages de modélisation et modeleurs graphiques.
  • UML, BPMN.
  • Les plates-formes de modélisation.
  • Les modèles de données et la forte présence de Merise.
L’évolution de la gestion de projet :
  • Le mouvement des méthodes agiles : Du prédictif à l’adaptable.
  • Les méthodes et bonnes pratiques les plus courantes : Lean Software Management, eXtreme Programming et Scrum.
  • La conduite des projets par les tests.
  • Qualité et mesure de la complexité du code.
  • Exemples concrets.

De l’objet aux composants :

Les principes de base :
  • La réutilisation des composants.
  • Les principes fondamentaux de l’objet : Classes, packages et espaces de noms, héritage, interface et polymorphisme, encapsulage, surcharge de méthodes, transtypage, gestion des exceptions, agrégation, composition.
  • Les bonnes pratiques de l’objet : La gestion par références.
La distribution des composants :
  • La nécessité d’un middleware de communication.
  • Les référentiels de composants.
  • Les problématiques d’authentification et de sécurité liées à la distribution des composants : Vers une véritable gestion des identités.

Les frameworks techniques et frameworks d’architecture :

L’importance des frameworks :
  • Les langages objet indissociables de leur environnement.
  • Liberté d’écriture ou modèle contraint.
  • Un choix Java xE vs.NET qui se pose rarement.
Les frameworks Java xE :
  • Les frameworks fondamentaux : Java SE, Java EE, Java ME.
  • Le modèle EJB vers plus de simplicité.
  • Les apports de Java EE 6 et 7, Java SE 7 et SE 8.
  • L’ouverture de la JVM (JSR 223).
  • Le futur Java EE 8.
  • Le modèle Pojo et le conteneur léger (Spring).
  • Les concepts avancés : IoC, Injection de dépendances, Programmation par aspects.
  • Comparaison de Java EE et Spring. : Le plus simple ? le moins contraignant ?
  • Un nouveau venu : TomEE.
.NET de Microsoft :
  • Le modèle fonctionnel : Diversité des langages, compilation Just In Time, Assembly.
  • Les langages compatibles et leur modèle de référence CLI.
  • L’espace d’exécution CLR (Common Language Runtime).
  • Les espaces de noms de.NET.
  • .NET 4.X : Distinction entre l’OS et le serveur d’applications.
  • La poussée de.NET vers l’Open Source :.NET Core 1.0.
Les frameworks d’architecture :
  • Le recours aux motifs de conception (design patterns).
  • Le motif MVC (SmallTalk) et ses déclinaisons JSF, RoR et Struts.
  • Le motif Hibernate pour le mapping et la persistance.
  • Linq, le requêtage universel de Microsoft.
  • Les frameworks d’intégration (ESB).
Les serveurs d’applications :
  • Le rôle d’un serveur d’applications.
  • La distinction entre container servlet/JSP et container d’EJB.
  • La concentration des serveurs d’applications Java : WildFly (RedHat), WebSphere, Oracle WebLogic, TomEE, Microsoft Windows.

Les langages modernes : Java, C#, VB.NET, etc :

Java et la maturité :
  • Des concepts nouveaux : Inférence de type, « duck typing », etc.
  • Les avancées depuis Java 5 : Annotations, assertions, etc.
  • Les JDK 8 et 9 et les projets associés.
  • Un rapprochement architectural de plus en plus net avec C#.
  • La synthèse recherchée par Google.
Les principaux langages de la galaxie.NET :
  • C#.
  • Visual C++.
  • ASP.NET.
  • Visual Basic.NET.
Les langages script et dynamiques :
  • Typage statique et dynamique.
  • La montée en puissance de Javascript : Serveurs et clients.
  • Les frameworks Javascript : jQuery, Node.js, Angular.js, etc.
  • Les « compilateurs » Javacript : Coffeescript, Typescript (le transpiling).
  • ASM.js et Web Assembly.
  • PHP et Ruby, des solutions crédibles et les frameworks associés.
  • Dart, un successeur pour Javascript ?
  • Les autres langages : Groovy, Python, R, etc.
  • Le langage Go de Google.
  • Les langages fonctionnels.

Les architectures éclatées SOA et Web Services :

Vers un modèle générique d’applications composites à composants métiers distribués : Les SOA :
  • Principes de l’architecture SOA.
  • Services orchestrés ou chorégraphiés : Le piège.
  • Les briques de conception d’une architecture SOA.
  • Les écueils de la granularité et de la généricité.
  • Les SOA et les mainframes.
  • Les bonnes pratiques des SOA.
  • MSA : L’urbanisme poussé aux limites et ses liens avec les containers.
La distribution des applications : Les services Web :
  • Organisation et mise en œuvre d’une architecture de services Web distribués.
  • Les standards SOAP, WSDL et UDDI, fondés sur XML, REST et Atom fondés sur HTTP.
  • L’authentification des services Web.

Les architectures « clientes », langages script et dynamiques :

Les nouveaux modèles d’architectures :
  • Éclatement du modèle 3-tiers en n-tiers.
  • Nouvelles architectures applicatives en 2017.
  • Allégement du poste client : Vers un client léger HTML.
Les clients riches :
  • Principe du client riche.
  • Du pur XML au client riche : Java FX ou Google Native.
  • Dans quels contextes le client riche a-t-il encore une chance ?
Les applications en mode Web :
  • L’arrivée de HTML 5 et la remise en cause des clients riches.
  • Mise en page côté client : JavaScript et programmation Ajax.
  • L’urbanisme des « Web Components ».

Les plates-formes de développement :

Le problème des forges modernes : AGL (Atelier de Génie Logiciel) :
  • Les constituants d’un AGL moderne.
  • Les nouvelles usines à logiciels : Jazz (IBM Rational), Team System (Microsoft).
  • Les concepts d’accompagnement au développement : Refactoring, gestion des sources et exécutables, profiling, documentation automatique, analyse de la qualité, génération du code, sécurisation du code.
  • La collaboration dans le développement : L’apport de l’Open Source, les forges.
Les communautés de développement :
  • L’essor d’Eclipse et de son « business model ».
  • Un monde de plug-ins pour Eclipse.
  • VS en Open Source, Visual Studio 2017.
  • Avantages et inconvénients, conditions de mise en œuvre.
  • Les IDE dédiés : JavaScript, Python, Ruby, JavaScript.
Le développement dans le Cloud :
  • Principe de développement dans le Cloud.
  • Les solutions concrètes : Azure de Microsoft, Google App Engine, Cloud Foundry VMWare, Heroku, etc.
  • Avantages et inconvénients.
  • Les limitations actuelles : Manque de diversité des langages et de bases de données.
Les bases de données revisitées :
  • L’émergence des bases NoSQL : Colonnes, clés-valeurs, documents, hiérarchiques.
  • Les grosses bases de données, Oracle et IBM, orientées performances.
  • Les mouvements autour de MySQL : Les offres « concurrentes » Drizzle et Maria DB.
  • Vers une écriture « élégante » de l’accès aux données, sans SQL.
  • Les bases de données distribuées et l’incontournable modèle Hadoop.
  • La gestion de fichiers HDFS et ses implications dans le Big Data.

Les spécificités du développement :

Open Source.

Le cadre général :
  • Les modes de fonctionnement.
  • La problématique des licences.
  • Les précautions à prendre.
Les aspects concrets d’un développement Open Source :
  • L’intégration (parfois difficile) dans un projet Open Source existant : Les règles à respecter.
  • La réutilisation contrôlée de composants soumis à licence.
  • Le fonctionnement au quotidien d’un projet Open Source.

Les problématiques applicatives nouvelles :

Les applications pour terminaux mobiles :
  • Les contraintes : Taille des scripts, particularismes de l’affichage, consommation de la batterie.
  • Les plates-formes mobiles : Android (Google), Apple iOS, Microsoft Windows 10.
  • Les 4 formes de développement mobile : Native, HTML5, hybride, cross-platform.
L’écriture du code sécurisé :
  • Anatomie d’une faille et exemples.
  • Les règles fondamentales de sécurisation du code.
La parallèlisation des applications :
  • Faire coïncider les avantages des architectures multi cœurs et multiprocesseurs avec les programmes.
  • Les principes délicats de conception d’une application parallélisée.
  • API spécialisées et outils d’aide à la parallèlisation.
Les nouveaux challenges :
  • Programmation des interfaces tactiles.
  • Le « Responsive Design » pour les terminaux mobiles.
  • Le « Material Design » et le « Flat Design ».
  • La programmation statistique avec le langage R.

L’évolution des métiers du développement :

Un monde en profonde mutation :
  • La migration vers les compétences « nouvelles » (frameworks, objet, etc.).
  • Le problème de la formation aux concepts objet, en préliminaire à celle des langages.
  • L’importance cruciale de la modélisation : Une manière difficile mais prometteuse d’aborder la conception des applications.
  • Comment les DSI voient-ils leurs besoins à court et moyen terme ?
  • Les pièges à éviter.
L’évolution prévisible des métiers :
  • Chef de projet applicatif.
  • Architecte de développement.
  • Les développeurs dans le monde agile.
 

La formation "Développement et Architectures d'Applications " vous intéresse ?

Capgemini Institut vous rappellera pour préciser vos besoins et vous proposer un devis.


Les prochaines sessions

À Paris

Du 12/11/2018 au 14/11/2018

Centre

Capgemini Institut
24, rue du Gouverneur Général Eboué
92136 Issy les moulineaux cedex


Les internautes qui ont consulté cette annonce ont aussi consulté:

En résumé

Objectif

Certification / expertise

Durée

21 heure(s)

Coût

2685 € HT

Modes d'enseignement

En école ou centre de formation

Posez une question à notre responsable pédagogique

Recevez des formations similaires

Kelformation vous suggère des formations qui vous correspondent.

Inscrivez-vous et recevez directement les annonces par mail.