The Latin name Aurelius means Golden. Has TMS Software created the “Golden” Object Relational Mapping [ORM] Framework? Like any tool, it depends on your perspective and needs ... and for me, it sure looks like they have. Let me explain ...
I’m pretty sure that I’ve kissed every frog that exists in the land of Delphi ORM/OPF and it’s only now, that I think I’ve finally found the prince[ss]. I installed the product, opened the simple example in D2010Pro, read the Quick Start Guide, reviewed the code and ran the demo ... and knew, not only what was going on, but everything I needed to know to get a trivial Hello World application of my own up and running. This is a new experience for me. If I was going to design and build a ORM framework to be used with Delphi, admittedly the end result would likely be nothing even remotely close to TMS Aurelius, but it would be exactly what I have in mind and be striving to attain.
For me, probably the most significant point in evaluating an ORM framework for use would have to be “Does it persist an out of the box class?”. Some do – even without late breaking language enhancements, but many don’t. By taking advantage of language enhancements in the IDE, TMS Aurelius does – in spades. I’m speaking primarily of class attributes and anonymous methods but I expect the RTTI enhancements are getting a good workout [under the hood] as well. With some frameworks there is nothing even remotely resembling a “class” once you’re finished dressing them up. Having said that, most were developed long before the new language enhancements came along.
TMS Aurelius, from what I’ve read, really doesn’t seem to give a damn about the name of database you use on the backend. It seems to be designed to switch between them whenever it suits you. I also don’t think any ORM framework that I’ve seen, is as “switchable” on the back-end as this product – although with some of them, I never got close enough to this particular feature to know for certain. The product just happens to cover all “my” database needs but then, my needs are simple. The few utilities I have in use, all currently use MS Access for storage. I’ve been looking at Firebird as a replacement on one and possibly SQLite for a couple of others, but being busy searching for the perfect ORM, have yet to move in that direction. Looks like the opportunity may have finally arrived. The product ships with Component Adapters for AnyDac, dbExpress, dbGo (ADO), Interbase Express (IBX), NexusDB, SQL-Direct and SQLite, with the promise of more to follow – at least that’s what I’ve read.
You seem to have the power to to do pretty much anything you’ve ever wanted to do with an ORM framework. You can get your hands as dirty as you would like or just sit back and let the framework handle things for you. One question you see a lot is “Can I map to an existing database/structure?”. Apparently this isn’t a problem with TMS Aurelius. Personally, I think it’s a winner.
Maybe you should have a look.
… thanks for stopping by,