Stephen Walther : ASP.NET MVC - Tech-ed 2009


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Stephen Walther : ASP.NET MVC - Tech-ed 2009

  1. 1.
  2. 2. ASP.NET MVC<br />Stephen Walther<br />Senior Program Manager<br />Microsoft<br />
  3. 3. Overview of this Talk<br />What is ASP.NET MVC?<br />Build a Contact Manager Application<br />
  4. 4. What is ASP.NET MVC?<br />Microsoft’s Newest Framework for Building Web Applications<br />ASP.NET MVC 1.0 Released During MIX (about two months ago)<br />
  5. 5. What is ASP.NET MVC?<br />ASP.NET <br />Web Forms<br />ASP.NET MVC<br />ASP.NET<br />AJAX<br />ASP.NET<br />Dynamic Data<br />ASP.NET Framework<br />.NET Framework<br />
  6. 6. What is ASP.NET MVC?<br />Model<br />Business and Data Access Logic<br />View<br />View logic<br />Controller<br />Application flow logic<br />
  7. 7. What is ASP.NET MVC?<br /> Invented in 1978 for Smalltalk by Trygve Reenskaug <br />
  8. 8. What is ASP.NET MVC?<br />Used by lots of frameworks including<br />Struts<br />Tapestry<br />Spring<br />Ruby on Rails<br />Merb<br />Monorail<br />Django<br />
  9. 9. What is ASP.NET MVC?<br /> Enables you to build applications that are resilient to change:<br />Build Loosely Coupled Applications<br />Build Testable Applications<br />
  10. 10. Build a Contact Manager Application<br />Walkthrough #1 <br />Build Create, Read, Update, Delete actions<br />
  11. 11. Build a Contact Manager Application<br />Walkthrough #2<br />Use the default model binder<br />
  12. 12. Build a Contact Manager Application<br />Walkthrough #3<br />Add simple validation<br />
  13. 13. Build a Contact Manager Application<br />Walkthrough #4<br />Refactor using software design patterns<br />
  14. 14. Software Design Patterns<br />Controller Layer<br />Application flow control<br />Service Layer<br />Business logic (validation logic)<br />Repository Layer<br />Data access logic<br />
  15. 15. Build a Contact Manager Application<br />Walkthrough #5<br />Create unit tests<br />
  16. 16. Test-Driven Development<br /> Test-Driven Development is a software design methodology:<br />Red – Create a failing test<br />Green – Write just enough code to pass the test<br />Refactor – Improve the design of your code<br />
  17. 17. Test-Driven Development<br />Benefits:<br />Keeps you focused on the right task:<br />YAGNI (You Ain’tGonna Need It) <br />KISS (Keep It Simple Stupid)<br />Continuous Feedback<br />Take short steps and get continuous feedback that you are on the right path.<br />Incremental Design<br />Design becomes part of the development process instead of something done by an architect<br />
  18. 18. Build a Contact Manager Application<br />Walkthrough #6<br />Add Ajax<br />
  19. 19. Summary<br /> ASP.NET MVC enables you to build loosely-coupled, highly-testable web applications that can be easily modified over time.<br />
  20. 20. Resources<br /> -- The official Microsoft website for all things ASP.NET MVC<br /> – My blog on ASP.NET MVC<br /> – Phil Haack is the Program Manager for ASP.NET MVC <br />
  21. 21. Table Format<br />
  22. 22. આભાર<br />ধন্যবাদ<br />நன்றி<br />धन्यवाद<br />ಧನ್ಯವಾದಗಳು<br />ధన్యవాదాలు<br />ଧନ୍ୟବାଦ<br />ਧੰਨਵਾਦ<br />നിങ്ങള്‍‌ക്ക് നന്ദി<br />
  23. 23. question & answer<br />
  24. 24. Related Content<br />Breakout Sessions (session codes and titles)<br />Interactive Theater Sessions (session codes and titles)<br />Hands-on Labs (session codes and titles)<br />Hands-on Labs (session codes and titles)<br />Required Slide<br />Speakers, <br />please list the Breakout Sessions, TLC Interactive Theaters and Labs that are related to your session.<br />
  25. 25. Track Resources<br />Resource 1<br />Resource 2<br />Resource 3<br />Resource 4<br />Required Slide<br />Track PMs will supply the content for this slide, which will be inserted during the final scrub.<br />
  26. 26. Required Slide<br />© 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.<br />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.<br />