OOP and FP - Complementary Techniques in Software Development
Offered By: Devoxx via YouTube
Course Description
Overview
Explore the complementary nature of Object-Oriented Programming (OOP) and Functional Programming (FP) in this insightful 51-minute conference talk from Devoxx. Debunk common misconceptions about both paradigms and discover how they can coexist harmoniously in modern software development. Learn about the core strengths of OOP, including polymorphism and encapsulation, alongside FP's focus on immutability and declarative style. Gain a deeper understanding of message passing in OOP, decomposition techniques in both paradigms, and how to effectively manage errors. Compare imperative and declarative approaches, and examine different versions of functional programming implementation. Equip yourself with the knowledge to choose the right tools for specific programming challenges, ultimately enhancing your ability to create efficient and maintainable code.
Syllabus
Intro
A world of false dichotomies
False dichotimies in software engineering
OOP == Message Passing
Functional Programming Myths
Definitions
What's the difference?
Biggest OOP advantage: Polymorphism
OOP vs FP Decomposition
OOP Decomposition
Composition(?)
Biggest FP advantage: Immutability
Referential transparency means no side-effects
OOP vs FP Error Management
OOP: FP = Imperative: Declarative
FP version 1
FP version 2
85% functional language purity
Taught by
Devoxx
Related Courses
Functional Programming Principles in ScalaÉcole Polytechnique Fédérale de Lausanne via Coursera Functional Program Design in Scala
École Polytechnique Fédérale de Lausanne via Coursera Paradigms of Computer Programming
Université catholique de Louvain via edX Introduction to Functional Programming
Delft University of Technology via edX Paradigms of Computer Programming – Fundamentals
Université catholique de Louvain via edX