Top model AMERICA’S NEXT view controller. ScottGu Wrote The First Prototype of ASP.NET MVC While...
-
Upload
blaze-moody -
Category
Documents
-
view
218 -
download
0
description
Transcript of Top model AMERICA’S NEXT view controller. ScottGu Wrote The First Prototype of ASP.NET MVC While...
top model Phil HaackSenior Program ManagerMicrosoft Corporation
A M E R I C A ’ S N E X T
view controller
Objectives and TakeawaysWhat’s in it for you?
Session Objectives Introduce you to this crazy new MVC thingConvince you that it’s not as crazy as it seemsNot bore you to sleep
Key TakeawaysASP.NET MVC puts you in full controlExcitement about ASP.NET MVCLack of Sleep
Urban Myth Point of Clarification
ScottGu Wrote The First Prototype of ASP.NET MVC While Flying
A Plane
In
What is ASP.NET MVC?I ask myself this every night
A new Web Application Project typeSimply an option
Not a replacement for WebFormsBuilds on top ASP.NETManual vs Automatic Transmission
File | New
demo
What is MVC?
A design patternAcronym for Model ● View ● ControllerSeparation of concerns
What is MVC?
Step 1Incoming request routed to Controller
Request
Controller
What is MVC?
Step 2Controller processes request and creates presentation
Model
Controller
Model
What is MVC?
Step 3Model is passed to View
Controller
View
What is MVC?
Step 4View transforms Model into appropriate output format
Controller
View
What is MVC?
Step 5Response is rendered
Response
Controller
View
Framework Goals
Frictionless TestabilityTight control over <markup>User/SEO friendly URLsLeverage the benefits of ASP.NETConventions and Guidance
Separation of ConcernsEach component has one responsibility
SRP – Single Responsibility PrincipleDRY – Don’t Repeat Yourself
More easily testable (TDD)Helps with concurrent development
TLAs!
Clean URLsREST-like
/products/update/blog/posts/2008/08/12/mvc-is-cool
Friendlier to humansHack /product.aspx?categoryid=123 to becomeBecomes /products/kittens/
Friendlier to web crawlersSearch engine optimization (SEO)
ExtensibleReplace any component of the system
Interface-based architectureVery few sealed methods / classes
Plays well with others
"Webby"
Supports PRG (Post-Redirect-Get) Pattern
HaackOverflow
demo
Experiments in TransparencyHeavy community involvement
ForumsTwitter, Blogs, CodePlex
Trying out new ideasFunctional project templateIncludes unit tests and source on CodePlex
Experiments in AgilityDaily Triage Meetings and weekly design meetings94% Code Coverage/1209 unit testsShip early and often
The Road to RTM
Dec CTP 2007
Previews 2, 2.5, 3, 4, 5
BETA
RC 1RC 2
RTM!March 17 2009
Wow! 10 Releases!
ASP.NET>
MVCWeb Forms
Choosing Between MVC and WebForms
WebForms• Control ecosystem• State management• Design time support
ASP.NET• Services• Caching• Routing• Localization
MVC• Do it yourself• Separation of concerns•TDD• Extensibility everywhere
More control over details
Ready-to-use building blocks
Or…
Use Them Both!
SummaryNot a replacement for WebForms
All about alternativesExtensible
As simple or complex as it needs to be to suit your tasks
FundamentalPart of the System.Web namespaceIt’s still ASP.NET under the hood!
ResourcesASP.NET MVC - http://asp.net/mvc/ASP.NET on CodePlex - http://codeplex.com/aspnet/
ASP.NET MVC E-Book - http://bit.ly/mvc-ebook
Extended Forehead Edition!
Please Complete an Evaluation FormYour feedback is important!
Evaluation forms can be found on each chairTemp Staff at the back of the room have additional evaluation form copies
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.