Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Initiation à la programmation fonctionnelle avec Python. λ
Highest Rated
Rating: 4.6 out of 5(16 ratings)
82 students

Initiation à la programmation fonctionnelle avec Python. λ

Paradigme fonctionnelle. λ
Created byFares Pascal
Last updated 12/2021
French

What you'll learn

  • Vous initiez à la programmation Python grace au paradigme fonctionnel
  • Vous familiariser à la notion de fonctions pure : pas d'instructions uniquement des expressions
  • Les expressions et les opérateurs arithmétiques
  • Les expressions et les opérateurs logiques
  • Récursivité expression conditionnelle pour réaliser les répétitions
  • maitriser filter map reduce
  • A venir: l'évaluation paresseuse (Lazy avaluation) et protocole itérateur
  • A venir: Les compréhensions de liste
  • A venir: manipulation des collections et tranches (slices)
  • A venir: Modèle de récursivité sur les collections et structures de données

Coding Exercises

This course includes our updated coding exercises so you can practice your skills as you learn.

See a demo
Image of coding exercise example

Course content

7 sections27 lectures4h 27m total length
  • Présentation et annonces6:11

Requirements

  • Notion de fonction mathématique
  • Très légère notions de programmation

Description

Apprenez à programmer en Python en utilisant le paradigme fonctionnelle. λ

L'objectif, si vous êtes débutant:

  • D'aprendre rapidement un nouveaux language, en minimisant les notions à connaitre.

  • Vous former à décrire un algorithme au moyen d'un raisonnement récursif et logique.

  • Les répétitions (boucles) sont les conséquences d'un résonnement récursif.

  • Initiation au modèle map-reduce pour les traitements sur les collections de données

L'objectif, si vous programmer déjà

  • Vous former à décrire un algorithme au moyen d'un raisonnement récursif, qui vous permettra d'écrire de meilleures itérations. En particulier pour trouver l'invariant de boucle et la condition de sortie de boucle

  • Différencier instructions et expressions, données mutable et immutable

  • Souligner les avantages de la programmation fonctionnelle pour les applications concurrente et répartis


Après une présentation rapide de l'environnement que nous utiliserons et une première approche intuitive de la programmation fonctionnelle. Nous approfondirons les notions de fonctions avec une introduction au lambda calcul et ses applications possible dans un language tel que Python


Quand on aborde la programmation fonctionnelle, vous entendrez souvent parler d'un nombre étourdissant de caractéristiques « fonctionnelles » : les données immuables, les fonctions de première classe et l'optimisation de la récursion terminale. Ces fonctionnalités ne sont que des caractéristiques de langage qui facilitent la programmation fonctionnelle. On parle aussi de mappage, de réduction, de pipeline, de récursion, de curryfication et d'utilisation des fonctions d'ordre supérieur. Ce sont des techniques de programmation employées pour écrire du code fonctionnel. Il est enfin question de parallélisation, d'évaluation paresseuse et de déterminisme. Ce ne sont que des propriétés avantageuses des programmes fonctionnels.


Un programme écrit en style fonctionnel se caractérise essentiellement par une chose essentielle: l'absence d'effets de bord, ou plus précisément l'abscence de changement d'états. Le code ne dépend pas de données se trouvant à l'extérieur de la fonction courante et il ne modifie pas des données à l'extérieur de cette fonction. Il transforme une donnée en entrée (sans la modifié) en donnée de sortie qu'elle crée.

La plupart des autres caractéristiques de la programmation fonctionnelle peuvent se déduire de cette propriété. Utilisez-la comme un fil conducteur:

  • Pas de boucles => récursivité ou reduce

  • Pas d'affectations => nommage d'expressions

  • Pas d'insctructions => uniquement expressions et définition de fonctions


Who this course is for:

  • Débutant souhaitant apprendre à programmer rapidement
  • Programmeur souhaitant s'initier au paradigme fonctionnel
  • Programmation recursive et logique pour résoudre les problèmes
  • Initiation ai modèle map-reduce