>OOP bad becuase uhmm...

>OOP bad becuase uhmm...
maybe it's true for small projects, but what are the alternatives for real projects?

Unattended Children Pitbull Club Shirt $21.68

UFOs Are A Psyop Shirt $21.68

Unattended Children Pitbull Club Shirt $21.68

  1. 1 month ago
    Anonymous

    haskell

    • 1 month ago
      Anonymous

      anon haskell is a programming language not a paradigm

  2. 1 month ago
    Anonymous

    >image
    Java isn't the only OOP language. Was this made by a nocoder?

    • 1 month ago
      Anonymous

      moron, this is not Java specific, even Java is the OOP done right

  3. 1 month ago
    Anonymous

    imperative programming in assembly

  4. 1 month ago
    Anonymous

    OOP is based, as a tool you use in some parts of your code, not as a paradigm

  5. 1 month ago
    Anonymous

    >OOP
    >POOP
    hehe

    • 1 month ago
      Anonymous

      jej (I chuckled irl btw)

  6. 1 month ago
    Anonymous

    >OOP bad becuase uhmm...
    It's bad because you have to package everything into "classes." What is unnecessary is the "class" keyword When people complain about OOP, they are talking about the class keyword and the boilerplate associated therewith and not any sort of paradigm per se.

    what your language needs is:

    1. overloadable methods
    2. an extendable struct or record type
    3. modules

    nim is an example of a language that has all three of these things and does not have a "class" keyword
    i'm not saying to use nim, but C++, for example, could have been designed from the start like this. As soon as you put the "class" keyword into a language, the LOC count doubles from all the boilerplate.

    • 1 month ago
      Anonymous

      >isolated reusable components is bad

      it's not that components are bad, it's just people don't have enough knowledge how to make them. and that's not a programming problem, but a design problem.

      ti seems people still have a trouble to grasp difference between programmin as in writing code and software design as in designing a system of interconnected components.

      • 1 month ago
        Anonymous

        >designing a system of interconnected components
        how do i learn this

      • 1 month ago
        Anonymous

        Languages are responsible for the shit designs they motivate, and classes aren't too good at containing/separating complexity. The existence of Gang of Four and Clean Code-like books is a huge red flag for OOP, whereas with a more sensible paradigm like FP, the problems those books solve are trivial enough to not even merit a mention. Focusing on data structures+functions is how you get simple code to do complex things, and then add typeclasses (haskell)/specs (elixir)/traits (rust) to share code between different but similar data types. And please for the love of god use UFCS if you don't have pipes or aren't Haskell.

        • 1 month ago
          Anonymous

          Bro give me the ops example without classes coz I don't really get how you would have the compiler map the memory properly with abstracts without classes

        • 1 month ago
          Anonymous

          >And please for the love of god use UFCS if you don't have pipes or aren't Haskell.
          Not many languages have ufcs

    • 1 month ago
      Anonymous

      OOP is fantastic for solving most problems IF the class framework is developed by competent, upper IQ devs. If it's not, then you can quickly end up with over engineered spaghetti code that's a b***h to work with. But in that respect how is it different from any other paradigm?

      IT is swamped with people who either shouldn't be there at all, or are there with half an education. For decades there has been a belief among management types that SE doesn't deserve any respect, that if they just get the right meme paradigm/language/framework/tools then they can hire monkeys to develop their profit generators. Quality? Performance? Security? Frick that, they've got shareholders to please.

      This is why there's a push against OOP. So much of it is poorly abstracted shit. Take just about anything in Java as an example. Look up Enterprise FizzBuzz. It may look like a joke, but that's what some people do when given OOP.

      >It's bad because you have to package everything into "classes."
      Classes are its strength and no, you don't have to package everything in a class. Even if a language enforced that you could just treat some classes like modules with nothing but shared methods, IF that's appropriate to the task.

      >As soon as you put the "class" keyword into a language, the LOC count doubles from all the boilerplate.
      No it does not. Or rather, it doesn't have to. Though some of that "boilerplate" is there to save your ass down the line, if you know how to use it.

      • 1 month ago
        Anonymous

        of all the bad "OOP" code I've seen, 100% of it would have been at least as bad code in any other paradigm

        >Enterprise FizzBuzz
        it's what people who don't write enterprise code, think what enterprise code looks like
        most likely a result of schools'/universities' ass-backwards methods of teaching programming

        • 1 month ago
          Anonymous

          Enterprise Fizzbuzz is exactly what enterprise code looks like.

          • 1 month ago
            Anonymous

            no, it's not

            t. writes enterprise software in java

    • 1 month ago
      Anonymous

      >It's bad because you have to package everything into "classes." What is unnecessary is the "class" keyword When people complain about OOP, they are talking about the class keyword and the boilerplate associated therewith and not any sort of paradigm per se.
      It's only an issue if you've been tunnel-visioned into thinking less LOC/less characters overall is universally better (it's not), and you've not been taught how to define contexts for things, so giving context via classes is not intuitive for you.

      > As soon as you put the "class" keyword into a language, the LOC count doubles from all the boilerplate.
      Yes, if you do OOP over something else, you will most likely have more lines of code. But the code becomes split in such a way that you need to look at fewer lines of code at a time.
      And you can control scope better with classes than just source and header files.

    • 1 month ago
      Anonymous

      >muh boilerplate
      you'll use an IDE anyway if you aren't just a script kiddie.

  7. 1 month ago
    Anonymous

    >oop gives your brain rot: the thread
    many such cases with poo locked-in crud babies.

  8. 1 month ago
    Anonymous

    > Subhuman
    > Fleas = 14
    Kek

    • 1 month ago
      Anonymous

      heh

      • 1 month ago
        Anonymous

        haha

  9. 1 month ago
    Anonymous

    No. using virtual functions is a best solution. keep it simple moron

    • 1 month ago
      Anonymous

      You wouldn't know what simple is if it shat in your face.

  10. 1 month ago
    Anonymous

    i make video game and i like oop 😀

  11. 1 month ago
    Anonymous

    the right happens in non-OOP languages too (have you read a big C project?). Welcome to real world complications and poor architectural design.

  12. 1 month ago
    Anonymous

    Composition

  13. 1 month ago
    Anonymous

    Its generally better to write code against specific low level datatypes—think SoA’s rather than AoS’s. It makes your code more flexible and has the added benefit of making it faster because of cache hits. Game developers stress the latter point, but I find the former even more important.

    OOP does pretty much the opposite. OOP intimately ties complex datatypes to your code. In some situations this is ideal. It seems to work well for GUI apps. Even the much maligned inheritance and polymorphism also seems to work pretty well in GUI apps. But thats about it. For everything else I feel it pushes you towards writing an impossible to untangle spaghetti mess. Why worry about procedure parameters when you can just stick everything in obj and call it a day?

    As for an alternative I’d say just write normal procedural code in C99. If you want a data structure or platform atomics use something from klib or even a BSD kernel if you want something extremely reliable.

    • 1 month ago
      Anonymous

      >Its generally better to write code against specific low level datatypes
      Primitive Obsession is a code smell
      low level stuff belongs at the low level, general data should be generic and abstract
      >It makes your code more flexible and has the added benefit of making it faster because of cache hits.
      wrong, it makes the code more rigid. it's abstractions that give flexibility
      worrying about cache hits is something very scenario-specific (generally a non-concern), and often a case of premature optimization

      >But thats about it. For everything else I feel it pushes you towards writing an impossible to untangle spaghetti mess. Why worry about procedure parameters when you can just stick everything in obj and call it a day?
      sounds like a "you" problem

      • 1 month ago
        Anonymous

        >wrong, it makes the code more rigid. it's abstractions that give flexibility
        Unless you've picked the wrong abstraction, which will usually be the case for any massive project with an unclear roadmap. That usually ends in a kill it with fire moment. True flexibility comes from admitting that you're not God, keeping things as primitive as possible wherever you can, and using modular/functional pieces that can be proven to be mathematically universal in nature instead of overengineered man-made horrors that work in the moment.

        • 1 month ago
          Anonymous

          your counterpoint immediately assumes a critical design failure
          if you make an equal design failure while using only primitive data types, you'll have an even shittier time trying to unfrick everything

  14. 1 month ago
    Anonymous

    Nope oop is based. Some of the shit that Java, etc shat out into the world in the 90s was crap but there's a core set of ideas that work. there will be an oop resurgence around the late 2030s or 2040s. we're living in the oop dark ages but that's ok

  15. 1 month ago
    Anonymous

    Laravel and Symfony >>>>>>>> everything else

    It's not even close. The former just works and literally asks you to write code and ship it by pushing directly to master and testing in production (optional).

    Every other framework/software stack/development paradigm just makes you wanna attend meetups, wear woman's clothes, argue on twitter, and never develop anything of value.

  16. 1 month ago
    Anonymous

    >bad workman
    >blames his tools

  17. 1 month ago
    Anonymous

    At least your example is documented, in real life it's still much worse and undocumented. You change something, don't know what the hell will break. Tests are a crutch in this situation, you should realize what your changes would affect when making them.

    • 1 month ago
      Anonymous

      Proper architecture is the solution here. Your objects should not accept invalid states.
      Saying "oh, programmers should just hold the entire program in their head" is tinker troony fantasy

  18. 1 month ago
    Anonymous

    The problem with the hierarchies on the left is they're trying the encode some kind of quasi-Aristotelian ontological claims about how the universe "really is". If you just treat OOP features like tools you can use to achieve useful mechanical effects instead of trying to adduce a solution to the entire problem of universals into your codebase, everything will work out a lot better.

    • 1 month ago
      Anonymous

      Ooooh, scary! Aristotelianism! You tried to sound smart but you failed. Typical CS soiboy midwit. Just because it's a tree thingy/hierarchy doesn't mean it has to solve the problem of universals or explain the meaning of life or describe God or involve quantum physics. moronic Black person. Wear a mouth gag, bend over and be silent.

    • 1 month ago
      Anonymous

      >just treat OOP features like tools
      that's one of the main reasons why people screw up so hard with OOP
      OOP is not a toolset, it's a paradigm

      you're right that the example on the left is shit, though
      never trust anyone who uses animals or cars as an example for object orientation

    • 1 month ago
      Anonymous

      correct

      Ooooh, scary! Aristotelianism! You tried to sound smart but you failed. Typical CS soiboy midwit. Just because it's a tree thingy/hierarchy doesn't mean it has to solve the problem of universals or explain the meaning of life or describe God or involve quantum physics. moronic Black person. Wear a mouth gag, bend over and be silent.

      >just treat OOP features like tools
      that's one of the main reasons why people screw up so hard with OOP
      OOP is not a toolset, it's a paradigm

      you're right that the example on the left is shit, though
      never trust anyone who uses animals or cars as an example for object orientation

      it's just cool to hate OOP because most people are npcs who like doing what's popular.
      Ignore them. They're human trash and what they say is as irrelevant as the noise of my sharts. Pblblblblblbirlrrrrrt.

      morons

      • 1 month ago
        Anonymous

        Manichean nincompoop.

  19. 1 month ago
    Anonymous

    it's just cool to hate OOP because most people are NPCs who like doing what's popular.
    Ignore them. They're human trash and what they say is as irrelevant as the noise of my sharts. Pblblblblblbirlrrrrrt.

  20. 1 month ago
    Anonymous

    OOP isn't bad, it's just incomplete.

    What really matters is Messaging, that's the real focus: not objects, but the *communication* between objects. Smalltalk (and others) got it right.

    • 1 month ago
      Anonymous

      Can you show an example of how good communication between objects looks like?

      • 1 month ago
        Anonymous

        Yeah I'd like to see it too, because every "muh original OOP" defender seems to have a different idea of what that is.
        For some of them, it seems what they defend is basically MPI where each "object" is a worker node. For some it seems they basically advocate objects as microservices. And some just mean "objects should never communicate pointers/references", which is, you know, nice, but sometimes you have to leave the head-in-the-cloud perfect immutability world and just pass addresses for performance reasons.

        • 1 month ago
          Anonymous

          OOP is strangely like communism when you think about it.

          • 1 month ago
            Anonymous

            >class-based paradigm
            >is like communism
            OOP is aristocratic, moron

      • 1 month ago
        Anonymous

        Yeah I'd like to see it too, because every "muh original OOP" defender seems to have a different idea of what that is.
        For some of them, it seems what they defend is basically MPI where each "object" is a worker node. For some it seems they basically advocate objects as microservices. And some just mean "objects should never communicate pointers/references", which is, you know, nice, but sometimes you have to leave the head-in-the-cloud perfect immutability world and just pass addresses for performance reasons.

        Just pass as function parameters? OOP starts turning into a nightmare when you have a class with 10 methods, and there might be some private methods are might be modified by some of these functions. This has effectively global variables in the scope of that class. And as we move away from single-threaded to multi-threaded environment, good luck trying to keep track of these shared data and synchronize everything. Instead, just arrange your code in simple functions. Make sure no function is more than 40-50 lines and 3-4 levels of indentation. Pass everything as parameters. Clearly show which parameters can be changed by the function. As much as possible, it is better to make all parameters as const reference if using C++ and return the object explicitly (be sure to allow compiler to perform RVO behind the scenes).

        • 1 month ago
          Anonymous

          Looks more fooctional-ish than OOP to me.

        • 1 month ago
          Anonymous

          only a complete nocoder could have written drivel this incoherent and nonsensical
          not even an AI chatbot could think of something this fricking bad to read

        • 1 month ago
          Anonymous

          >OOP starts turning into a nightmare when you have a class with 10 methods
          Only if you're unclear about what the methods do. You'll have the same problem if you do functions. In many ways, the single most important thing about a method or function is that you can have a clear idea about what it does that requires less effort to understand than the program text. Maybe that's the name, maybe not, but if there's no summary in any proper sense, you can't understand its place in the wider system, and that's the far harder task.

  21. 1 month ago
    Anonymous

    >NOOOO YOU HAVE TO USE X FOR YOUR WHOLE PROJECT
    Where did morons get this idea? You can mix and match as needed.

    Actually who came up with all these dumbass canned paradigms, patterns, etc? You write code that fits the needs at hand, you don't try to fit different canned solutions and just badly jam it in there when it doesn't fit quite right.

Your email address will not be published. Required fields are marked *