Está en la página 1de 33

Visual Studio 2010 .NET 4.

0 y
ALM
Actualzate desde la versin 2008

Bruno Capuano
VISUAL STUDIO 2010 .NET 4.0 Y ALM - ACTUALZATE DESDE LA
VERSIN 2008

No est permitida la reproduccin total o parcial de este libro, ni su tratamiento informtico, ni la


transmisin de ninguna forma o por cualquier medio, ya sea electrnico, mecnico, por fotocopia,
por registro u otros mtodos, sin el permiso previo y por escrito de los titulares del Copyright.
Dirjase a CEDRO (Centro Espaol de Derechos Reprogrficos, www.cedro.org) si necesita
fotocopiar o escanear algn fragmento de esta obra.

DERECHOS RESERVADOS 2010, respecto a la primera edicin en espaol, por

Krasis Consulting, S. L.
www.Krasis.com

ISBN: 978-84-936696-4-5
Depsito Legal: M-13975-2010

Impreso en Espaa-Printed in Spain


Prlogo
Todo mi agradecimiento y gratitud a Bruno. Es para m un privilegio tenerlo como
amigo y consejero de un producto que desde hace ms de tres aos es parte importante
de mi vida. Seguro que vas a disfrutar descubriendo todas las novedades de Visual
Studio 2010 que son muchas y variadas. Es un placer contar con colegas que
pongan tanta pasin para que los dems tengan un comienzo menos duro con cada
versin. Por todo esto, ms su blog, su correr pa n, su pasin por el cdigo, etc...
GRACIAS.

Antonio Gmez
Product Manager Visual Studio - Expression Divisin de Desarrolladores y
Plataforma (DPE - Developer & Platform Evangelism) en Microsoft

Sin duda es difcil apasionarse con una herramienta de desarrollo. Pero cuando
sta es Visual Studio, y quien transmite esa pasin es Bruno, la cosa cambia. Sobre el
libro, qu puedo decir: nadie mejor que un apasionado con conocimientos
extraordinarios para conseguir que todos aprendamos a exprimir la herramienta con
la que pasamos gran parte del da. Es un placer compartir eventos tcnicos con Bruno,
es un placer leer su libro. Te puedo garantizar que uno no deja de sorprenderse con
las posibilidades de Visual Studio.

Rodrigo Corral Gonzlez


Software Architect - MVP Team System

Son ya muchas las charlas sobre Visual Studio, primero Team System, y ahora
ALM, compartidas con Bruno y con Rodrigo, Ahora, con Visual Studio 2010, mi amigo
Bruno lanza este libro que a buen seguro se convertir pronto en una gran referencia
de la herramienta. Ser lectura recomendada en todas nuestras charlas."

Luis Fraile
INETA Speaker - MVP Team System
Agradecimientos
No puedo dejar de agradecer a todas las personas que me han apoyado para que
escriba este libro. Las voy a ordenar por un criterio personal que es el que se me ha
ocurrido en este momento para que sepan que les doy las gracias:

A mi chica, a Valentino y a Martina; que entre los 3 forman mi familia y han


aguantado noches y noches de un padre distante con la guitarra en la mano y
con un Team Foundation Server 2010 delante del monitor en el tico.
A mi padre y a mi madre, que desde pequeo me compraron todos los libros
que siempre ped, y de esta forma hicieron que leer fuera una de mis pasiones
(adems esto sirve para confirmar que leer mucho no significa que puedas
escribir bien)
A todos aquellos que me ayudaron con revisiones, material, etc.; que no es
trabajo fcil llegar a un screenshot de Visual Basic 1. As que gracias Juan
Carlos Gonzlez, Roberto Loreto, Gerardo Korndorffer, Jose Miguel Torres,
Eduardo del Pozo, Sergio Vzquez y a todos los otros que me ayudaron
tcitamente y que no los tengo en ningn correo.
A Avanade Spain que me permiti ser ms flexible con mis horarios y poder
jugar con Visual Studio 2010 entre proyecto y proyecto.
A Jose Manuel por darme la oportunidad de escribir un libro, y de compartir su
experiencia conmigo durante el camino.
A todos aquellos que alguna vez me dieron un consejo, que me respondieron
un mail, con los que compart un caf o una cerveza y que me ayudaron en los
momentos medio raros en los que no saba por dnde seguir.

Finalmente, adems del sudor y lgrimas, creo que es interesante compartir las
mtricas del trabajo realizado para cerrar este libro.

Cerca de 16 litros de cerveza; principalmente botellines de Heineken de 330cl


tomados por la noche. Esto me sirve de excusa para los posibles errores que
posea el libro.
Ms de 20 litros de mate, solo y compartido en familia.
He visto como se cambiaba la fecha de lanzamiento de Visual Studio 2010 al
12 de Abril, para que coincida con mi cumpleaos el 14 de Abril.
He corrido ms de 149 kilmetros y quemado ms de 13000 caloras.
Me han renovado como MVP de Team System por tercera vez.
He visto cerca de 20 partidos de NBA de madrugada, mientras revisaba todo el
material.
Me he dado un golpazo que me ha costado 8 puntos de sutura en la frente,
mientras escuchaba un podcast de CMMI (reservados los comentarios).
He escrito partes del libro en 6 aeropuertos diferentes.
He sufrido el cambio de nombre de Visual Studio a Visual Studio Ultimate,
gracias amigos de Seattle, tuve que revisar todo el libro.
Ha nacido mi nia Martina el 13 de diciembre del 2009; que se ha sumado a
Valentino con sus 2 aitos, para que mis das sean lo menos productivo
posibles sper happy happy.

vi
Contenido

INTRODUCCIN Y UN POCO DE HISTORIA ................................................ xii

NOVEDADES EN EL IDE .............................................................................................. 1


