1 Complexity of object-oriented programming

A capricious entrepreneur

This chapter covers

  • The tendency of OOP to increase system complexity
  • What makes OOP systems hard to understand
  • The cost of mixing code and data together into objects

In this chapter, we’ll explore why object-oriented programming (OOP) systems tend to be complex. This complexity is not related to the syntax or the semantics of a specific OOP language. It is something that is inherent to OOP’s fundamental insight—programs should be composed from objects, which consist of some state, together with methods for accessing and manipulating that state.

Over the years, OOP ecosystems have alleviated this complexity by adding new features to the language (e.g., anonymous classes and ...

Get Data-Oriented Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.