(22.04.2009) Cumuy Presenta - Novedades en la plataforma de desarrollo .NET - PPT Machado

396 views
345 views

Published on

(22.04.2009) Cumuy Presenta - Novedades en la plataforma de desarrollo .NET - PPT Machado

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
396
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

(22.04.2009) Cumuy Presenta - Novedades en la plataforma de desarrollo .NET - PPT Machado

  1. 1. Entorno de Visual Studio Usar primero, declarar Editor basado en WPF después Soporte para múltiples Generación de código a monitores mejorado partir del uso MEF & CaaS Code insight Navegación Call hierarchy Quick Search Inline call tree Highlight References Capas Sistema de proyectos Código con formato rico Compatible 100% con el Capas de información código fuente contextual Múltiples plataformas objetivo Mapa del documento en el margen Desarrollo web mejorado Herramientas de JavaScript mejoradas Snippets HTML Nuevas herramientas MVC and Dynamic Data Desarrollo web integrado Desarrollo de C++ nativo Experiencia del IDE mejorada Soporte para computación paralela Apariencia de MFC actualizada Mejoras en ClickOnce para Office Desarrollo en SharePoint mejorado
  2. 2. Más soporte a la plataforma Depuración en 64-bits en modo mixto Soporte a la depuración de minidumps en modo mixto y manejado Visualizador de WPF Mejoras en los breakpoints Grupos y etiquetas Importar/exportar Depuración histórica Grabar y reproducir la ejecución de una aplicación Proyectos y procesos Calidad y testeo Gestión de proyecto Estructura visual y Servidor de proyecto comportamiento en Integración con el cliente modelos UML y DSL Herramientas de planificación Eliminación del problema “a de proyectos livianas mi no me pasa” Trazabilidad de los Herramientas de calidad T- requerimientos SQL Informes Mejoras en el testeo Tableros de control Priorización de tests individualizados Test manual Proceso configurable Test funcional Más amplia variedad de Gestión de casos de prueba ejemplos de Microsoft y de la comunidad Camano
  3. 3. C# 4.0 VB X Es a C# 4.0 lo que LINQ fue a C# 3.0 o Generics fue a C# 2.0 Named/Optional Parameters Named/Optional Parameters Tipos dinámicos Dynamic Scoping Dynamic Scoping Estructura y comportamiento desconocidos en Statement Lambdas Statement Lambdas tiempo de compilación Multiline Lambdas Multiline Lambdas Búsqueda dinámica Auto-Implemented Properties Auto-Implemented Properties Resuelta en tiempo de ejecución Collection Initializers Collection Initializers Falla en tiempo de ejecución Generic Variance Generic Variance Parámetros con nombre y opcionales Extension Properties Extension Properties ¿Recuerdan la transparencia anterior? Algo bueno nos trajimos  Nuevo tipo de datos dynamic Objetos COM dynamic d = GetDynamicObject(…); Llamado dinámico a métodos A través de IDispatch d.MethodCall(…); Objetos dinámicos Propiedades y propiedades indexadas dinámicas A través de IDynamicObject d.Property = d.AnotherProperty; d[“one”] = d[“two”]; Otros objetos Operadores dinámicos Usando Reflection int i = d + 3; Invocación como delegados Cómo funciona string s = d(5,7); // Ivk as delegate dynamic d1 = new Foo(); Conversión de y hacia object dynamic d2 = new Bar(); dynamic d = 7; // implicit conversion string s; int i = d; // assignment conversion d1.MethodCall(s, d2, 3, null); Invocación dinámica en objetos dinámicos dynamic d1 = new Foo(); dynamic d2 = new Bar(); string s; d1.MethodCall(s, d2, 3, null); Invocación dinámica en objetos comunes Foo f = new Foo(); dynamic d = new Bar(); var result = foo.OverloadedMethod(d);
  4. 4. ¡Al fin!  Parámetros opcionales tienen un valor predeterminado public void M(int x, int y = 5, int z = 7); M(1, 2, 3); // el de siempre M(1, 2); // omitiendo z ídem M(1, 2, 7) M(1); // omitiendo y and z ídem M(1, 5, 7) Parámetros pasados por nombre M(1, z: 3); // Pasando z por nombre M(x: 1, z: 3); // Pasando x y z por nombre M(z: 3, x: 1); // Cambiando el orden string[] sa = new string[10]; string[] sa = new string[10]; object[] oa = sa; object[] oa = sa; oa[0] = "Hello world!“; oa[0] = "Hello world!“; oa[1] = 5; oa[1] = 5; IEnumerable<string> sl = IEnumerable<string> sl = new List<string>(); new List<string>(); IEnumerable<object> = ol; IEnumerable<object> = ol; ol = sl; ol = sl;
  5. 5. IEnumerable<T> IEnumerable<out T> { { IEnumerator<T> GetEnumerator(); IEnumerator<T> GetEnumerator(); } } IEnumerator<T> IEnumerator<out T> { { bool MoveNext(); bool MoveNext(); T Current { get; } T Current { get; } } } IComparer<T> IComparer<in T> { { int Compare(T x, T, y); int Compare(T x, T, y); } } Descargar las máquinas virtuales de VS 2010 Incluyen Team System Explorar las nuevas características del IDE Es una beta Explorar las nuevas características del lenguaje

×