Moto zei:
Zeer grote Leaky abstractions met veel te grote learning curve, totaal geen ROI of ge moet als job constant kleine tijdelijke programmakes maken
ORM is an anti-pattern | Seldo.Com Blog
Interoperability Happens - The Vietnam of Computer Science
Ik heb het eerste artikel gelezen en moet toegeven dat de schrijver ergens een punt heeft. Echter heb ik het gevoel bij het lezen dat hij een beetje is vastgeroest in programmeertechnieken van 10-15j geleden. En heel sceptisch staat tegenover nieuwe dingen die hij niet gewoon is. Door ORM direct af te schilderen als een anti-pattern geeft hij mij de indruk weinig ervaring te hebben met echt complexe systemen.
Ja, ORM is initieel simpel en vereist weinig aandacht voor de db bij kleinere applicaties.
En ja, bij daarna wordt het complex en moet ge met veel rekening houden als ge met grotere applicaties bezig zijt.
Het doel van ORM is om komende van uw DB zo snel mogelijk met objecten (entities) te werken. Uw code moet zoveel mogelijk DB-unaware zijn, ma da wil niet zeggen dat de developer de DB zo maar even moet vergeten.
Als ge dat niet doet gaat ge nooit volledig OO kunnen werken en zeker niet Domain Driven en gaat uw code naar mate uw applicatie groeit minder beheersbaar en minder overzichtelijk worden.
Ik heb toch al wat software geschreven in mijn leven, en de kracht van ORM-frameworks kwam echt naar boven bij echt complexe en grote projecten. En geloof me, ORM heeft daar zeker een ROI. Echter, als ge denkt dat ORM alles voor u gaat oplossen zal dat idd zeer vroeg in uw gezicht ontploffen. En dan begrijp ik waar de frustratie vandaan komt.
En neen ORM is geen silver bullet, die dingen bestaan niet in software engineering.