1.- Novedades en el IDE .................................................................................................................. 1
1.1.- Rincn del Friki: Por qu la Splash Screen no est desarrollada sobre WPF? 3
1.1.1.- Proceso para el control de las animaciones en la Splash Screen ................ 4
1.1.2.- Alpha Blending ......................................................................................................... 5
1.1.3.- Informacin en el Splash Screen .......................................................................... 6
1.2.- Rincn del Friki: Cmo lanzar Visual Studio sin mostrar la Splash Screen? .... 6
2.- IDE Basado en Windows Presentation Foundation ............................................................ 6
2.1.- Tutorial: Agregando video online a nuestro editor de cdigo fuente................ 8
2.2.- Tutorial: Trabajando con los nuevos tipos de seleccin en el IDE ................... 11
3.- La nueva Start Page ................................................................................................................... 14
3.1.- Tutorial: Personalizando la Start Page ...................................................................... 16
4.- Soporte MultiMonitor .............................................................................................................. 19
5.- Soporte para Multi Targeting .................................................................................................. 20
5.1.- Mejoras en la ventana de Agregar Referencias ...................................................... 22
6.- Bsqueda Inteligente ................................................................................................................. 23
7.- Resaltar Referencias .................................................................................................................. 24
8.- Consumir luego declarar ......................................................................................................... 25
8.1.- Tutorial: Utilizacin de Generate From Usage ...................................................... 26
9.- Jerarqua de Llamadas ............................................................................................................... 29
10.- Anlisis de Cdigo .................................................................................................................. 31
11.- IntelliTrace (Depurador Histrico) ................................................................................... 34
11.1.- Configuracin de IntelliTrace ............................................................................. 37
11.2.- Cmo funciona IntelliTrace ................................................................................. 40
11.3.- Abriendo archivos de depuracin de IntelliTrace ......................................... 42
12.- Depuracin en Visual Studio 2010 ..................................................................................... 45
12.1.- Tutorial: Anclar ventanas de Watch en el IDE ............................................... 47
12.2.- Tutorial: Importar y Exportar BreakPoints ..................................................... 48
13.- Otras MEjoras en el IDE ....................................................................................................... 50
13.1.- Intellisense en el editor SQL en Visual Studio ................................................ 50
13.2.- Paneles para la depuracin de mltiples hilos y tareas................................. 52
13.3.- Nuevo Intellisense y soporte para nuevos editores .................................... 54
13.4.- Desarrollando para Sharepoint .......................................................................... 55

NOVEDADES EN LOS LENGUAJES .............................................................................. 59


1.- Evolucin de .Net Framework ............................................................................................... 59
1.1.- Soporte para lenguajes dinmicos ............................................................................. 59
viii Visual Studio 2010 .NET 4.0 y ALM Actualzate desde la versin 2008

1.1.1.- Tutorial: Ejemplo de las ventajas en la utilizacin de dynamic. ................. 62


1.2.- Programacin en Paralelo ............................................................................................ 64
1.2.1.- Tutorial: Ejemplo de programacin con Parallel ........................................... 65
1.3.- Monitorizacin de Aplicaciones ................................................................................. 69
1.3.1.- Tutorial: Monitorizacin de aplicaciones a nivel de dominio de aplicacin . 70
1.4.- Inicializacin tarda de objetos (Lazy Initialization) ............................................... 72
1.4.1.- Tutorial: Creacin de objetos con Lazy<T> .................................................. 72
1.5.- Ejecucin In-Process Side-By-Side ............................................................................. 74
1.6.- Garbage Collector: Background GC ........................................................................ 75
1.7.- Code Contracts ............................................................................................................. 75
1.8.- Interoperabilidad ............................................................................................................ 77
1.8.1.- Tutorial: Trabajando con Excel en Visual Studio 2010 ................................ 78
1.9.- Covarianza y Contravarianza ...................................................................................... 80
1.10.- Colecciones y nuevas estructuras de datos .................................................... 82
1.10.1.- Tutorial: Trabajando con SortedSet<T> ......................................................... 84
1.11.- Gestin de Excepciones ....................................................................................... 86
1.12.- Gestin de Archivos ............................................................................................. 87
1.13.- Mejoras en Isolated Storage ................................................................................ 89
1.14.- Mejoras en el trabajo con hilos (Threads)....................................................... 89
1.15.- Managed Extensibility Framework ..................................................................... 90
1.16.- Otras mejoras en .Net Framework .................................................................. 91
2.- Novedades en C# 4.0 ............................................................................................................... 93
2.1.- Conceptos preliminares ............................................................................................... 93
2.2.- Introduccin .................................................................................................................... 94
2.3.- Soporte para programacin dinmica ....................................................................... 94
2.4.- Parmetros opcionales ................................................................................................. 96
2.5.- Mejoras en el trabajo con componentes COM ..................................................... 99
3.- Novedades en Visual Basic 2010 ......................................................................................... 100
3.1.- Un poco de historia .................................................................................................... 100
3.2.- Propiedades Auto-Implementadas ........................................................................... 101
3.3.- Inicializadores de Colecciones .................................................................................. 103
3.4.- Continuacin de lneas implcita............................................................................... 105
3.5.- Soporte para expresiones Lambda multi lnea ..................................................... 107
3.6.- Soporte para programacin dinmica ..................................................................... 109
3.6.1.- Tutorial: Utilizando objetos dinmicos desde Visual Basic 2010 ............ 110
4.- Novedades en Visual C++ ..................................................................................................... 112
4.1.- Introduccin .................................................................................................................. 112
4.2.- Soporte para MSBuild en proyectos de Visual C++ ........................................... 112
4.2.1.- Tutorial: Convirtiendo proyectos de Visual Studio 2008 a Visual Studio 2010 112
4.3.- Mejoras en el IDE, especialmente en Intellisense ................................................ 113
4.3.1.- Rincn del Friki: Funcionamiento del Intellisense en Visual C++ 2010 114
4.4.- Soporte para Restart Manager ................................................................................. 116
4.5.- Ms velocidad en Link Time Code Generation.................................................... 116
4.6.- Msvelocidad en Profile Guided Optimization ..................................................... 117
4.7.- Otras mejoras en Visual C++ ................................................................................... 117
5.- Nuevo lenguaje: F#.................................................................................................................. 117
5.1.- Introduccin a los lenguajes funcionales ................................................................ 117

viii
Contenido ix

5.2.- Bienvenido F# ............................................................................................................... 120


5.3.- Trabajando con F#....................................................................................................... 121
5.3.1.- Tutorial: Primera aplicacin en F# .................................................................. 129
5.3.2.- Tutorial: Utilizar tipos del CLR en F# ........................................................... 130
5.3.3.- Creando bibliotecas .Net en F# ...................................................................... 131

HERRAMIENTAS DE MODELADO ............................................................................. 137


