Vous êtes ici

  1. Accueil
  2. Spécialité informatique 2

Spécialité informatique 2

Spécialité informatique 2

En pratique :

Volume horaire de cours : 6
Volume horaire global de TD : 12
Volume horaire global de TP : 30
Langue principale : français
Nombre de crédits européens : 6

Description du contenu de l'enseignement

Le paradigme fonctionnel de programmation est en plein essor technologique. De nombreux langages haut-niveau modernes (Closure, Java, F#, Scala, etc) l’intègrent et le promeuvent, avec un réel succès (programmes élégants et succincts, modularité, réutilisation de code, et sûreté de fonctionnement). Ce cours initie les étudiants à ce paradigme important, en approchant les concepts de manière pratique, et en en illustrant les avantages sur des exemples concrets.

PROGRAMME
Le contenu du module est structuré en 5 grands chapitres.
Chaque chapitre comprend un cours, et des séances de mini-projets associés (TP) illustrant les notions importantes. Des séances de renforcement/perfectionnement/tutoriels auront lieu sur papier (TD) et sur machine (TP semi-encadrés).

  1. Ingrédients de base de la programmation fonctionnelle
  2. Types énumérés et algébriques : modéliser des données simples
  3. Récursivité : données et calculs
  4. Ordre supérieur : abstraction, concision et réutilisation de code
  5. Types abstraits : modularité et données complexes

Compétences à acquérir

  • A l’issue de ce cours, les étudiants auront acquis une première expérience en programmation et algorithmique fonctionnelles.
  • Ils sauront construire un modèle de données adapté à un problème simple posé.
  • Ils connaîtront des techniques de programmation permettant d’améliorer la concision, la modularité et la robustesse de leurs développements (immutabilité, ordre supérieur, types abstraits).
  • Ils auront renforcé leur expérience avec un environnement de développement intégré.

Modalités pédagogiques

  • en présence

Bibliographie, lectures recommandées

  • Page web du module : calendrier et ressources pédagogiques
  • Livres de référence sur le langage support disponible à la B.U.

 


Pré-requis

Pré-requis obligatoires

  • avoir suivi une UE de programmation impérative
  • avoir déjà utilisé un environnement de développement intégré, comme Eclipse