At SDC 2009 in Sweden I presented a classic “What is ASP.NET MVC and how does it work”? Here are my slides and code demos.
Judging from the crowd feedback and also the questions afterwards I am very pleased with the outcome of this session. It appeared to me very much like the audience got what they came for; a show and tell on ASP.NET MVC to get a look at what it is and what useful features it gives us. Also why it is radically different from standard ASP.NET WebForms.
I did one sort of unexpected thing in my presentation that I think was appreciated. My first demo was the classic File –> New demo where you basically create a Model by adding a database (sorry that’s THE database Northwind) and dragging a few tables into a Linq to SQL diagram. The advantage of this approach when you present is clear; you come quickly into the thing you want to demo while not having to bother too much with the underlying model issues. However there is a danger to this approach. If Microsoft always goes up on stage and shows this light weight way of creating a quick and dirty model there is a risk that some people in the audience will begin to believe that this is the right way of doing things. It is not. Again… IT IS NOT! So I started out the wrong way to show the first few ASP.NET MVC features. Then I stopped… (dramatic pause) What’s wrong here – I asked the audience? And went on to show a (very rudimentary but still) data accessing contract and a Model that I’d built in a separate project. And then I showed how to use a custom controller factory to achieve Dependency Injection in the run-time and how to pass in a mock data access when Unit Testing. I understand that Microsoft added an empty Model folder to the MVC Application template but I do feel that it is a bit treacherous. The Model in all likelyhood does not belong in the Web Application Project. It comes from a project outside the web front end. I would go so far as to suggest that in order to avoid confusion the Model folder in the MVC Application template should be dropped.
A sort of funny anecdote in this is that while working on this presentation the MVC team went into release mode and released at Mix the week before my presentation. So even though I presented something really fresh I had to go through Beta, RC1, RC2 and RTM during my session preparations. (phew) But thanks guys at the MVC team for the release! I love it!
Here are my slides:
www.noop.se/files/ASP.NET.MVC.Framework.pptx
Note: The slides are just a few and most of my talk was demos. Slides and session style was heavily influenced by Eilon Lipton and Scott Galloway from the ASP.NET team since I carefully reviewed their latest talks on ASP.NET before putting together my own talk. I invited Eilon to Øredev 08 where he delivered MVC talks last November and I met up with Scott Galloway at Tech Days Sweden.
Code demos:
www.noop.se/files/ASP.NET.MVC.Demos.zip
Note: For the very latest presentations from the creators of ASP.NET MVC please check out the presentations from Mix:
Oh and ASP.NET MVC is now MS-PL which is WooHoo news! ;~)
http://weblogs.asp.net/scottgu/archive/2009/04/01/asp-net-mvc-1-0.aspx
http://haacked.com/archive/2009/04/01/aspnetmvc-open-source.aspx
Cheers,
M.
Technorati Tags:
ASP.NET,
MVC,
Microsoft
posted @ Thursday, April 02, 2009 4:03 PM