There are so many definitions of OOP out there, varying between different books, documentation and articles.

What really defines OOP?

    • matcha_addict@lemy.lolOP
      link
      fedilink
      arrow-up
      7
      ·
      11 months ago

      the comments in this thread show that there are different answers to the question, including different from this post.

      Nonetheless, I appreciate the link. It’s a good read.

    • BatmanAoD@programming.dev
      link
      fedilink
      arrow-up
      7
      ·
      11 months ago

      It’s simply not true that there “aren’t really that many definitions of OOP”, much less that the guide you’ve linked is “comprehensive” when it is specifically about Java.

      This is a good, brief post about the different conflicting definitions: https://paulgraham.com/reesoo.html

      This is a much more comprehensive but also less focused overview, with many links, from a site that is effectively both a wiki and a forum: https://wiki.c2.com/?ReesOnObjectOrientedFeatures

      • sirdorius@programming.dev
        link
        fedilink
        arrow-up
        2
        arrow-down
        3
        ·
        11 months ago

        Academically, you’re right. For practical reasons, you probably don’t care how Simula, E, Lisp and Smalltalk (languages mentioned in that 20 year old article) implement it. This seemed more like a beginner question so I think the Java definition is a good starting point.