1.- Herramientas de Modelado .................................................................................................. 137
1.1.- Introduccin .................................................................................................................. 137
1.2.- Diseo basado en Modelos ....................................................................................... 140
1.3.- Herramientas de modelado: Domain-Specific Languages .................................. 141
1.4.- Herramientas para Arquitectos en Visual Studio 2010 ...................................... 145
1.5.- Resumen ......................................................................................................................... 146
2.- Layer Diagram .......................................................................................................................... 147
2.1.- Diseo en capas con Layer Diagram....................................................................... 148
2.1.1.- Tutorial: Crear un diagrama Layer Diagram ................................................ 154
2.2.- Asociaciones mltiples en Layer Diagram ............................................................. 160
2.2.1.- Tutorial: Realizar asociaciones mltiples en Layer Diagram .................... 161
2.3.- Asociaciones con WorkItems en Layer Diagram ................................................ 162
2.3.1.- Tutorial: Realizar asociaciones con WorkItems en Layer Diagram ....... 163
2.4.- Validacin del diseo con Layer Diagram .............................................................. 165
2.4.1.- Tutorial: Validar una solucin con un Layer Diagram ............................... 168
2.4.2.- Tutorial: Cmo verificar la validacin de capas en un Build en TFS2010 ... 170
2.4.3.- Tutorial: Cmo activar la validacin de capas en un Build en TFS2010 ..... 171
2.4.4.- Tutorial: Cmo agregar elementos personalizados en la Toolbox del Layer Diagram. 173
3.- Directed Graph Markup Language (DGML) ..................................................................... 176
3.1.- Introduccin a DGML ................................................................................................. 176
3.1.1.- Tutorial: Mi primer diagrama DGML ............................................................. 179
3.1.2.- Tutorial: Utilizando la ventana de leyenda y seleccin en DGML .......... 181
3.1.3.- Tutorial: Agrupando nodos en DGML .......................................................... 183
3.1.4.- Tutorial: Realizando validaciones en DGML ................................................ 184
3.1.5.- Tutorial: Creando diagramas DGML desde un proyecto ......................... 186
4.- ArchiTecture Explorer ........................................................................................................... 188
4.1.- Introduccin .................................................................................................................. 188
4.2.- Utilizando Architecture Explorer ............................................................................ 189
4.2.1.- Tutorial: Analizar una solucin en vista de Clases ..................................... 193
4.2.2.- Tutorial: Analizar una solucin en vista de Solucin.................................. 194
4.2.3.- Tutorial: Aplicar filtros y disparar acciones entre columnas. .................. 194
4.2.4.- Tutorial: Generar grficos DGML con la informacin de Architecture Explorer 195
4.3.- Consultas en Architecture Explorer: DGQL ....................................................... 197
4.3.1.- Tutorial: Guardar una consulta DGQL ......................................................... 198
5.- Anlisis de Dependencias grficos ....................................................................................... 199
5.1.- Generacin de relaciones entre ensamblados ..................................................... 199
5.2.- Generacin de relaciones entre Namespaces ...................................................... 199
5.3.- Generacin de relaciones entre Clases ................................................................. 200
6.- Diseadores UML .................................................................................................................... 201
6.1.- Introduccin a UML .................................................................................................... 201
6.2.- Diagramas de Casos de Uso ..................................................................................... 204
x Visual Studio 2010 .NET 4.0 y ALM Actualzate desde la versin 2008

6.2.1.- Tutorial: Creando mi primer diagrama de Casos de Uso ........................ 206


6.3.- Diagrama de Actividades ............................................................................................ 208
6.3.1.- Tutorial: Crear un diagrama de actividad y relacionarlo con un caso de uso. . 209
6.4.- Diagrama de Componentes ...................................................................................... 211
6.5.- Diagrama de Clases (UML)........................................................................................ 211
6.5.1.- Tutorial: Generar cdigo a partir de un diagrama de clases UML ......... 213
6.6.- Diagrama de Secuencia ............................................................................................... 216
6.6.1.- Tutorial: Crear un diagrama de secuencia UML a partir de los elementos
de un diagrama de clases UML....................................................................................... 217
6.6.2.- Tutorial: Crear un diagrama de secuencia UML a partir de cdigo. ...... 218
6.7.- UML Model Explorer .................................................................................................. 220
6.7.1.- Tutorial: Utilizando el panel UML Model Explorer .................................... 221

TEAM FOUNDATION SERVER 2010 Y LA GESTIN DE PROYECTOS.......................... 223


1.- Novedades en TFS 2010 ........................................................................................................ 223
1.1.- Introduccin .................................................................................................................. 223
1.2.- Team Project Collections .......................................................................................... 224
1.2.1.- Tutorial: Cmo detener un Team Project Collection y mostrar un
mensaje personalizado a los usuarios que acceden al mismo. ............................... 226
1.3.- WorkItems Jerrquicos .............................................................................................. 228
1.3.1.- Rincn del Friki: Pequeas grandes mejoras cuando trabajamos con
WorkItem Queries ........................................................................................................... 231
1.3.2.- Tutorial: Trabajando con WorkItems jerrquicos en Visual Studio ...... 233
1.3.3.- Tutorial: Trabajando con WorkItems jerrquicos en Microsoft Project
235
1.4.- Mejoras en la definicin y presentacin de WorkItems .................................... 236
1.5.- Novedades en Source Control ................................................................................ 238
1.5.1.- Rincn del Friki: Cambio en el corazn del Source Control Item Mode vs Slot Mode... 242
1.6.- Integracin con Microsoft Office ............................................................................. 243
1.6.1.- Tutorial: Trabajando con WorkItems jerrquicos en Excel ................... 246
2.- Instalacion y despliegue de TFS 2010 ................................................................................. 247
2.1.- Instalacin de Team Foundation Server 2010 ...................................................... 247
2.2.- Administracin de Team Foundation Server 2010 ............................................. 249
2.3.- Team Foundation Server Basic ................................................................................. 250
2.4.- Topologas de instalacin de TFS 2010 .................................................................. 251
3.- TFS Build 2010.......................................................................................................................... 253
3.1.- Introduccin .................................................................................................................. 253
3.2.- Build Controllers y Build Agents ............................................................................. 254
3.2.1.- Rincn del Friki: TFS Build Service con soporte a procesos interactivos ...... 256
3.3.- Procesos de compilacin basados en WF 4.0 ...................................................... 257
3.4.- Propiedades de las definiciones de compilacin .................................................. 260
3.4.1.- Tutorial: Personalizando el formato del nombre de un Build ................. 263
3.5.- Analizando y trabajando con los resultados de las compilaciones .................. 264
3.6.- Test Impact Results ..................................................................................................... 267
3.6.1.- Tutorial: Utilizando Test Impact View ........................................................... 268
3.7.- Gated Check-in ............................................................................................................ 270

x
Contenido xi

