Pas encore de diplôme affecté
Réseaux IP - concepts, programmation et applications
Code apogéeDIFO6RESStructurexxDernière mise à jour le04 Juillet 2017
Responsable pédagogiqueBOUNCEUR Ahcène (Maître de conférences, 27ème section)
Intervenants
Parcours
    TypeObligatoire
    Semestre6Volume horaire60Crédits ECTS5
    Nombre d'heures Cours magistraux (CM)20 Travaux dirigés (TD)16 Travaux pratiques (TP)24 
    Pré-requis

    Architecture et système (S4)
    Programmation C avancée (S5)
    Java & Outillage Projet (S5)

    Co-requis 
    Objectif TerminalCe module a pour objectif de présenter aux étudiants les concepts de base des réseaux informatique de type IP et le développement d'applications orientées réseaux. Dans un premier temps, les étudiants se familiariseront avec la bibliothèque socket en langage C, avant d'aborder la programmations de haut niveau des applications en Java.
    Objectif Pédagogique
    • A l'issue de l'enseignement, l'étudiant :
    • connaît le modèle client-serveur utilisé dans le cadre des SE distribués
    • connaît les protocoles TCP et UDP et est capable de programmer des applications de type client/serveur
    • est sensibilisé à l’architecture du réseau internet
    • manipuler les réseaux en utilisant le langage Java
    • pourvoir développer des applications (réseaux) avec des interfaces graphiques prêtes à l'utilisation par d'autres utilisateurs
    Contenu détaillé de l'enseignement

    Partie 1 : Réseaux (10h CM, 6h TD, 14h TP)

    • principes, couches et protocoles réseaux
    • architecture des réseaux informatiques
    • protocoles TCP et UDP
    • programmation en C des primitives systèmes et réseaux

    Partie 2 : Mise en pratique sur des applications orientées réseaux en Java (10h CM, 10h TD, 10h TP)

    Dans cette deuxième partie, l’étudiant doit pouvoir développer en Java des applications orientées réseaux complètes (de la conception à l’interface utilisateur final). comme par exemple, un serveur web ou un client ftp. Ainsi, l'accent est mis sur les points suivants :

    • Les flôts de données, pré-requis à l’utilisation des sockets,
    • La programmation des sockets en Java (comparaison/différence avec le C),
    • Les threads et la synchronisation, ce qui permet de gérer les accès aux fichiers/ressources (plusieurs utilisateurs accédant au même fichier/ressource dans la cas d'un serveur par exemple ou un utilisateur manipulant plusieurs fichiers/ressources au même temps),
    • La création d’une interface utilisateur : nécessite des notions sur la structuration des applications en packages et les IHM avec AWT/Swing,
    • Les Bases de données (JDBC), un complément permettant de réaliser des applications nécessitant l’utilisation d’une base de données en réseau.

    Méthodes d'enseignement

    CM, TD et TP sur machine.

    Les TP permettent de se familiariser avec la syntaxe, l'utilisation de l'API, l'utilisation d'environnements de développement intégrés comme Netbeans ou Eclipse. Un projet final permet de réaliser une application en Java.

    Evaluation session 11 écrit (3h) coeff: 2/3, TPs notés, coeff: 1/3
    Evaluation session 2écrit (2h)
    Références Bibliographiques
    1. "Unix, programmation et communication", Jean-Marie Rifflet, Dunod
    2. "TCP/IP : architecture, protocoles, applications" - D. Comer - Dunod
    3. "Cours Réseaux et télécoms" - G. Pujolle - Eyrolles
    4. "Cours Réseaux" - V. Ribaud et P. Le Parc - Polycopié de cours département/IUP Informatique Brest.
    5. "Développement Web avec J2EE" par Eric Sarrion
    6. "Au coeur de Java 2", tome 1 et 2, par Cay S. Horstmann et Gary Cornell