Functional Programming in Scala with Cats and Typeclasses

Build generic and robust software by mastering typeclasses, monads, and functional patterns using the Cats library.

4.4 (310) ⏱ 1 h 36 min 📚 9 leçons

À propos de ce cours

Moving beyond basic object-oriented patterns in Scala requires a fundamental shift toward functional purity and type-level programming. This course bridges the gap between writing 'better Java' and leveraging the full power of the Scala type system to create highly reusable and testable code. You will transform your approach to software design by moving from imperative logic to declarative functional structures. By learning how to separate data from behavior through typeclasses and managing side effects with monads, you will be able to write applications that are easier to reason about and maintain. What you'll learn: - Understand the core principles of typeclasses and how to implement them using modern Scala features like givens and extension methods. - Apply foundational functional structures including Functors, Applicatives, and Monads to everyday programming tasks. - Implement robust data validation and error handling strategies using the Validated and Either types. - Manage application state, dependencies, and logging through the State, Reader, and Writer monads. - Master monad transformers to simplify complex nested computations and improve code readability. - Practice writing lawful functional code and understand the importance of laws in functional abstractions. - Explore the basics of effect management and lazy evaluation to build stack-safe and efficient programs. The course begins with essential terminology and the conceptual foundations of functional programming before moving into practical applications. You will read through detailed explanations and study code examples that demonstrate how to solve real-world problems using the Cats library. This course is designed for developers who have a basic grasp of Scala syntax and want to explore the functional ecosystem. No prior experience with category theory or functional libraries is required. Start reading to master the functional way of building Scala applications.

Ce que vous recevez

  • 📜 Certificat de fin
    Ajoutez-le à votre profil LinkedIn
  • ♾️ Accès à vie
    Revenez quand vous voulez, sans expiration
  • 📱 Téléphone ou ordinateur
    Fonctionne partout, sur tout appareil
  • 💸 Remboursement 30 jours
    Sans poser de questions
  • Court et ciblé
    1 h 36 min de contenu pratique

Avis (5)

Chloe Bailey AU Apprenant vérifié
★ 4 · 2026-02-25T23:20:55+00:00

C'était une bonne introduction. La structure est logique et couvre les bases efficacement.Peut être trop introductif pour les apprenants avancés.

خالد بن أحمد آل خليفة BH Apprenant vérifié
★ 5 · 2025-10-28T07:00:55+00:00

Quelle expérience d'apprentissage fantastique. Les exemples étaient super pertinents et ont vraiment aidé à cimenter les concepts.

Zofia Woźniak PL
★ 5 · 2025-06-28T06:10:55+00:00

J'ai apprécié les étapes claires, bien que certains des derniers modules auraient pu utiliser plus d'exemples.

Хамит Абильдин KZ Apprenant vérifié
★ 3 · 2025-05-09T01:26:55+00:00

C'est une introduction décente, qui pourrait bénéficier d'exemples plus divers et d'un meilleur flux entre les modules.

Elena Reyes EC Apprenant vérifié
★ 2 · 2025-01-20T22:17:55+00:00

Les exemples n'étaient pas toujours directement applicables à ce qui était enseigné. Un peu confus en fait.

Écrire un avis

Nous vous demanderons de vous connecter après envoi — votre brouillon est sauvegardé.

Autres apprenants ont aussi suivi

Questions fréquentes

De quoi ai-je besoin pour suivre ce cours ? +

Un téléphone ou un ordinateur avec internet, c'est tout. Aucune installation, aucun matériel spécial.

Comment payer ? +

Carte via Stripe ou cryptomonnaie. Nous ne stockons pas les données de carte — Stripe les gère de manière sécurisée.

Puis-je obtenir un remboursement ? +

Oui — remboursement complet sous 30 jours, sans question.

Combien de temps aurai-je accès ? +

À vie. Une fois acheté, le cours est à vous, vous pouvez y revenir quand vous voulez.

Vais-je obtenir un certificat ? +

Oui. À la fin, vous recevez un certificat à ajouter à votre profil LinkedIn.

Conçu pour les apprenants en
Tech Design Finance Marketing Santé Éducation Hôtellerie Industrie