3.7.1.- Rincn del Friki: Cmo realizar un CheckIn que no dispare un proceso de
Integracin Continua? ............................................................................................................ 272
4.- Gestionando proyectos con TFS 2010............................................................................... 273
4.1.- Introduccin .................................................................................................................. 273
4.2.- Mejoras en MSF for Agile........................................................................................... 275
4.3.- Mejoras en MSF for CMMI ........................................................................................ 278
4.4.- Conclusin ..................................................................................................................... 282

NOVEDADES EN TESTING EN VISUAL STUDIO 2010 ............................................... 283


1.- Introduccin .............................................................................................................................. 283
2.- Eliminar los escenarios No-Repro .................................................................................. 283
3.- Microsoft Test Manager ......................................................................................................... 285
4.- Coded UI TEsts ........................................................................................................................ 291
4.1.1.- Tutorial: Creacin y lanzamiento de una prueba del tipo Coded UI Test ....... 294
5.- entornos de Pruebas Virtuales: Lab Management ........................................................... 295
6.- Conclusin ................................................................................................................................. 298

EL NUEVO MODELO DE LICENCIAS EN VISUAL STUDIO 2010 .................................. 301


1.- Introduccin .............................................................................................................................. 301
2.- Productos por versin ........................................................................................................... 303

NDICE ANALTICO .......................................................................................... 307


xii Visual Studio 2010 .NET 4.0 y ALM Actualzate desde la versin 2008

Introduccin y un poco de historia

Las personas que nos dedicamos al desarrollo del software hemos visto como las
herramientas han evolucionado durante los ltimos aos. Hoy contamos con entornos
de desarrollo (IDE) muy potentes, que no slo permiten desarrollar aplicaciones, sino
tambin permiten realizar otras tareas como depurar en entornos remotos, gestionar
aplicaciones On the Cloud, verificar el estado de avance de un proyecto, y muchas
otras funcionalidades que hacen que se pueda trabajar en un equipo de desarrollo.
Pero todo esto comenz hace ya bastante tiempo cuando las herramientas
simplemente permitan realizar 2 acciones bsicas para un desarrollador: editar y
compilar; luego tenamos en nuestro escritorio de trabajo, muchos diagramas,
esquemas y bocetos que nos ayudaban a trabajar. Sobre esta base de 3 herramientas han
crecido los IDEs hasta ser lo que conocemos actualmente.
Por ejemplo, hace ya ms de 10 aos, las herramientas con las que trabajaba un
programador estaban orientadas exclusivamente a una funcin. Si necesitabas hacer
aplicaciones Windows podas utilizar Visual Basic 6 y hacer aplicaciones muy
velozmente. Si comenzbamos a pensar en capas y en aplicaciones web, pues nos
tocaba crear componentes COM con Visual Basic, crear pginas ASP con Visual
Interdev y seguramente utilizbamos una base de datos SQL 7 o Access como
repositorio de datos. La gestin del versionado de cdigo fuente la realizbamos con
Visual Source Safe y hasta aqu ya voy contando 4 herramientas diferentes para
trabajar en un proyecto.
Con la llegada de Visual Studio .Net, tuvimos un gran cambio en este aspecto:
tenamos un nico entorno de desarrollo para crear aplicaciones Windows, aplicaciones
Web, aplicaciones para dispositivos mviles; e inclusive desde la interfaz de Visual
Studio podamos realizar otras tareas como acceder a los servicios de Windows,
consultar el visor de eventos, y muchas ms. El principal cambio fu la inclusin del
.Net Framework (en su versin 1.0), una plataforma de desarrollo que nos permita
independizarnos del lenguaje de programacin y poder utilizar el lenguaje que ms se
adapte a nuestros gustos para programar. A partir de este momento, el concepto de
cmo desarrollar aplicaciones cambi radicalmente, pero sin embargo las herramientas
seguan estando enfocadas a las tareas de un desarrollador.
Esto cambio con Visual Studio Team System 2005. En esta Release Microsoft hizo
una apuesta muy fuerte y cambio el concepto clsico de herramientas de desarrollo.
Visual Studio pas a ser un conjunto de diferentes herramientas y las mismas se
clasificaban por perfil, de esta forma exista una versin para programadores, otra para
Testers, otra para arquitectos y una para administradores de base de datos. Obviamente
el IDE segua siendo la herramienta principal y dentro de la misma existan otras

xii
Introduccin y un poco de historia xiii

herramientas que eran compartidas por varios perfiles, pero se introdujo algo que
realmente revolucion la forma de trabajar: Team Foundation Server (TFS).
Team Foundation Server es el servidor de trabajo a travs del cual las personas que
integran un equipo de trabajo pueden colaborar entre s. Y colaborar es algo ms que
compartir informacin; TFS se encarga del versionado de los archivos de cdigo
fuente, de la gestin de la configuracin, se integra con Sharepoint para poder gestionar
la documentacin siempre tan necesaria en un proyecto, e inclusive incorpora un motor
de compilacin para poder automatizar las tareas de compilacin. En realidad TFS
puede llegar a realizar muchas otras tareas, gracias a un modelo de trabajo extensible,
que permite que lo adaptemos a las necesidades puntuales de cada proyecto. Pero la
mejor virtud que posee TFS es que toda la informacin que se recoge en las diferentes
tareas, se almacena en una base de datos de DataWarehouse que luego puede ser
explotada para analizar y cruzar esta informacin, por ejemplo para ver datos clsicos
como la evolucin de la cantidad de errores por Release, u otros ms raros como la
cantidad de errores por horas trabajadas y los problemas que podemos tener por no
tener una buena planificacin de iteraciones.
Visual Studio Team System 2008 es una evolucin de Visual Studio Team System
2005, porque si bien incorpora nuevas funcionalidades como la capacidad de poder
trabajar con integracin continua; los conceptos sobre los que trabaja la herramienta
siguen siendo las mismos.
Aunque ojo!, que durante todo este tiempo tambin ha madurado el .Net
Framework, y despus de 3.5 versiones, ha dejado de ser un Runtime de ejecucin de
aplicaciones, para ser una coleccin de herramientas para el desarrollo de aplicaciones:
ADO.Net, Entity Framework, Silverlight, Windows Communication Foundation,
ASP.Net MVC, etc.; uff no termino ms.

BIENVENIDO VISUAL STUDIO 2010


