UTC503

Paradigmes de programmation


3 crédits Pierre COURTIEU EPN05 - Informatique Unité d'enseignement de type mixte

Publié Du 01-09-2018 au 31-08-9999

Prérequis

Connaître un langage de programmation avancé, comme java, et maîtriser les notions d’algorithme, de procédure et fonction, d’objet, de méthode, et d’héritage.

Objectifs pédagogiques

Connaître et approfondir certains paradigmes de programmation : logique, fonctionnel, réactif, objet ; savoir les mettre en œuvre ; comprendre leurs différences.

Contenu

  • Contenu sans obligation d'exhaustivité: Paradigme objet, généricité, héritage et polymorphisme, introspection ; paradigme fonctionnel, lambda expressions, clôtures, objets persistants, promesses ; paradigme logique. Divers langages de programmation pourront être abordés, par exemple Java ou C# pour le paradigme objet, Javascript, Scala, Haskell ou Kotlin pour la programmation fonctionnelle, Prolog pour la programmation logique. Au mois 50% du programme (et de l'examen) concernent un autre paradigme que la programmation objet (dominant aujourd'hui).
  • Structure: L’enseignement comprendra un noyau de cours magistraux, mais surtout un volume important de TP sur machine. En particulier, on partira d’un ou plusieurs objectifs de programmation et leur déclinaison dans divers paradigmes.

Modalités de validation

  • Examen final

Description des modalités de validation

Examen final obligatoirement sur papier, complété éventuellement d’un contrôle continu.

Contenu de l'examen final et du contrôle continu:

  • Pas plus de 50% sur le paradigme impératif/objet dans les cours et dans l'examen. Le but est de voir autre chose que le paradigme dominant. Au choix un ou deux autres paradigmes, il ne s'agit pas de devenir des spécialistes mais de savoir écrire des petits programmes idiomatiques.
  • Pas moins de 70% de questions de programmation, c'est-à-dire pour lesquelles l'élève doit écrire du code. Ceci est valable également pour les TD/TP. les QCM sont donc EXCLUS notamment à l'examen.

Thésaurus du Cnam :

  • Logiciels et programmation
  • Langage de programmation
  • Méthode de programmation

Thésaurus Formacode :

  • 30854 - langage informatique
  • 31054 - informatique

Secrétariat

Libellé
EPN05 - Informatique
Nom du contact
Agnès Lapierre
Adresses email
agnes.lapierre@lecnam.net
Numéros de téléphone
01 40 27 22 40
Adresse postale
2 rue Conté
Paris 75003