2. Agenda Web users interfaces Web Presentation Patterns Overview of ASP.NET web forms Seperation of concerns Overview of ASP.NET MVC ASP.NET MVC request flow Making the choice
3. Web user interfaces Classic ASP ColdFusion PHP JSP Perl ASP.NET web forms ASP.NET MVC
5. Overview of ASP.NET Web forms Tooling Postbacks Seperation of HTML interface from app. Logic Event based programming model Allow third parties to create controls Rapid development
6. Seperation of concerns Presentation logic, business logic and data access are mixed together too often Hard to manage the code, goes agains good OO principles Each component has its own responsibility Avoid repeating the code(DRY) Easily testable
7. Overview of ASP.NET MVC Alternative to ASP.NET, not a replacement Full control over markup No code behind pages Clear seperation of concerns User/SEO friendly URL Testability No postbacks No viewStates
8. ASP.NET MVC request flow 6 Routing Controller View 1 2 5 3 Model Data store 4 Http request from user Routing mechanism forward the request to the controller Controller calls model to prepare for action and update data or call the viewData The model returns the requested data to controller The controller choose a view to represent the model View renders the result as HTML markup