The gang at Microsoft has been working on the new ASP.NET MVC -- Model-View-Controller -- framework for a while. In February they announced the MVC Framework v0.1 Relelase Candidate 1 was available and there was very likely a flock of developers downloading it, anxious to see how it works.
We provided an overview of the framework when it was announced. The MVC pattern is designed to separate the user interface from the business logic of an application, resulting in easier testing of the application. The three components of this pattern are defined as follows:
- Model: Represents the state of an application, often mapping to a database table
- View: Displays the UI for the application
- Controller: Controls how the input into the UI is handled, manipulates the model and determines which UI to present to the user
For many .NET developers, the MVC framework is a completely new way of developing applications. An approach, very unfamiliar and maybe somewhat scary to take on.
Luckily experienced .NET developers joined together and wrote a book on the framework called Professional ASP.NET MVC 1.0. Written by Scott Hanselman, Scott Guthrie, Rob Conery and Phil Haack for Wrox, the book provides a review of the basic concepts of the MVC framework, or pattern, how it differs from ASP Web Forms, explores the structure OOTB and more advanced concepts.
The book, available on Amazon, has not yet been released, but you are lucky enough to get a freebee that should entice you to buy it when it does become available. Guthrie, a Vice President in the MS Developer Division, kicks off the book with a full tutorial on building an MVC application -- called NerdsDinner. He says he agreed to write the chapter in return for Wrox's providing it as a free PDF download.
Licensed under the Creative Commons Attribution No Derivatives license, you can download it and do with it what ever you want. The key is to learn this new framework quickly and easily.
So ahead, download your copy now, along with the source code and start learning how to write ASP.NET MVC applications.