Y ahora ha llegado Visual Studio 2010, que una vez ms supone un cambio en la
forma en la que desarrollamos software. En este libro doy un recorrido por las mejoras
que existen en .Net Framework 4.0 y en el IDE de Visual Studio 2010, e intento hacer
hincapi en las novedades de esta versin: herramientas de modelado, la gestin de
proyectos, las mejoras en el Build, etc. Pero claro, hay tanto material nuevo en Visual
Studio 2010 que es imposible meter todo es un nico libro, tal vez en el prximo o tal
vez en una versin ms extendida. Pero creo que si quieres conocer las principales
novedades de Visual Studio 2010, estas pginas son un buen punto de partida.
Ahora que he terminado de crear el contenido y reviso esta introduccin, realmente
veo que tratar de escribir sobre Visual Studio 2010 es una tarea titnica. De la mayora
de los temas que comento en los captulos del libro seguramente se escribirn varios
libros, algunos ya estn publicados como ASP.Net 4.0, y otros como Silverlight 4,
Entity Framework 4.0, desarrollo para AZURE, etc.; vern la luz durante el ao 2010.
Como soy una persona prctica, he decidido reemplazar pginas de texto sobre un
tema determinado con tutoriales. Es decir, para cada novedad o elemento que comento
de Visual Studio 2010 + .Net 4.0, intento agregar un pequeo tutorial para demostrar
esa funcionalidad. As es que, entre una cosa y otra, hay ms de 45 tutoriales que te
permitirn, no solo leer sobre lo nuevo de esta versin, sino que adems con un Visual
xiv Actualzate desde la versin 2008

Studio a mano, poder probarlo en pocos pasos. Tambin he agregado muchas


referencias a material externo en cada seccin, que va desde un artculo de gestin de
excepciones en C++ del ao 2002 (fundamental!), hasta la documentacin en lnea de
MSDN que todava est por cerrarse para .Net 4.0 y Visual Studio 2010.
Finalmente, en algunas secciones especiales he creado un [Rincn del Friki] que
apunta bsicamente a escenarios de bajo nivel, a temas que no se tratan habitualmente
o a pequeos consejos que siempre es til conocer.
1
CAPTULO

Novedades en el IDE

En este captulo daremos un repaso a las novedades que se han incorporado


al entorno de desarrollo de Visual Studio 2010. Desde las novedades estticas
relacionadas con Windows Presentation Foundation y el nuevo modelo de
extensibilidad, hasta algunas de las nuevas herramientas para desarrolladores
que se han incorporado en esta versin.

1.- NOVEDADES EN EL IDE

Para nosotros los desarrolladores o programadores, el entorno de desarrollo


