<- Archives UCL - Programme d'études ->



Programming paradigms : theory, practice and applications [ LSINF2335 ]


5.0 crédits ECTS  30.0 h + 15.0 h   2q 

Enseignant(s) Mens Kim ;
Langue
d'enseignement:
Anglais
Lieu de l'activité Louvain-la-Neuve
Ressources
en ligne

> https://icampus.uclouvain.be/claroline/course/index.php?cid=SINF2335

et/ou > https://moodleucl.uclouvain.be/course/view.php?id=4653

Thèmes abordés

En informatique, les langages sont omniprésents. Ceux-ci peuvent être très différents selon l'étape du cycle de vie du logiciel, le paradigme utilisé, ou le domaine d'application : langages de modélisation, langages de spécification, langages de programmation (impératif, orienté-objet, fonctionnel, logique, contraintes), langages d'interrogation, langages de scripts, langages de règles, langages graphiques, etc. L'objectif de ce cours consiste à étudier de manière approfondie un ou plusieurs paradigmes ou langages récents ou d'importance historique de l'informatique. Cette étude portera sur la conception du langage, les techniques d'implémentation, et les méthodes d'utilisation. Le langages ou paradigme étudiés pourront varier d'une année à l'autre.

Pour chaque langage ou paradigme de programmation étudié dans le cours, les thèmes suivants pourront êtres abordés :

  • Etude approfondie des caractéristiques du langage ou paradigme;
  • Principes de conception et techniques d'implémentation de ce langage ou paradigme;
  • Bases fondamentales du langage ou paradigme;
  • Utilisation du langage ou paradigme pour la résolution de problèmes.
Acquis
d'apprentissage

Eu égard au référentiel AA du programme « Master ingénieur civil en informatique », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :

  • INFO1.1-3
  • INFO2.2-4
  • INFO5.2, INFO5.4-5
  • INFO6.4

Eu égard au référentiel AA du programme « Master [120] en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :

  • SINF1.M2, SINF1.M3
  • SINF2.2-4
  • SINF5.2, SINF5.4-5
  • SINF6.4

Les étudiants ayant suivi avec fruit ce cours seront capables de

  • décrire, en les différenciant, les principaux paradigmes de programmation;
  • identifier les bases fondamentales d'un langage ou d'un paradigme;
  • expliciter les différences entre différents langages et faire le lien avec les paradigmes de programmation auxquels ils sont associés;
  • choisir de manière argumentée un langage ou un paradigme adapté à la résolution d'un problème particulier.
Modes d'évaluation
des acquis des étudiants

Pendant l'année, en parallèle avec le cours, les étudiants (individuellement ou en binôme) sont demandés déétudier un langage comparable aux langages vus dans le cours, ou d'approfondir l'étude d'un langage vu au cours. L'examen consistera en un rapport et une présentation détaillé de ce langage et les liens avec les autres langages ou paradigme vu au cours.

Méthodes d'enseignement

Le cours consistera des cours magistraux où les caractéristiques et propriétés d'un ou plusieurs langages seront expliqués en détail. En parallèle, les étudiants travailleront sur leur étude d'un autre langage comparable. Occasionnellement, un orateur externe peut être invité à présenter l'un ou l'autre aspect d'un langage étudié.

Bibliographie

Références
Comme les langages étudies peuvent varier d'un année à un autre, les références conseillés pour ce cours pourront varier également. Néanmoins, une référence très utile qui couvre un large éventail de langages de programmation reste :

  • Principles of Programming Languages - Design, Evaluation and Implementation. Bruce J. MacLennan.

Supports
Les transparents des cours magistraux ainsi que d'autres  informations pratiques relatives au cours seront accessibles en ligne (cfr ressources en ligne): La même plate-forme en ligne sera également le moyen de communication préféré entre les étudiants et l'équipe didactique.

Autres infos

Préalable :

  • LINGI1131
  • Au plus l'étudiant connaît de langages différents, au plus il appréciera ce cours.
Cycle et année
d'étude
> Master [120] en sciences informatiques
> Master [120] : ingénieur civil en informatique
Faculté ou entité
en charge
> INFO


<<< Page précédente