F2B205B : Programmation système et réseaux


Retour
Imprimer la fiche programme
Code analytique: EDF02B205
Responsable  : Daniel BOURGET   
Programmé en UVF2B205

Présentation :

Ce module s'intéressa à la programmation système et réseau sous Linux, Windows et Androïd
Une première partie sera consacrée à la programmation système, c'est-à-dire gestion des processus, des threads aussi bien dans Linux que sous Windows. Un accès sera mis sur la sécurisation du code.
Les applications informatiques sont aujourd'hui de plus en plus communicantes. Ce sera le thème de la seconde partie. Ces applications s'appuient sur des couches logicielles intermédiaires (intergiciel ou middleware) donnant une vue abstraite du réseau. Nous nous proposons dans ce module de vous faire découvrir quelques aspects de ces intergiciels tels que les sockets, les Remote Procedure Call ou encore cette problématique dans .Net.
Une troisième partie sera consacrée à l'étude d'Androïd du point de vue OS et également du point de vue applications. Les différents outils internes à Androïd seront traités afin d'expliquer comment fonctionnent les applications tournant sur Androïd. La gestion des applications, les inter actions en termes de réseaux (GPS) seront globalement étudiées dans cette partie.

Partie 1 : Gestion des processus sous Unix (21h)
Compléments sur les sockets sous Unix et Windows
- Principes généraux
- Le modèle client-serveur
- Programmation sous TCP et UDP

Les Remote Procedure Calls sous Unix
- Principes et utilisation

Partie 2 : Les applications communicantes dans .NET
- Introduction à la plate-forme .NET
- Le langage C#
- Les classes spécifiques
- Gestion d'une application à l'aide des Windows Forms et des WPF
- Gestionnaire de Processus
- Gestionnaire de Threads
- Communication : les .Net remoting et quelques wrappers

Les aspects sécurité dans .NET
- Le concept de certificat
- La gestion des certificats
- Le problème de l'authentification
- Comment sécuriser les composants .NET
- Sécurisation de bibliothèques .NET
- Comment Obfuscater et dé-assembler du code

Partie 3 : Androïd
- La plateforme Android et les outils de développement associés
- Organisation logiciels de l'OS
- Modèle de composants Android
- Développer des interfaces utilisateurs
- Gestion la persistance des données
- Gestion du réseau
- Gestion GPS
- La sécurité des application sur Androïd

Organisation de la formation

Partie Unix : Christophe Lohr + Gérôme Kerdreux

C1-C2-C3 (Processus + Make)
TP1-TP2
C5 (Compléments Sockets + RPC + ...)
TP4-TP5

Partie .NET : Daniel Bourget + X (15h)

C1-C2 : La plateforme .NET et WPF avec WCF
TP1 : Gestion des processus et Threads sous .NET (cours +TP)
TP2 : Gestionnaire de processus et des threads (cours +TP)
TP3 : Chat client/serveur base d'un réseau en peer to peer (cours +tp
TP4 : Sécurité des composants .NET

Partie Androïd : intervenants extérieurs (15h)

TDA1: introduction Androïd et l'IDE Androïd Studio
TDA2: Développer des interfaces utilisateurs
TDA3: Gestion des données
TDA4: le réseau et GPS
TDA5: Les questions de sécurité

remarque : les TDA sont à programmer dans les salles de TP

Volume horaire : 51h



Année 2019/2020
Dernière mise à jour le 11-JAN-19
Validation par le responsable de programme le


IMT Atlantique
Campus de Brest
Technopôle Brest-Iroise
CS 83818
29238 Brest Cedex 3
France

Tél  +33 (0)2 29 00 11 11
Fax +33 (0)2 29 00 10 00