Programmation fonctionnelle en Java

Code UE : NFP101

  • Cours
  • 6 crédits
  • Volume horaire de référence
    (+ ou - 10%) : 50 heures

Responsable(s)

Tristan CROLARD

Public, conditions d’accès et prérequis

Avoir une expérience de la programmation orientée objets ou avoir le niveau des unités d'enseignement VARI (NFP135 et NFP136).

L'avis des auditeurs

Les dernières réponses à l'enquête d'appréciation pour cet enseignement :

Objectifs pédagogiques

L’objectif de ce cours est d’apprendre le paradigme de la programmation fonctionnelle et objet et de comprendre les avantages liés à cette approche. 
Les mécanismes usuels des langages orientés objet (encapsulation, héritage, redéfinition, liaison tardive, ...) seront aussi revisités dans le cadre particulier de la programmation fonctionnelle. L'accent sera mis en particulier sur les avantages du typage statique et de la combinaison des styles de programmation objet et fonctionnel pour garantir des propriétés essentielles de sûreté.
Le langage utilisé pour illustrer ces concepts sera Java (ou un langage moderne équivalent comme Scala ou Kotlin). Une application majeure des techniques étudiées sera l'implantation d'algorithmes massivement parallèles dans le style classique Map-Reduce.

Compétences visées

Maîtrise du paradigme fonctionnel/objet en Java. Compréhension du rôle et du fonctionnement du typage statique.

Contenu

Les séances prendront la forme de "leçons" : les concepts seront présentés en cours puis illustrés directement à travers des exemples et des exercices de programmation.
  • Valeurs et Objets
  • Egalité et fonction de hachage
  • Collections immutables
  • Valeurs optionnelles
  • Interfaces fonctionnelles
  • Expressions lambda
  • Types algébriques
  • Filtrage (pattern matching) et patron "visiteur"
  • Concurrence et calculs asynchrones
  • Flots (streams) et patron "map-reduce"

Modalité d'évaluation

  • Contrôle continu

Cette UE apparaît dans les diplômes et certificats suivants

Chargement du résultat...
Patientez
Intitulé de la formation
Type
Modalité(s)
Lieu(x)
Lieu(x) À la carte
Lieu(x) Alternance
Lieu(x) Occitanie
Lieu(x) À la carte
Lieu(x) Alternance
Lieu(x) Midi-Pyrénées
Lieu(x) À la carte
Intitulé de la formation Master Réseaux et Objets Connectés
Lieu(x) À la carte
Lieu(x) À la carte
Lieu(x) Paris
Lieu(x) Package
Lieu(x) Paris
Intitulé de la formation Type Modalité(s) Lieu(x)

Contact

EPN05 - Informatique
2 rue Conté 33.1.13A
75003 Paris
Tel :01 40 27 26 81
Safia Sider

Voir le calendrier, le tarif, les conditions d'accessibilité et les modalités d'inscription dans le(s) centre(s) d'enseignement qui propose(nt) cette formation.

UE

    • Paris
      • Centre Cnam Paris
        • 2022-2023 1er semestre : Présentiel soir ou samedi
    • Normandie
      • Normandie
        • Année 2022 / 2023 : Présentiel jour