Last time I had to develop a standalone application which would rely on a database, I had to design the whole data model, deploy it into a RDBMS, implement DAOs for CRUD operations and, only then, implement my business logic.
Nowadays, things are so easily made that any dumb ass with access to Google and a Java/C# compiler can do that in no time (RoR developers, stop your urge to coment right here, please)! With C# or Java and db4o [..] you can forget data modelling and deployment and go directly for code development. Just create your classes, and start implementing your business logic.. Your database will be magically generated, deployed and persisted!
So, you have almost for “free (as in code)” the following capabilities:
- Persistence;
- Transactional operations (ACID);
- Object-Oriented querying;
- Standalone or Client/Server environment;
- Minimal footprint;
I recommend everyone, even the ones developing enterprise applications to give some time to these technologies. Perhaps you’ll learn something about flexibility and easiness.
Full post: http://ppires.wordpress.com/2008/02/14/database-access-made-stupidly-simple/