École Privée d’Ingénierie du Niger — L’école du nouveau monde

✉ elearning@epiniger.edu.ne    🌐 epiniger.edu.ne

Écrit par

dans

Licence Professionnelle en Télécommunications et Réseaux (TR) › Licence 1 › TR · S2 · UE1 — Programmation et Bases de données

Algorithmique et programmation 2

Code TR211 3 crédits CM 10h · TD 10h · TP 30h · TPE 10h Évaluation : CC + ET

Se connecter pour s'inscrire Créer un compte

4 leçon(s) · 1 quiz · 0 inscrit(s)

Présentation

Ce cours prolonge Algorithmique et programmation 1 et oriente la programmation vers les besoins concrets du technicien en télécommunications et réseaux. On y étudie les structures de données avancées (piles, files, arbres), qui sont au cœur des équipements réseau (files d’attente des interfaces, tables de routage, arbres DNS), puis la programmation orientée objet qui permet de modéliser proprement un parc d’équipements. Le cours se termine par l’écriture de scripts d’automatisation en Python : inventaire, calcul d’adressage, vérification de disponibilité, analyse de journaux et sauvegarde de configurations, avec une approche strictement défensive et documentée.

Le langage support est Python 3, installé sur les postes du laboratoire (Linux ou Windows). Les exemples s’appuient sur des cas nigériens : réseau d’une mairie, liaisons entre agences de Niamey et Dosso, parc d’un opérateur.

Objectifs d’apprentissage

  • Implémenter et utiliser une pile, une file et une file circulaire, et analyser leur complexité.
  • Construire un arbre binaire de recherche, le parcourir et estimer le coût d’une recherche.
  • Concevoir des classes Python avec encapsulation, héritage et polymorphisme pour modéliser des équipements réseau.
  • Écrire des scripts d’automatisation fiables (fichiers CSV, module ipaddress, ping, expressions régulières, journaux).
  • Adopter de bonnes pratiques : tests, gestion des erreurs, commentaires, sécurité des identifiants.

Prérequis

Algorithmique et programmation 1 : variables, types, conditions, boucles, fonctions, listes et dictionnaires en Python. Notions de base sur l’adressage IP.

Plan du cours

  1. Leçon 1 — Piles et files : structures linéaires et applications réseau
  2. Leçon 2 — Arbres binaires, arbres de recherche et files de priorité
  3. Leçon 3 — Programmation orientée objet en Python
  4. Leçon 4 — Scripts d’automatisation appliqués aux réseaux

Modalités d’évaluation

Volume horaire : CM 10 h, TD 10 h, TP 30 h, travail personnel (TPE) 10 h, 3 crédits. Évaluation : contrôle continu (comptes rendus de TP, scripts rendus, quiz en ligne) et examen terminal écrit comportant de l’algorithmique et de la lecture/écriture de code.

Bibliographie

  • T. Cormen, C. Leiserson, R. Rivest, C. Stein, Algorithmique (Introduction à l’algorithmique), Dunod.
  • G. Swinnen, Apprendre à programmer avec Python 3, Eyrolles.
  • M. Lutz, Learning Python, O’Reilly.
  • K. Edelman, S. Lowe, M. Oswalt, Network Programmability and Automation, O’Reilly.
  • Documentation officielle Python : docs.python.org (modules collections, heapq, ipaddress, csv, re, subprocess).

Évaluation globale de la matière

Connectez-vous pour suivre votre progression.

Programme

  1. 🔒 Leçon 1 — Piles et files : structures linéaires et applications réseau · 90 min
  2. 🔒 Leçon 2 — Arbres binaires, arbres de recherche et files de priorité · 90 min
  3. 🔒 Leçon 3 — Programmation orientée objet en Python · 90 min
  4. 🔒 Leçon 4 — Scripts d'automatisation appliqués aux réseaux · 90 min
  5. 🔒 Quiz — Algorithmique et programmation 2 · quiz

Évaluation globale de la matière

Connectez-vous pour suivre votre progression.