The Eric Normand Podcast

What is so great about object oriented programming?

Aug 1, 2019
Dive into the fascinating world of object-oriented programming as the speaker unveils its standout benefits, including polymorphism and late binding. These principles bolster flexibility, allowing systems to evolve effortlessly. However, the discussion doesn’t shy away from reality, addressing the balance between change and stability in coding. Explore how object-oriented design serves as a framework that embraces uncertainty, making it a vital player in software development.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
INSIGHT

Message Indirection in OO

  • Messages in OO provide a layer of indirection, enabling polymorphism and hiding implementation details.
  • This separation of caller and callee allows for flexible system evolution and late binding.
INSIGHT

OO's Reversed Dispatch

  • OO reverses the dispatch order of FP by prioritizing the value's class over the function.
  • This allows the value to determine the operation, enabling open-world assumptions and ad-hoc case additions.
INSIGHT

Open-World Assumption in OO

  • OO's value-centric dispatch eliminates the closed-world assumption, enabling seamless integration of new classes.
  • Each message pass cleanly separates caller and callee, promoting modularity and independent modification.
Get the Snipd Podcast app to discover more snips from this episode
Get the app