integrado de Visual Studio (IDE: Integrated Development
Environment,http://bit.ly/7Azaog) no ha cambiado mucho en los ltimos aos. La base
del IDE es un rea central de trabajo, una coleccin de mens y barras de herramientas;
y una serie de paneles que es posible anclar (traduccin libre de dock) y agrupar donde
se publican funcionalidades propias de las herramientas internas de Visual Studio.
Por ejemplo la siguiente imagen muestra un pantallazo de Visual InterDev del ao
1999 donde es posible ver que los conceptos de paneles, ventana de propiedades y zona
central de trabajo se mantienen hasta nuestros das.

1
2 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

Figura 1.- IDE de Visual Interdev

La siguiente imagen muestra el IDE de Visual Studio Team Suite 2008 (10 aos
despus), en la misma se ha cargado la solucin completa con el cdigo fuente de
Enterprise Library versin 4.1 (http://bit.ly/7BbAcB). Esta solucin posee 42 proyectos
y en la imagen se est editando el cdigo fuente del gestor de recursos de tipo String. Si
bien es posible notar diferencias, relacionadas con las ventanas de Windows, la base
del IDE sigue siendo la misma.

Figura 2.- IDE de Visual Studio 2008


Novedades en el IDE 3

Cuando desde el men de programas de Windows, accedemos por primera vez al


acceso de Visual Studio 2010 lo primero que llama la atencin es el nuevo logo de
Visual Studio donde se presenta el clsico smbolo de infinito (http://bit.ly/5tuGyt) de
Visual Studio. En esta versin el logo de infinito ha perdido las formas rectas
conectadas entre s y ha pasado a ser una cinta continua con su base en colores azules.
Luego se lanza la ventana de inicio (Splash Screen) y aqu ya vemos que los cambios
son visibles desde el primer momento.

Figura3.-Splash Screen Visual Studio 2010

A continuacin nos encontramos con un entorno de trabajo integrado


completamente diferente al que se nos presentaba desde Visual InterDev hasta Visual
Studio 2008. En realidad los elementos del IDE son los mismos: barras de
herramientas, mens y paneles; pero en la versin 2010 el IDE ha sido completamente
rediseado basado en WPF con lo que las capacidades de extensin y presentacin
aprovechan ahora toda la potencia de Windows Presentation Foundation.

1.1.- Rincn del Friki: Por qu la Splash Screen no est


desarrollada sobre WPF?

Si bien todo Visual Studio 2010 est basado en Windows Presentation Foundation,
la Splash Screen est creada utilizando otras tecnologas. Este cambio ha sido obligado
principalmente por cuestiones de rendimiento, basado en las siguientes premisas:
4 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

La pantalla de inicio debe ser lo ms rpida posible entre el momento que


se lanza la aplicacin y la Splash Screen aparece.

No se busca perder recursos dedicados a la aplicacin en la Splash Screen,


la misma solo debe dar la bienvenida al usuario.

Si se hubiese utilizado Windows Presentation Foundation en la implementacin de


la Splash Screen, hubiese sido necesario que se esperase para que se inicializase el
CLR y el gestor de WPF para poder comenzar a pintar la Splash Screen. Este
funcionamiento no se puede comparar con el rendimiento de aplicaciones directamente
escritas en cdigo nativo C++. Este es el motivo principal por el que se decidi crear la
Splash Screen en C++. Esta seccin est basada en un WebCast de Paul Currington
sobre extensibilidad de Visual Studio, ms informacin en http://bit.ly/5LMrpl.

1.1.1.- Proceso para el control de las animaciones en la


Splash Screen

La Splash Screen en Visual Studio 2010 se desvanece suavemente durante el tiempo


en el que se puede ver la misma antes de lanzar el IDE de Visual Studio. Esta
animacin tarda aproximadamente 200 milisegundos que, segn palabras de un
ingeniero de rendimiento de Microsoft: "es una eternidad y debe ser aprovechado". Es
por esto que durante los 200 milisegundos que tarda la Splash Screen en visualizarse,
se da inicio a todo el proceso de control de interfaz de usuario de Visual Studio 2010
desde un subproceso en segundo plano. En el inicio de la aplicacin, Visual Studio crea
un subproceso dedicado, de baja prioridad, para cargar la imagen de la Splash Screen y
luego aplica el efecto para ocultarlo con el efecto de desvanecimiento en la pantalla.
Una vez que se realiza la intensificacin, el subproceso se pega hasta la ventana
principal est lista para mostrar, momento en el que se destruye la ventana de la Splash
Screen y el subproceso se destruye tranquilamente.

Nota:
Si se ejecuta Visual Studio 2010 en un equipo con un solo ncleo el
subproceso que controla la animacin del Splash Screen no se crea, es el proceso
principal de Visual Studio 2010 el que se encarga de todo el trabajo. En este
caso, no hay animaciones de fundido ni de desvanecimiento, en cambio el
Splash Screen aparece en la pantalla simplemente como una imagen. La
animacin tambin est desactivada en una sesin de escritorio remoto para
ahorrar ancho de banda de la red.
Novedades en el IDE 5

1.1.2.- Alpha Blending

Una caracterstica llamativa de la nueva Splash Screen est en el borde de la parte


inferior de la misma. ste posee una curva que imita el logo de infinito de Visual
Studio, asimismo en la imagen tambin se han redondeado esquinas superiores y se ha
aplicado una suave sombra. Las curvas, sombra y anti-aliasing se obtienen ajustando el
canal Alpha (que define la transparencia) de cada pxel de la imagen original.
Vamos por un poco de cultura general sobre Alpha Blending: el color de un pxel de
la pantalla est determinada por sus valores de componente de color rojo, verde y azul
(RGB, por sus siglas en ingls Red, Green and Blue). Variando los valores de cada
componente o el "canal" se pueden crear millones de colores diferentes. Cuando todos
los canales estn apagados el resultado es un pxel negro, y al contrario cuando todos
los canales estn en su mxima intensidad, se muestra un pxel blanco. La intensidad de
cada canal est representada por un nmero donde cero significa "off" y el valor
mximo es la intensidad mxima posible. As, por ejemplo, a partir de un pxel negro
(todos los canales "off"), aumentando gradualmente el valor del canal rojo mostrar un
pxel gradualmente ms brillante y ms brillante rojo. Normalmente, un nmero de 8
bits (byte) se utiliza para representar la intensidad, por lo que la intensidad mxima est
representada por el nmero 255. Con tres canales, 3 bytes (24 bits) se necesitan para
representar todos los colores posibles. La mayora de los equipos actualmente son de
32 bits, lo que significa que registros internos y memoria trabajar ms eficazmente
cuando se trata de datos que son de 32 bits de longitud (un valor DWORD). Si
utilizamos un valor DWORD para representar cada pxel, con slo 24 bits utilizados
para obtener informacin de color, eso nos dejar 8 bits de "informacin perdida" o
"informacin no utilizada". Esos bits no utilizados en cada pxel son demasiado
seductores para omitirlos. No se tard mucho tiempo antes de que alguien tuviese una
excelente idea: utilizar esos bits de repuesto.
El canal alfa utiliza esos 8 bits para representar el "Blending" para cada pxel -
"PPA: per pxel Alpha". Cuando el pxel est pintado en la pantalla, se determina el
"Blending" para ese pixel a travs del valor alfa. Un valor alfa de cero indica un pxel
completamente transparente - que no contribuye en absoluto a la imagen final. Un pxel
totalmente opaco - uno que pinta completamente cualquier pxel subyacente - est
representado por el mximo valor alfa de 255. Valores de alfa entre 0 y 255 representan
contribuciones parciales. Un valor ms alto de alfa significa una contribucin ms
fuerte de los pxeles de la imagen. Ahora, en lugar de simplemente modelo RGB,
tenemos un ARGB (A para Alpha), 32 bits por pxel (32bpp) imagen. Para la imagen
de la Splash Screen de Visual Studio 2010, los bordes curvados y la sombra forman
parte de la imagen original y se aprovechan las capacidades de Alpha Blending para
difuminar la imagen sobre el rea de trabajo. En el caso de los bordes suaves (por
ejemplo con sus sombras), el canal alfa vara de pxel a pxel hasta difuminarse.
Toda la imagen se almacena en formato PNG (Portable Networks Graphics,
http://bit.ly/6z8gdA). El formato PNG tiene compresin sin prdidas y es compatible
con un canal Alpha de 8 bits completo. La imagen es decodificada desde su formato de
archivo PNG y se carga en memoria utilizando GDI +.
6 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

1.1.3.- Informacin en el Splash Screen

Pero esto no es todo, ya que la imagen final, incluye tambin ms informacin: el


texto de la licencia de Visual Studio, el derecho de autor, el usuario que instal el
producto, entre otras. El texto est pintado en la imagen de base que se ha cargado en
memoria utilizando GDI +. Una de las ventajas de utilizar GDI+ es que el mismo
admite la insercin de texto con ClearType suavizado en la imagen. De esta forma
tambin es posible dar soporte para mltiples culturas en el Splash Screen de Visual
Studio

Nota:
Durante la instalacin de Visual Studio, se genera la imagen de la Splash
Screen final creando la imagen de base con texto localizado, utilizando GDI +. La
imagen se guarda como un archivo PNG almacenado como datos de programa en
el equipo del usuario

1.2.- Rincn del Friki: Cmo lanzar Visual Studio sin


mostrar la Splash Screen?

En Visual Studio 2010 se ha respetado un parmetro que se aplica al ejecutable de


Visual Studio que se viene utilizando desde hace bastantes versiones [/nosplash]. Este
parmetro indica a Visual Studio que se lance sin mostrar la Splash Screen.

2.- IDE BASADO EN WINDOWS PRESENTATION


FOUNDATION

Ms all de una cuestin esttica, la decisin de montar el IDE de Visual Studio


sobre Windows Presentation Foundation viene dada por una cuestin de fondo:
mejorar la experiencia del usuario; en este caso de los diferentes perfiles que
intervienen en el proceso de desarrollo. Una buena experiencia de usuario implica una
mayor productividad, ms efectividad y aumento de beneficios.
Por ejemplo, en los editores de cdigo, el texto que se visualiza en los editores
presenta una fuente y un tamao determinado. Habitualmente cuando queremos
cambiar el tamao del texto en Visual es necesario acceder al men [Tools // Options //
Environment // Fonts and Colors] y desde all cambiar el tamao del texto. La
siguiente imagen muestra un ejemplo con el tamao del texto en 8 pixeles y 72 pixeles
en Visual Studio 2008.
Novedades en el IDE 7

Figura 4.- Cambio de tamao en Visual Studio 2008

En Visual Studio 2010 ya tenemos la capacidad de poder configurar el Zoom


dinmicamente con lo que para cambiar el tamao del texto que vemos en un editor,
solo debemos presionar CTRL+ y con el botn central del mouse (la ruedita) podremos
cambiar la visualizacin completa de nuestro editor. Pero esto tiene otras ventajas, al
ser un dibujado vectorial el que presenta Windows Presentation Foundation, si
aumentamos el nivel de Zoom a un 400% la calidad del texto que visualizamos no se
degradar. Obviamente que hacer un zoom tan grande sobre texto no tiene sentido,
pero en captulos posteriores veremos cmo las nuevas capacidades grficas han
permitido que existan nuevos diseadores grficos y que el nivel de detalle que se
visualice en los editores puede estar de acuerdo con el nivel de zoom con el que se est
trabajando.

Figura 5.- Cambio de Zoom en Visual Studio 2010

Adems podemos seleccionar texto no solo en modo text, es decir lnea a lnea, sino
tambin en modo seleccin abierta (Box Mode). Esto permite que dentro del editor de
cdigo sea posible seleccionar una seccin irregular y trabajar con la misma: por
8 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

ejemplo copiar el contenido al portapapeles o insertar texto en el mismo. En el nuevo


IDE se han agregado nuevas caractersticas sobre estas funcionalidades:

La capacidad de seleccionar una lnea de longitud cero.

La capacidad de editar mltiples lneas al mismo tiempo.

Estas funcionalidades se conocen como [Box Selection] y [Multi-Edit].

2.1.- Tutorial: Agregando video online a nuestro editor de


cdigo fuente

El siguiente tutorial demuestra como agregar una ventana de video de Channel 9 al


editor de cdigo de Visual Studio en la seccin superior del editor, utilizando un
elemento del tipo MediaElement (http://bit.ly/8maMGs) de Windows Presentation
Foundation.
Para este ejemplo se requiere instalar el SDK de Visual Studio 2010, actualmente se
puede descargar desde: http://bit.ly/8CduLT.

1. Abrir Visual Studio 2010.

2. Crear un nuevo proyecto a travs de las opciones de men [File / New /


Project]

3. En la lista de plantillas seleccionar [Installed Templates / Visual C# /


Extensibility / Editor Margin]

4. Definir el nombre del proyecto y la ubicacin del mismo. En este caso


llamaremos al proyecto [VS2010BookEditorMargin]

Figura 6.- Agregar nuevo proyecto


Novedades en el IDE 9

5. En el proyecto de extensibilidad podremos ver que el proyecto posee 2


clases principales: GreenMargin.cs y MarginFactory.cs.

Figura 7.- Estructura de Proyecto

6. Renombrar la clase GreenMargin por C9VideoMargin.

7. Modificar el cdigo como en el siguiente ejemplo.


/// <summary>
/// A class detailing the margin's visual definition
/// including both size and content.
/// </summary>
class C9VideoMargin : Canvas, IWpfTextViewMargin
{
// The name of the margin
public const string MarginName = "C9VideoMargin";
// The IWpfTextView that our margin will be attached to.
private IWpfTextView _textView;
// A flag stating whether this margin has been disposed
private bool _isDisposed = false;

/// <summary>
/// Creates a <see cref="C9VideoMargin"/> for a given
/// <see cref="IWpfTextView"/>.
/// </summary>
/// <param name="textView">The <see cref="IWpfTextView"/>
/// to attach the margin to.</param>
public C9VideoMargin(IWpfTextViewtextView)
{
// Set the IWpfTextView
_textView = textView;

// Establish the background of the margin.


this.Height = 240;
this.ClipToBounds = true;
this.Background = new SolidColorBrush(Colors.Orange);
10 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

// add media element


MediaElement videoChannel9 = new MediaElement()
{
Source = new Uri
("http://mschnlnine.vo.llnwd.net/d1/ch9/1/8/3/0/5/4/VSTS08_ch9.wmv")
};
this.Children.Add(videoChannel9);
}
}

CheckPoint:El constructor de la clase es el encargado de decorar a la ventana de


edicin de cdigo con un nuevo visor de videos (basado en un MediaElement) y luego
asociar al mismo la ruta de un video de Channel 9. En este caso un video de casi 20
minutos donde hago un recorrido por VSTS: Un paseo por Visual Studio Team System
2008.

8. Una vez agregado el decorador que en el margen del editor de cdigo


agregar el visor de video, es necesario modificar la clase MarginFactory
para que agregue el decorador en la seccin superior. El siguiente cdigo
muestra un ejemplo de la versin original modificada. En la lnea 10 es
posible ver como se define que el contenedor estar en la zona superior y
tambin el color de fondo en naranja.
#region VS2010BookEditorMargin Factory
/// <summary>
/// Export a <see cref="IWpfTextViewMarginProvider"/>, which
/// returns an instance of the margin for the editor
/// to use.
/// </summary>
[Export(typeof(IWpfTextViewMarginProvider))]
[Name("C9VideoViewerBar")]
//Ensure that the margin occurs below the horizontal scrollbar
[Order(After = PredefinedMarginNames.HorizontalScrollBar)]
//Set the container to the bottom of the editor window
[MarginContainer(PredefinedMarginNames.Top)]
//Do this for all content types
[ContentType("text")]
[TextViewRole(PredefinedTextViewRoles.Interactive)]
internal sealed class MarginFactory : IWpfTextViewMarginProvider
{
public IWpfTextViewMargin
CreateMargin(IWpfTextViewHosttextViewHost,
IWpfTextViewMargincontainerMargin)
{
return new C9VideoMargin(textViewHost.TextView);
}
}
#endregion

9. Compilamos el proyecto para validar que no existan errores.

10. Una vez compilado el ejemplo, si se ejecuta el proyecto es posible ver


cmo se levanta una nueva instancia de Visual Studio llamada entorno
Novedades en el IDE 11

experimental (Visual Studio Experimental Hive). Esta nueva instancia


permite probar las extensiones y complementos que se crean para Visual
Studio en un entorno diferente, y de esta forma no modificar el
comportamiento de la instancia con la que estamos trabajando.

11. Utilizando la instancia experimental de pruebas de Visual Studio, crear un


nuevo proyecto del tipo Class Library u otro que permita acceder a un
editor de cdigo.

12. Abrir el editor de cdigo y ser posible ver en el editor de cdigo fuente, en
la seccin superior comienza a pasar automticamente el video de Channel
9 con el fondo naranja que definimos en la clase C9VideoMargin, en la
lnea 31.

Figura 8.- Ejemplo en ejecucin

2.2.- Tutorial: Trabajando con los nuevos tipos de seleccin


en el IDE

El siguiente tutorial demuestra un ejemplo sobre las posibilidades que posee los
tipos de seleccin en los editores de texto en Visual Studio 2010.
12 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

1. Abrir Visual Studio 2010.

2. Crear un nuevo proyecto de tipo Class Library en C#.

3. Renombrar la clase [Class1.cs] por [BoxSelectionAndMultiEdit.cs]

4. Modificar el cdigo de la clase [BoxSelectionAndMultiEdit] como


demuestra el siguiente ejemplo:
class BoxSelectionAndMultiEdit
{
public readonly string Nombre;
public readonly string Apellido;
public readonly string EMail;
}

CheckPoint: Supongamos que se desea modificar todos los campos para que no
sean de solo lectura, es decir eliminar las sentencias readonly.
5. Posicionando el cursor del mouse sobre el primer readonly y presionando
la tecla ALT, es posible seleccionar en modo Box todas las palabras
readonly, como muestra la siguiente imagen.

Figura 9.- Seleccin en modo Box

6. Presionar la tecla [Delete] y esta accin eliminar el contenido de nuestra


seleccin.

7. El cdigo fuente quedara como en la siguiente imagen:

Figura 10.- Cdigo editado

CheckPoint:Si por ejemplo, a todos los campos definidos se les desea agregar el
prefijo [cliente], es posible realizar esta accin con los siguientes pasos.
Novedades en el IDE 13

8. Posicionar el cursor del mouse al comienzo de la letra N de Nombre y


seleccionar en forma descendente todas las lneas.

9. La seleccin es lo que se conoce como Zero Selection y debe queda como


en la siguiente imagen.

Figura 11.- Seleccin en modo Zero Line

10. A continuacin teclear la palabra cliente y la misma se agregar


automticamente como prefijo de los campos de la clase.

Figura 12.- Edicin de texto multi lnea

CheckPoint: Finalmente si necesitamos agregar un comentario comn para los 3


campos, tambin podemos aprovechar las capacidades de BoxSelection y MultiEdit
para realizar esta tarea.

11. Utilizando la capacidad de seleccin con la tecla ALT, seleccionar una


columna 4 espacios despus de la definicin de los campos.

Figura 13.- Seleccin en modo Box


14 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

12. Con esta seleccin activa, teclear el comentario comn para todos los
campos. Esta accin habilita la opcin de MultiEdit y crea el cdigo comn
para todas las secciones como muestra la siguiente figura

Figura 14.- Insercin de comentarios multi lnea

3.- LA NUEVA START PAGE

Tengo que admitir que nunca fui muy amigo de la pgina de bienvenida de Visual
Studio (Start Page a partir de este momento). Por un lado, me gustaba la idea de tener
un lector de RSS junto al listado de proyectos recientes; pero siempre prefera
configurar Visual Studio para que se inicie con el IDE vaco y yo luego vera que hacer
dentro. Esto lo haca porque usualmente, el proyecto en el que trabajo no apareca en la
lista de los 6 proyectos que muestra la Start Page en Visual Studio 2008, y para ver
contenidos RSS utilizo otras herramientas.

Figura 15.- Start Page en Visual Studio 2008


Novedades en el IDE 15

En Visual Studio 2010 la nueva Start Page incorpora una serie de funcionalidades
que realmente hacen que la misma sea prctica y til para ser utilizada. Lo primero que
debemos agradecer es que si abrimos un proyecto desde la Start Page, una vez cargado
un proyecto, la Start Page se cierra. Esto que parece algo trivial, es una accin que he
visto automatizada en muchos desarrolladores en los ltimos aos: abrir un proyecto
desde la Start Page y a continuacin cerrar la Start Page para comenzar a trabajar.

Figura16.-Start Page en Visual Studio 2010

Como casi todo dentro de Visual Studio 2010, existe la posibilidad de configurar el
comportamiento de acuerdo al gusto del desarrollador, en este caso, esta opcin se
puede modificar directamente desde las opciones que posee la propia Start Page, junto
con la opcin de mostrar la Start Page al iniciar Visual Studio. La siguiente imagen
muestra las opciones de configuracin que se pueden modificar en la Start Page.

Figura 17.- Modificando el comportamiento de la Start Page


16 Visual Studio 2010 .NET 4.0 y ALM - Actualzate desde la versin 2008

Otro detalle interesante, es que se ha organizado la misma para que en la seccin


superior izquierda tengamos a mano las opciones ms corrientes como crear o abrir un
proyecto, e inclusive se ha incorporado la opcin para conectarse a un servidor Team
Foundation Server. Asimismo en el listado de proyectos recientes, es posible eliminar
elementos del listado, o dejar anclados elementos que utilicemos frecuentemente para
que aparezcan dentro de la misma. La siguiente imagen muestra como aparece en la
Start Page, la posibilidad de anclar el proyecto, eliminarlo de la lista, abrir el proyecto
o abrir el directorio donde se encuentra el proyecto.

Figura 18.- Editando elementos en la Start Page

Finalmente la seccin central de la Start Page, posee una serie de pestaas que
presentan una evolucin al lector RSS de la Start Page de Visual Studio 2008, donde es
posible encontrar accesos directos a tutoriales, novedades, etc.; organizados por
categoras.
Y todo esto es posible ya que la Start Page es una pgina WPF; con lo que las
posibilidades de adaptacin y mejora son muy amplias. En otras palabras es posible
modificar al gusto del desarrollador, el proyecto o una organizacin, el
comportamiento y funcionalidades que se desean incluir en la misma en Visual Studio
2010.

3.1.- Tutorial: Personalizando la Start Page

El siguiente tutorial demuestra cmo realizar cambios sobre la Start Page en Visual
Studio 2010 y como desplegar estos cambios para que sean visibles en el IDE de
Visual Studio. Para esto se utiliza un proyecto de ejemplo incluido en el perfil de cada
usuario que tiene los componentes bases de la Start Page que utiliza Visual Studio
2010.

1. Abrir Visual Studio 2010.

2. Abrir el proyecto de ejemplo de la Start Page que posee Visual Studio


2010. Por defecto est en la carpeta Mis Documentos de nuestro perfil de
Windows, por ejemplo en [C:\Users\<user>\Documents\Visual Studio
10\StartPages].

También podría gustarte