Three ways you can gain value from Naked Objects MVC:
A faster way to get started with MVC |
Naked Objects MVC is a simple and effective way to explore and learn the capabilities of Microsoft's ASP.NET MVC (v2). A soon as you have defined your model objects you can run them as an ASP.NET MVC application - using the generic Views and Contollers provided by Naked Objects. As a next step you can then write your own view for one of your model objects, either from scratch or based on a generic Naked Objects view, and there's no need to alter the controllers or the routing in the Global.asax file. Finally, you can experiment with customising the flow of the application by writing your own Controller(s) and altering the routing for all, or just part, of the application. The net result is not only a faster start, but a greater ability to experiment with just one construct at a time. |
|---|---|
More productive development |
Naked Objects MVC is simply a more productive way to build complex business applications. You concentrate your efforts on your domain model and its behaviour (this concept is often referred to as Domain-Driven Design) but with the benefit of being able to use the model, immediately, via a good quality user interface. You only start to focus on writing a customised user interface once the domain model has stabilised, thus eliminating a lot of wasted effort. And because the default HTML user interface generated Naked Objects MVC is a direct reflection of the domain model, it is easier to get the domain model right - which pays huge dividends in terms of business agility. |
Easier maintenance |
The fact that you only create custom views where you need them significantly reduces the total amount of code that you write and maintain. Also Naked Objects MVC looks afyer all aspects of persisting the domain objects - so there's no need to write any Data Access Layer. (Naked Objects makes use of Microsoft's Entity Framework (v4) for this persistence, but it does this transparently, so you don't even need to learn how to program Entity Framework. |
