Dans ce cours, vous apprendrez à appliquer le style de programmation fonctionnelle dans la conception d'applications Scala plus importantes. Vous apprendrez à connaître les nouveaux concepts importants de la programmation fonctionnelle, de l'évaluation paresseuse à la structuration de vos bibliothèques à l'aide de monades. Nous travaillerons sur des exemples plus larges et plus impliqués, de l'exploration de l'espace d'état aux tests aléatoires en passant par les simulateurs de circuits discrets. Vous apprendrez également les meilleures pratiques pour écrire un bon code Scala dans le monde réel. Enfin, vous apprendrez à tirer parti de la capacité du compilateur à déduire des valeurs à partir de types. Plusieurs parties de ce cours traitent de la question de l'interaction de la programmation fonctionnelle avec l'état mutable. Nous explorerons les conséquences de la combinaison des fonctions et de l'état. Nous examinerons également des alternatives purement fonctionnelles à l'état mutable, en utilisant des structures de données infinies ou la programmation fonctionnelle réactive. Formation recommandée : Vous devez avoir au moins un an d'expérience en programmation. La maîtrise de Java ou de C# est idéale, mais une expérience dans d'autres langages tels que C/C++, Python, Javascript ou Ruby est également suffisante. Vous devez avoir une certaine familiarité avec l'utilisation de la ligne de commande. Ce cours est destiné à être suivi après le cours Functional Programming Principles in Scala : https://www.coursera.org/learn/scala2-functional-programming.
Offrez à votre carrière le cadeau de Coursera Plus avec $160 de réduction, facturé annuellement. Économisez aujourd’hui.
Conception de programmes fonctionnels en Scala (version Scala 2)
Instructeur : Martin Odersky
Inclus avec
(10 avis)
Ce que vous apprendrez
Reconnaître et appliquer les principes de conception des programmes fonctionnels
Concevoir des bibliothèques fonctionnelles et leurs API
Écrire des applications réactives fonctionnelles simples
Comprendre les techniques de raisonnement pour les programmes qui combinent des fonctions et des états
Compétences que vous acquerrez
- Catégorie : Type Classe
- Catégorie : Transparence référentielle
- Catégorie : Paresse
- Catégorie : Programmation réactive
- Catégorie : Programmation fonctionnelle
Détails à connaître
Ajouter à votre profil LinkedIn
3 devoirs
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées
Obtenez un certificat professionnel
Ajoutez cette qualification à votre profil LinkedIn ou à votre CV
Partagez-le sur les réseaux sociaux et dans votre évaluation de performance
Il y a 5 modules dans ce cours
Nous commencerons par revoir certains concepts que nous avons appris dans Principes de la programmation fonctionnelle en Scala : les collections, le filtrage et les fonctions. Nous aborderons ensuite les compréhensions for, un moyen puissant en Scala de parcourir une liste, de la traiter et de renvoyer une nouvelle liste. Nous verrons comment effectuer des requêtes avec des for-compréhensions et comment le compilateur Scala "désucre" les for-compréhensions pour les transformer en appels à des fonctions d'ordre supérieur. Enfin, nous discuterons de ce que sont les monades et de la manière de vérifier que les lois des monades sont satisfaites pour un certain nombre d'exemples.
Inclus
10 vidéos10 lectures3 devoirs de programmation
Cette semaine, nous reviendrons sur les problèmes de performance posés par la recherche combinatoire et nous découvrirons un concept important de la programmation fonctionnelle qui permet de résoudre ces problèmes : la paresse. Nous en apprendrons également un peu plus sur les preuves sur les arbres ; en particulier, nous verrons comment étendre l'induction structurelle aux arbres.
Inclus
5 vidéos2 devoirs de programmation
Cette semaine, nous allons apprendre à faire en sorte que le compilateur écrive des programmes à notre place ! Nous verrons comment le compilateur peut convoquer des fragments de programme en fonction de leur type et comment ce mécanisme peut être utilisé pour implémenter une nouvelle forme de polymorphisme (classes de type).
Inclus
5 lectures3 devoirs2 devoirs de programmation
Cette semaine, nous allons nous intéresser à l'état et aux effets secondaires. À l'aide d'un exemple riche, nous apprendrons des modèles de programmation pour gérer l'état dans des programmes plus importants. Nous découvrirons également les boucles for et while en Scala.
Inclus
6 vidéos
Cette semaine, nous allons apprendre un certain nombre de modèles de programmation importants à l'aide d'exemples, en commençant par le modèle de l'observateur, puis en passant à la programmation fonctionnelle réactive.
Inclus
4 vidéos2 devoirs de programmation
Instructeur
Offert par
Recommandé si vous êtes intéressé(e) par Développement de logiciels
University of California San Diego
University of Colorado System
University of Alberta
École Polytechnique Fédérale de Lausanne
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?
Avis des étudiants
Affichage de 3 sur 10
10 avis
- 5 stars
60 %
- 4 stars
40 %
- 3 stars
0 %
- 2 stars
0 %
- 1 star
0 %
Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à plus de 7 000 cours de renommée internationale, à des projets pratiques et à des programmes de certificats reconnus sur le marché du travail, tous inclus dans votre abonnement
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
L'accès aux cours et aux devoirs dépend de votre type d'inscription. Si vous suivez un cours en mode audit, vous pourrez consulter gratuitement la plupart des supports de cours. Pour accéder aux devoirs notés et obtenir un certificat, vous devrez acheter l'expérience de certificat, pendant ou après votre audit. Si vous ne voyez pas l'option d'audit :
Il se peut que le cours ne propose pas d'option d'audit. Vous pouvez essayer un essai gratuit ou demander une aide financière.
Le cours peut proposer l'option "Cours complet, pas de certificat" à la place. Cette option vous permet de consulter tous les supports de cours, de soumettre les évaluations requises et d'obtenir une note finale. Cela signifie également que vous ne pourrez pas acheter un certificat d'expérience.
Lorsque vous achetez un certificat, vous avez accès à tous les supports de cours, y compris les devoirs notés. Une fois le cours terminé, votre certificat électronique sera ajouté à votre page de réalisations. Vous pourrez alors l'imprimer ou l'ajouter à votre profil LinkedIn. Si vous souhaitez uniquement lire et visualiser le contenu du cours, vous pouvez l'auditer gratuitement.
Vous pouvez prétendre à un remboursement intégral jusqu'à deux semaines après la date de votre paiement ou (pour les cours qui viennent d'être lancés) jusqu'à deux semaines après le début de la première session du cours, la date la plus tardive étant retenue. Vous ne pouvez pas obtenir de remboursement une fois que vous avez obtenu un certificat de cours, même si vous terminez le cours pendant la période de remboursement de deux semaines. Consultez notre politique de remboursement complète.