Les formations du CNAM Nord Pas-de-Calais

SITI

Pratique de l'architecture logicielle

FC2013 - 45 heures - 0 crédits

Formation courte |

DIF |

Organisation et financement :

Formation courte spécialisée au centre Cnam de Lille
45 heures – 2ème semestre (Février à Juin 2014) - le samedi de 9 h à 12 h

Public et conditions d'accès

Public visé : Toute personne souhaitant savoir comment construire et gérer une application, ou souhaitant renouveler ses compétences dans le domaine.

Compétences requises : La difficulté du cours étant progressive, il convient à des personnes ayant un niveau débutant en programmation.

Objectifs pédagogiques

Cette formation propose d’acquérir par la pratique, les connaissances et les compétences nécessaires à la construction d’un logiciel.

Contenu de la formation

I.Connaitre les technologies

Technologies des composants

Un composant logiciel est ce qu’il y a de plus basique dans un logiciel. Nous pratiquerons ici ce qui permet de les créer et les gérer.

Les langages de programmation

Le cours abordera les langages procéduraux (C, …), les langages déclaratifs (SQL, XSLT,…), les langages orientés objet (Java, C#, …) et les langages dynamiques (Groovy, Python, Ruby, …).

Les « frameworks »

Le cours classera les principaux « frameworks » (Java EE, .Net, Tomcat, Spring, Rails,…) et en utilisera certains pour illustrer les points abordés ici.

Technologies des applications Web

Les technologies du Web sont devenues les principales technologies pour construire des applications. Leur connaissance est donc indispensable.

Les protocoles du web

Le cours introduira les protocoles SMTP, POP3 et détaillera les protocoles TCP/IP et HTTP, indispensables pour comprendre le fonctionnement du Web.

Les composants du web

Nous aborderons ici l’interface homme/machine (HTML, JavaScript, AJAX), le traitement des requêtes http par les Servlet ou serveur de pages (JSP, PHP).Mais aussi les problématiques de session, de persistance (SGBD) et de mapping objet/base relationnelle (Hibernate).

Technologies des échanges inter-applicatifs

Au fil de l’eau ou en temps réel les échanges inter-applicatifs permettent à une application de s’étendre.

Les protocoles d’échange

Le cours abordera deux types de protocoles : les protocoles  asynchrones (FTP, JMS) et les protocoles synchrones (RPC, Services Web avec SOAP ou REST). On introduira aussi la notion de middleware (EAI, ESB).

Les formats de messages

Le cours introduira différents formats (CSV, XML, JSON, …). Il détaillera le format XML et la manière de le décrire (DTD, XSD), l’analyser (DOM, SAX) et le transformer (XSLT, XPATH).

 

II.Structurer ses idées

Utiliser les  « Patterns »

Ce vocabulaire est fondamental pour comprendre l’informatique actuelle. Le cours abordera donc les principaux « patterns » qui permettront d’imaginer des solutions robustes et évolutives.

Les « patterns » architecturaux

Le cours détaillera les systèmes en Couches, le « Pipe and Filter » (architecture d’intégration), le « Broker » (architecture distribuée) et le MVC (architecture interactive).

Les « patterns » de conception

Le cours abordera plusieurs de ces « patterns » (Template, Strategy, …),  en particulier le Proxy etl’Observateur qui seront utilisés à plusieurs reprises durant le cours.

Les « patterns » d’échanges inter-applicatifs

Le cours détaillera le traducteur, le routeur, lepoint-à-point, le« publish/subscribe » etle« request/reply ».

Utiliser un langage pour modéliser

Le schéma reste le meilleur outil pour comprendre et/ou faire comprendre une architecture. Le cours présentera ici deux moyens pour y parvenir : soit par l’utilisation d’un langage standard, soit par la définition de son propre langage.

Utiliser un langage standard

Le cours détaillera les diagrammes UML les plus utiles : le diagramme de classes, le diagramme de séquence.

Utiliser son propre langage de modélisation

Le cours expliquera comment créer son propre langage de modélisation.

 

III.Mettre en œuvre

Piloter le développement par les tests (TDD)

Le cours détaillera la pratique du TDD basée sur les outils de tests unitaires comme JUnit et montera son rôle fondamental dans l’agilité des logiciels. Le cours introduira aussi une pratique directement  associée : le remaniement du code ou « refactoring ». 

Intégrer en continu

Le cours détaillera la pratique de l’intégration continue, qui permet de détecter très tôt les problèmes de conception et/ou d’architecture pour les corriger plus facilement.
On détaillera trois outils : le gestionnaire de code source (SVN, Git, …), le langage d’automatisation des  « builds » (ANT, Maven, …), le gestionnaire d’intégration continue (CruiseControl, TeamCity, …).

Organisation, stages, projets, mémoire et conditions de délivrance du diplôme (ou certificat)

Enseignant : Olivier LEMAITRE

Tarif : Individuel : 530 € + 150 € frais de dossier (si nouvel auditeur)
Entreprise / DIF : 1 200 € net de taxe

Contact : Centre de Lille
8 boulevard Louis XIV - 59044 Lille Cedex
Tél : 03 20 29 86 68 – Fax 03 20 29 86 69
Email : accueil@cnam-npdc.org

Trouvez votre formation

Trouvez une Unité d'Enseignement

Please install the Flash Plugin


Accés à PLEIAD

     
Formations en alternance Formation continue Cours du soir Formation à distance, e-learning Formations courtes DIF CIF Congé individuel de formation CIF CDI, CIF CDD, CIF HTT Contrat de professionnalisation Centre de bilan de compétences Compte Personnel de Formation CPF