5 ms·
Are ORMs still a thing? I've been away from OOP for some years now, but just when I was leaving it, there was a trend firmly against ORMs... my guess was that t
by the_af 4mo ago
Are ORMs still a thing? I've been away from OOP for some years now, but just when I was leaving it, there was a trend firmly against ORMs... my guess was that they were on their way out, replaced by more lightweight libs and frameworks? Or did they make a comeback?
Regarding OOP itself, I also remember when "favor composition over inheritance" became a thing. Was this reversed too?
- dbalatero 4mo ago> Regarding OOP itself, I also remember when "favor composition vs inheritance" become a thing. Was this reversed too? I think this is generally still the advice, when working in OOP contexts.
- throwaway2037 4mo agoI agree from my extensive experience writing enterprise CRUD software. At this point, inheritance is like a plague that no one wants to touch. The best examples that I have seen are abstract base classes with insanely restricted overrides. If writing Java, imagine all of the public/protected methods are final except one or two. Wherever possible, classes are intentionally final to avoid any inheritance. To make a joke: "That shit is locked down!"
- digitaltrees 4mo agoI love an ORM. I think much of the problems people experience with ORM, OOP, Restful routes, is because they get the domain model wrong. When you model the data correctly you don’t need to have complex queries that push ORM beyond their breaking point.
- the_af 4mo agoI think it's more complex than just about getting the domain model wrong. ORMs introduce tradeoffs and are inherently complex and full of caveats (both when deciding to use one or not), as amusingly pointed out in the much-discussed article from 2006: "[Object-Relational Mapping is] The Vietnam of Computer Science" [1] ---- [1] https://archive.is/QVPj https://archive.is/QVPj (excuse the archive link, Ted Neward's blog seems now lost to linkrot).
- throwaway2037 4mo ago> I love an ORM. No trolling: What langauge and what framework? One thing I can say from experience: I have seen some teams where they have deep knowledge of an ORM framework, and they are crazy productive when writing enterprise CRUD software.
- throwaway2037 4mo ago> Are ORMs still a thing? In enterprise CRUD software: Absolutely. > favor composition over inheritance I was very late to arrive to Java around 2015. This expression was wide-spread at the time. For those involved with "OOP" enterprise languages like .NET/C# or Java, when did "favor composition over inheritance" become dominant?