Art Of Programming

musings by Dmytrii Nagirniak

MonoRail - Second Look

I was playing with Mono Rail framework after my first look at it. I always remember MonoRail after I need to do tricky parts in WebForms. Sometimes I’m just struggling with WebForms, fighting against it… There’s so much pain if it is needed to do something “unusual” in WebForms, but usual and common for WEB. What can I mention about Monorail now, since that time.
  1. It’s powerful thing.
  2. It’s very pluggable and expandable.
  3. It’s testable.
  4. It’s controllable.
  5. It’s cool!
Now, what does prevent me from using MonoRail. I think it is only one thing - 3-rd party controls. I already own Telerik Web Controls Suite and don’t want to loose it. On the other hand there’re plenty client-side libraries to do most of that stuff. Such as ExtJS. But in most cases it will be needed to write some helpers to work with them server-side. Not a big time consumer, but it needs to be done (lazy devs don’t like to do it). I don’t think I’ll move away from WebForms in my current projects. But new projects will be considered to be implemented with MVC and without WebForms. Also it seems like Microsoft just steals (is this a right word?) Castle Project’s implementation of MVC. Have a look at MS MVC Presentation. The license of MR allows to reproduce it, but it’s not very honest from MS side (as always :))… I’m only looking forward they will support it in some “native” way for ASP.NET… And I really, really, really want MonoRail and MS MVC would not become competitors. I would like them to see as contributors to the same MVC idea. And one more notice about Castle Project. I got source code from their SVN repository and it is very good structured, easy to read and understand. There’re set of unit tests that I can easily use to find how to use particular feature. They also try to do as many comments as possible. Good job! OSS Project contributors are great people. Will I have a chance to become such one sometime? Will you or maybe you already are?

Comments