Sewatech - formations

Architectures des applications Web

La mise en place d'une architecture Web demande de prendre en compte tous les critères permettant de maîtriser les coûts de développement, de maintenance et d'exploitation. Pour y parvenir, des choix fondamentaux interviennent très tôt dans le projet, nécessitant d'avoir une vue globale sur les possibilités offertes par les technologies récentes.

Cette formation vous permettra de faire un tour d'horizon des principes essentiels à l'élaboration d'une architecture Web et de connaître les principales possibilités techniques à évaluer, en développement spécifique ou en intégration de solutions métier.

Programme du cours

Introduction

  • Le Web : du monde à l’entreprise

  • Le SI : du mainframe au Web, via le client / serveur

  • Les composants du Web : protocoles, serveur, navigateur

  • Web, intranet, extranet et internet

Les technologies du Web

  • Une définition du Web

  • Le protocole HTTP

  • Les serveurs HTTP

  • Les navigateurs Web

  • Le Web 2.0 : entre marketing et technologie

  • Le Web pour les applications métier

Les technologies serveur

  • Serveur Web et serveur d’applications

  • Les langages leaders : Java, .NET, PHP

  • Les langages outsiders : Python, Ruby,…​

  • Les langages émergents : F#, Scala, JS

Plateforme PHP

  • L’évolution du langage

  • Les architectures LAMP / WAMP

  • Les frameworks Symphony, CakePHP, Zend Framework

Microsoft .Net

  • Le mode de fonctionnement et l’implémentation

  • Le framework .NET et le Common Language Runtime

  • Une plateforme multi-architectures et multi-langages

  • L’environnement de développement Visual Studio

  • ASP.Net et ASP.Net MVC

Plateforme Java

  • Java SE : JRE et JDK

  • Java EE : JSF, EJB, CDI, JPA

  • Les outils de développement : Netbeans, IntelliJ IDEA, Eclipse et ses dérivés

  • Les serveurs d’applications : IBM Websphere, Oracle Weblogic, RedHat JBoss/WildFly, Apache Tomcat,…​

  • Les frameworks Java : standards contre innovation

Autres plateformes

  • Python, Zope et Django

  • Ruby, Rails et Sinatra

  • JavaScript et NodeJS

Les technologies côté client

Coté navigateur

  • Le rôle du navigateur Web

  • Les langages HTML, XHTML et CSS

  • Les extensions

Interfaces riches

  • La première génération : ActiveX, applets Java, Flash, XUL,…​

  • La génération RIA : Flex, Silverlight, JavaFX

  • Javascript et les librairies graphiques associées (jQuery, script.aculo.us, ExtJS,…​)

  • Les techniques du Web 2.0 : AJAX

  • Les frameworks AJAX

  • Navigation traditionnelle contre Single Page Application

  • Les prochaines évolutions de JavaScript : ECMAscript 6, 7,…​

  • Les langages alternatifs : CoffeeScript, Google Dart, Microsoft TypeScript, Google AtScript,…​

Coté mobile

  • La montée en puissance de la mobilité

  • Les applications natives

  • Les applications Web : Responsive Design et accès aux APIs natives

  • Les applications hybrides

L’hébergement d’applications Web

Architecture de déploiement

  • Les serveurs d’applications : PHP, .NET, Java

  • L’intégration d’applications

  • La montée en charge

  • La tolérance aux pannes

Les offres de déploiement

  • Les hébergements mutualisés et dédiés

  • La virtualisation et les conteneurs

  • Les applications hébergées : solutions ASP et SaaS

  • L’évolution vers le Cloud : IaaS, PaaS, SaaS

  • Les cloud privé et le cloud hybride

L’intégration d’applications

Services Web

  • XML, le langage adapté à l’intégration

  • Web services : définition et protocoles (SOAP, WSDL, UDDI)

  • La pile des services WS-*

  • Une alternative avec les architectures REST

  • Un exemple de service REST

  • JSON pour remplacer XML

  • Les autres formats

Architecture SOA

  • L’urbanisation du système d’informations

  • Les bus applicatifs : ESB, EAI

  • L’intégration front-end : portails et mashup

  • La sémantique pour faciliter l’intégration : exemple de microformats

  • L’évolution vers les micro-services

Impact sur l’organisation du SI

Sécurité

  • Nouveaux risques et moyens disponibles

  • Techniques de chiffrement

  • Mise en place d’une PKI et de certificats

  • Protocoles SSL, HTTPS

Stockage des données

  • Les bases de données relationnelles

  • Le stockage des données décisionnelles

  • Le nouvelles formes de stockage NoSQL

Démarche de mise en œuvre

  • La méthodologie d’un projet Web

  • Les démarches itératives et incrémentales : UP, RUP

  • Les démarches agiles : XP, Scrum, Kanban,…​

Synthèse


Cette formation est archivée, ce qui signifie qu'elle n'est plus mise à jour.
Toutefois, si elle répond à votre besoin, n'hésitez pas à nous contacter.