Transcript Designing and Developing JSP Pages Using Custom Tags
Introduction to ASP.NET MVC
ASP.NET MVC Development
The case for ASP.NET MVC Tooling up 2
The Case for ASP.NET MVC
What is ASP.NET MVC?
ASP.NET Web Forms – issues Web development – state of play ASP.NET MVC architecture ASP.NET MVC benefits ASP.NET Web Forms or MVC?
What is ASP.NET MVC?
ASP.NET MVC is a web development platform from Microsoft • A significant evolution for web developers using the Microsoft platform ASP.NET MVC emphasises the best of the ASP.NET platform and agile development: • Clean architecture • • Design patterns Testability 4
ASP.NET Web Forms – Issues
Traditional ASP.NET Web Forms were a great step forward when they first emerged • • Much better than classic Active Server Pages (ASP) Simple, especially for relatively small applications However, there are some significant issues with ASP.NET Web Forms • • • • • ViewState transmission can be onerous The ASP.NET page life cycle is complicated and subtle The ASP.NET code-behind model encourages developers to mix presentation logic and application logic Web Forms attempt to encapsulate the intricacies of HTML and HTTP, but this can sometimes be an obstacle It's difficult to automate unit testing for ASP.NET Web Forms 5
Web Development – State of Play
Key features of Web development today: • • • Ajax Web standards REST (Representational State Transfer) • Agile and test-driven development 6
ASP.NET MVC Architecture
HTTP Request Response HTML View View data Controller Model The controller is probably the most interesting player • • • Processes user input Works with the model to handle the request Manages application logic E.g. navigating a multi-step process, authentication, etc.
Prepares the data to be displayed This is known as "view data" in ASP.NET MVC 7
ASP.NET MVC Benefits
ASP.NET Web Forms or MVC?
ASP.NET Web Forms is still appropriate for: • • • • • Small Web applications MVC would be overkill Simple Intranet-style Web applications Fast networks, so you don't care about ViewState transmission overheads Quick-to-market apps Maybe you don't really care about unit testing or long-term maintenance Web apps where you have a lot of corporate data Where you just want to display the data in data grids Scenarios where the drag-and-drop simplicity of Web Forms outweighs its weaknesses A word about migration… • • You can mix ASP.NET WebForms and MVC in the same Web app Allows you to migrate WebForms to MVC piecemeal, if you want to 9
Core development tools MVC4 Downloading and installing MVC 4 10
Core Development Tools
The following tools include ASP.NET MVC by default: • • Visual Studio 2010 (any edition) Visual Web Developer 2010 Express (free) The following tools don't include ASP.NET MVC by default (you must download ASP.NET MVC separately from http://www.asp.net/mvc/ ) • • Visual Studio 2008 with SP1 (any edition) Visual Web Developer 2008 Express with SP1 (free) 11
Downloading and Installing MVC 4
Download available from MVC 4 home page • http://www.asp.net/mvc/mvc4 We'll install via installer executable • C:\AspNetMvc4\Products\AspNetMVC4ToolsUpdateSetup.exe
Effect: • • Adds new ASP.NET MVC 4 project templates Extends existing APIs, adds new APIs 13
The case for ASP.NET MVC Tooling up 14