| I disagree. ORM's aren't a problem at all as long as you have the ability to override problematic queries with named queries, etc. ORM's can provide very real advantages when it comes to caching, development time, etc., as long as you review what the ORM is doing and notice when it's doing it wrong. I've just spent 2 years architecting a high transaction global video game system using an ORM, and it worked well. In our case, the ORM provided acceptable SQL for about 85% of the queries, and we overrode the rest. The ability to quickly and easily allow the developers to write their own SQL, to be reviewed later by a DBA, was a life saver. Combine that with our stress and load testing, it was easy to see where the hot spots were and deal with them effectively. The problem comes from people who rely on the ORM to do everything for them without truly understanding how it works. ORM's, like anything, are a tool, and there is a time and place for them. |