Architecture, Patterns, et Intégration : systèmes embarqués et mobiles en Java et Android (1)

Code UE : NSY208

  • Cours
  • 6 crédits
  • Volume horaire de référence
    (+ ou - 10%) : 50 heures

Responsable(s)

Yann POLLET

Public, conditions d’accès et prérequis

Auditeurs se destinant aux métiers de l'intégration des systèmes et désireux de maîtriser en particulier les technologies de la mobilité. Des connaissances préalables en génie logiciel, en conception et en programmation par objets sont requises pour suivre ce cours, avec connaissance d'au moins un langage à objet (Java, C#, ..).

Objectifs pédagogiques

Savoir concevoir et développer des systèmes intégrant des éléments embarqués et communicants, en utilisant les produits industriels ou grand public (téléphones mobiles, tablettes, ...) et les technologies logicielles actuelles (Java, C#, .NET, Android,...)

Compétences visées

Maîtriser l'architecture d'un système autonome ou basé sur un intergiciel (middleware). Savoir choisir les patrons de conception (design patterns) adaptés. Etre capable de réaliser la conception, l'intégration, le déploiement, et la mise en oeuvre de tels systèmes.

Contenu

Programmation Java avancée : concurrente, distributive  et dynamique.
La conception orientée domaine (Domain Driven Design)
Design Patterns: notion de motif (description, utilisation). Intégration des motifs de conception dans les systèmes embarqués. Patterns MVC , Inversion de Contrôle, Interceptor, ...
Programmation en langage Python
Modélisation des systèmes: le langage SysML (System Modeling Language).
Persistance et mapping objet-relationnel (ORM): principes de base, programmation de la persistance. L'interface JPA (Java Persistance API), Hibernate, patterns pour la persistance, DAO, ...
Architecture REST: principes et mise en oeuvre des services REST
Programmer avec le cloud : principes, SaaS, PaaS, IaaS. Concepts et programmation avec Amazon AWS (EC2, S3, EFS, ...).
Bases de données NoSQL, Big Data: motivations, typologie des approches, paradigmes clé-valeur, bases orientées document, orientées colonnes, ... Panorama des logiciels existants.
La programmation en Javascript et le langage HTML5
Les architectures à micro-services. La conteneurisation avec Docker. L'approche DevOps
Etude de cas.
 

Modalité d'évaluation

Examen écrit

Bibliographie

  • Douglas C Schmidt, Michael Stal, Hans Rohnert, Frank Busc : Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects.
  • Frank Buschmann, Kevlin Henney , Douglas C. Schmidt : Pattern Oriented Software Architecture Volume 5: On Patterns and Pattern Languages
  • Yann Pollet : Architectures, systèmes, intégration (Ellipses, reférence science)
  • Yann Pollet : Architectures logicielles réparties. Du client-serveur au cloud (Ellipses, reférence science)

Cette UE apparaît dans les diplômes et certificats suivants

Contact

EPN05 - Informatique
2 rue Conté 33.1.13A
75003 Paris
Tel :01 40 27 26 81
Safia Sider

Voir le calendrier, le tarif, les conditions d'accessibilité et les modalités d'inscription dans le(s) centre(s) d'enseignement qui propose(nt) cette formation.

Enseignement non encore programmé