Le paradigme fonctionnel est aujourd'hui présent dans de nombreux langages modernes dits multi-paradigmes, tels Java, JavaScript, C#/F#, C++, Scala, et Swift. En particulier, la programmation fonctionnelle est devenue incontournable dans le domaine des applications web développées en Javascript.
Ce cours a pour objectif d'étudier le paradigme fonctionnel de la programmation par le biais d'au moins un langage fondé sur un noyau purement fonctionnel (par exemple OCaml). Cette étude sera ensuite élargie au contexte de la programmation web (par exemple le développement d'application React.js), et illustrée par un autre langage dans ce domaine (par exemple Typescript/JavaScript).
Pré-requis: Pratique de la programmation, par exemple, avoir le niveau des UES NFA031 et NFA032, ou équivalents pour d'autres langages de programmation. Il n'est pas nécessaire de connaître JavaScript pour suivre cette UE, mais pour approfondir les aspects liés au développement d'applications web, il est souhaitable de suivre en complément l'UE de programmation web NFA016.
Public concerné : Toute personne soucieuse d'élargir son champ de compétence en programmation par l'apprentissage du paradigme fonctionnel et de son application à la programmation pour le web.
Connaissance et pratique d'un langage fonctionnel. Mise en oeuvre du paradigme fonctionnel dans le cadre de la programmation web.
Un examen et un projet de programmation (dans l'un des langages enseignés), tous les deux obligatoires.
Le cours s'organisera autour de cours, d'ED sur machine et de la réalisation d'un projet dans un des langages fonctionnels enseignés.
Cette UE apparaît dans les diplômes et certificats suivants :