Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Rodolfo Finochietti
El desarrollo de software hoy
• Complejo
• Los clientes demandan aplicaciones “modernas”
• Estilo “Facebook”
• Multi-dispositivo
• Equipos de desarrollo distribuidos
• Metodologías agiles
Tendencias
Touch Connected Consumerization of IT
CloudSocial
Problemáticas para el desarrollador (programador )
UsabilidadSimplificación
Reducción
Mejoras en el IDE
• Code access• IntelliSence• Testing
Visual Studio 21012 IDE Features
Demo
Tipos deaplicacionesWindows
Desktop Applications
GraphicsIntensive
WindowsDrivers
WindowsStore Apps
Aplicaciones Windows Store
Creando Windows Store Apps
Demo
Haciendo llamadas asincrónicas fácilmente• Mejorar la respuesta y escalabilidad de las aplicaciones• Nuevas palabras clave “async” y “await”• Se puede usar await en casi cualquier código• Permite escribir código asincrónico que se lee como código sincrónico
Task<string> Op123Async(string s) { var tcs = new TaskCompletionSource<string>(); var state = 0; Action resume = delegate { switch (state) { case 0: Task<string> t1 = Op1Async(s); state = 1; t1.ContinueWith(resume); break; case 1: Task<string> t2 = Op2Async(t1.Result);...}
async Task<string> Op123Async(string s) { string s1 = await Op1Async(s); string s2 = await Op2Async(s1); string s3 = await Op3Async(s2); return s3;}
Modelo de programación asincrónico
Demo
Nuevas herramientas para HTML y JavaScript
Mejoras en el IDE para HTML y CSS
Mejor IntelliSense
Nuevas herramientas para HTML y JavaScript
DOM Explorer
JavaScript console
Page Inspector
ASP.NET MVC 4• Nuevo template de proyecto• Soporte para aplicaciones web móviles• Async controllers• Web API
Nuevo Template de Proyecto• HTML5 por defecto• Diseño responsivo (vía media queries)• Usa jQueryUI para el login• Incluye KnockOutJS
Soporte para sitio móviles• Nuevo template de proyecto para sitios web solo
móviles• Display modes
Views/index.cshtml Views/index.mobile.cshtml
• Inclusión de jQuery Mobile• View Switcher y Browser Overriding
Async Controllers basados en TPL• Async Controllers de un solo método• No mas handling manual de requests• Devuelve Task<ActionResult>
Web API• Usa la sintaxis de WCF• Devuelve JSON o XML• Extensible
Web Development
Demo
[email protected]@rodolfofhtttp://shockbyte.net