Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
olback1157459dPeople care too much about things like this. Write your code however you want, rewrite in another way if you have to.
People are completely obsessed with buzzwords like dop/oop/whatever.
Move on, nobody cares how you wrote your shit as long as it performs.
hitko147059dData-oriented is great for scalability, since it greatly limits side effects and allows for better auto-optimisations. The reason it's so overused right now is because someone working on huge amounts of data talks about DOP on some conference, and suddenly every attendee thinks they should use it on their small project.
It's an endless cycle of what's "hot", just ignore it and do whatever fits your use case.
Demolishun598459dI have been working on a codebase that has some of the most challenging lack of structure. Different coding styles, strange friend function hacks, etc. It has bugs that I cannot believe exist as they fail right away when I create a new project using those libraries. So my goal is to do "better" than the last guy and rewrite problematic code. I have explored different coding paradigms and have found many of those paradigms at odds with the existing code. So, in the end I write clean code and match the approach taken thus far unless it is detrimental.
If you need performance in parallel with safe concurrency and surety, it's the way to go. If you need ease of conceptual understanding, use OOP. DDD is valuable in either.
yellow-dog4745159dDOP is just a way of saying "i dont understand functional programming, doesnt my idea of immutable data structures and side effect free code sound super innovative?"
SomeNone72059dOOP is, in my experience, overkill most of the time. Sure, there are scenarios that are a good fit for solving with OOP but most of the time a set of modules with a well-defined interface, and in these modules mostly pure functions (side effects should be pushed to the boundaries, and then carefully introduced where absolutely beneficial to performance) will be less code to write, and result in a more maintainable codebase.