Jun
13
2008
I really enjoyed talking about Developing Ajax web applications with Castle Monorail yesterday at Skills Matter. It was great to see so many familiar faces — thanks for coming again and I hope that you enjoyed it as well. Here are the downloads and links that Dave and I promised to put online: Continue Reading »
Jun
09
2008
One of the best things about Castle Monorail MVC engine is that it allows us to test controllers from the IDE, without actually deploying anything to the web server. A major problem with most web development environments, including classic ASP.NET, is that the workflow and session logic can only be tested through the UI. User interface testing is slow, pain to maintain and generally does not pay off as much as code unit tests do. Monorail’s programming model allows us to test workflow and session logic from the code, leaving only the actual rendering outside the reach of unit tests. That is how Monorail empowers us to really apply agile principles to web development, and saves us even more time and effort. Continue Reading »
May
26
2008
In the third part of the Castle tutorial, we look into the features of Monorail that allow us to save a lot of time and effort when developing web applications. We explore advanced Monorail concepts that help us delegate error processing and authentication to the framework and reuse templates. We also look into how Monorail integrates nicely with ActiveRecord to automatically load and modify database objects based on HTML forms. Continue Reading »
May
13
2008
In the second part of the Castle demo application tutorial, we look into the basic features of Castle’s powerful Model-View-Controller system, called Monorail. Monorail is based on Ruby on Rails, and brings two very important features to .NET web development:
1. Good separation of concerns between the domain model, workflow logic and the user interface: this allows us to unit test larger portions of web applications, makes the code more reusable and gives us flexibility for the user interface.
2. HTTP request/response plumbing, allowing us to be much more productive when developing web pages: Monorail will automatically convert HTTP request data into strongly typed function parameters, even domain objects; it provides an infrastructure for aspect-oriented request handling and reacting to errors. That allows us to focus on the business logic of the web application and skip writing boilerplate web code. Continue Reading »