Thursday, June 30, 2005

MonoRail, it's just good fun!

You know how some days can just drag on ya, and by the end of the day you just don't feel that you've been real productive? Yeah well, today wasn't one of those. :)

I started digging more into MonoRail & Ajax for this new website I'm working on at work, and it was really a blast.

For example, following the MindDump (at CodeProject) example's lead, I've been creating DataAccessObjects and Services. This is a Reporting site with some Administration sections. As we added more features it started to become clear that we could develop the entire application without a Database at all.

Think about that for a minute. Think you could do that in ASP Classic? How about ASP.NET, the code-behind model, using the code-behind as if it were a Controller, and embedding some O/R Mapper queries in it directly (as Thomas Tomiczek suggests)?

With MonoRail it's easy.

What makes MonoRail special though? DAO's are nothing new. Heck, you could write a VB6 COM component to use in an ASP Classic site as a DAO. So what then? The deal is that with Castle's WindsorContainer you can just whip up interfaces for your Services, and then some stub classes to implement them and serve up dummy data. So you don't need to worry about Database integration until the last possible minute. When you do have your real implementations ready, you can just make a few configuration changes and away you go!

Sounds like a lot of extra work though, all those Services, DAOs, etc... Actually, not at all. What is a DAO? It's just data access implementation details that you'd have to write anyways. The only difference is that you're wrapping it up in a class with a method signature for each task. Are a few class and method declarations really all that bad? Of course not.

So anyways, all this was a lot of fun. Even more so was getting the Table with Pagination example working though. It's just a great feeling writing something as slick as GMail. :) And MonoRail makes it easy. Then just for kicks, I surrounded the report in a div, and made it fade in from light-blue with the EffectsFatHelper. This is a new one to me, but apparently it's been around. Anyways, cyas, it's dinner time. :)
Comments: Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?