Professional Documents
Culture Documents
0 y
ALM
Actualízate desde la versión 2008
Bruno Capuano
VISUAL STUDIO 2010 .NET 4.0 Y ALM - ACTUALÍZATE DESDE LA
VERSIÓN 2008
Krasis Consulting, S. L.
www.Krasis.com
ISBN: 978-84-936696-4-5
Depósito Legal: M-13975-2010
Antonio Gómez
Product Manager Visual Studio - Expression División de Desarrolladores y
Plataforma (DPE - Developer & Platform Evangelism) en Microsoft
“Sin duda es difícil apasionarse con una herramienta de desarrollo. Pero cuando
ésta es Visual Studio, y quien transmite esa pasión 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 día. Es un placer compartir eventos técnicos con Bruno,
es un placer leer su libro. Te puedo garantizar que uno no deja de sorprenderse con
las posibilidades de Visual Studio.”
“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:
Finalmente, además del sudor y lágrimas, creo que es interesante compartir las
métricas del trabajo realizado para cerrar este libro.
vi
Contenido
viii
Contenido ix
x
Contenido xi
3.7.1.- Rincón del Friki: ¿Cómo realizar un CheckIn que no dispare un proceso de
Integración Continua? ............................................................................................................ 272
4.- Gestionando proyectos con TFS 2010............................................................................... 273
4.1.- Introducción .................................................................................................................. 273
4.2.- Mejoras en MSF for Agile........................................................................................... 275
4.3.- Mejoras en MSF for CMMI ........................................................................................ 278
4.4.- Conclusión ..................................................................................................................... 282
Las personas que nos dedicamos al desarrollo del software hemos visto como las
herramientas han evolucionado durante los últimos años. Hoy contamos con entornos
de desarrollo (IDE) muy potentes, que no sólo permiten desarrollar aplicaciones, sino
también 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 permitían realizar 2 acciones básicas para un desarrollador: editar y
compilar; luego teníamos 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 más de 10 años, las herramientas con las que trabajaba un
programador estaban orientadas exclusivamente a una función. Si necesitabas hacer
aplicaciones Windows podías utilizar Visual Basic 6 y hacer aplicaciones muy
velozmente. Si comenzábamos a pensar en capas y en aplicaciones web, pues nos
tocaba crear componentes COM con Visual Basic, crear páginas ASP con Visual
Interdev y seguramente utilizábamos una base de datos SQL 7 o Access como
repositorio de datos. La gestión del versionado de código fuente la realizábamos 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:
teníamos un único entorno de desarrollo para crear aplicaciones Windows, aplicaciones
Web, aplicaciones para dispositivos móviles; e inclusive desde la interfaz de Visual
Studio podíamos realizar otras tareas como acceder a los servicios de Windows,
consultar el visor de eventos, y muchas más. El principal cambio fué la inclusión del
.Net Framework (en su versión 1.0), una plataforma de desarrollo que nos permitía
independizarnos del lenguaje de programación y poder utilizar el lenguaje que más se
adapte a nuestros gustos para programar. A partir de este momento, el concepto de
cómo desarrollar aplicaciones cambió radicalmente, pero sin embargo las herramientas
seguían 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 clásico de herramientas de desarrollo.
Visual Studio pasó a ser un conjunto de diferentes herramientas y las mismas se
clasificaban por perfil, de esta forma existía una versión para programadores, otra para
Testers, otra para arquitectos y una para administradores de base de datos. Obviamente
el IDE seguía siendo la herramienta principal y dentro de la misma existían otras
xii
Introducción 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 través del cual las personas que
integran un equipo de trabajo pueden colaborar entre sí. Y colaborar es algo más que
compartir información; TFS se encarga del versionado de los archivos de código
fuente, de la gestión de la configuración, se integra con Sharepoint para poder gestionar
la documentación siempre tan necesaria en un proyecto, e inclusive incorpora un motor
de compilación para poder automatizar las tareas de compilación. 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 información 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 información, por ejemplo para ver datos clásicos
como la evolución de la cantidad de errores por Release, u otros más “raros” como la
cantidad de errores por horas trabajadas y los problemas que podemos tener por no
tener una buena planificación de iteraciones.
Visual Studio Team System 2008 es una evolución de Visual Studio Team System
2005, porque si bien incorpora nuevas funcionalidades como la capacidad de poder
trabajar con integración continua; los conceptos sobre los que trabaja la herramienta
siguen siendo las mismos.
Aunque ¡ojo!, que durante todo este tiempo también ha madurado el .Net
Framework, y después de 3.5 versiones, ha dejado de ser un Runtime de ejecución de
aplicaciones, para ser una colección de herramientas para el desarrollo de aplicaciones:
ADO.Net, Entity Framework, Silverlight, Windows Communication Foundation,
ASP.Net MVC, etc.; uff no termino más.
Novedades en el IDE
1
2 Visual Studio 2010 .NET 4.0 y ALM - Actualízate desde la versión 2008
La siguiente imagen muestra el IDE de Visual Studio Team Suite 2008 (10 años
después), en la misma se ha cargado la solución completa con el código fuente de
Enterprise Library versión 4.1 (http://bit.ly/7BbAcB). Esta solución posee 42 proyectos
y en la imagen se está editando el código 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.
Si bien todo Visual Studio 2010 está basado en Windows Presentation Foundation,
la Splash Screen está creada utilizando otras tecnologías. Este cambio ha sido obligado
principalmente por cuestiones de rendimiento, basado en las siguientes premisas:
4 Visual Studio 2010 .NET 4.0 y ALM - Actualízate desde la versión 2008
La pantalla de inicio debe ser lo más rápida posible entre el momento que
se lanza la aplicación y la Splash Screen aparece.
Nota:
Si se ejecuta Visual Studio 2010 en un equipo con un solo núcleo el
subproceso que controla la animación 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
animación también está desactivada en una sesión de escritorio remoto para
ahorrar ancho de banda de la red.
Novedades en el IDE 5
Pero esto no es todo, ya que la imagen final, incluye también más información: 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 inserción de texto con ClearType suavizado en la imagen. De esta forma
también es posible dar soporte para múltiples culturas en el Splash Screen de Visual
Studio
Nota:
Durante la instalación 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
Más allá de una cuestión estética, la decisión de montar el IDE de Visual Studio
sobre Windows Presentation Foundation viene dada por una cuestión 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, más efectividad y aumento de beneficios.
Por ejemplo, en los editores de código, el texto que se visualiza en los editores
presenta una fuente y un tamaño determinado. Habitualmente cuando queremos
cambiar el tamaño del texto en Visual es necesario acceder al menú [Tools // Options //
Environment // Fonts and Colors] y desde allí cambiar el tamaño del texto. La
siguiente imagen muestra un ejemplo con el tamaño del texto en 8 pixeles y 72 pixeles
en Visual Studio 2008.
Novedades en el IDE 7
Además podemos seleccionar texto no solo en modo text, es decir línea a línea, sino
también en modo selección abierta (Box Mode). Esto permite que dentro del editor de
código sea posible seleccionar una sección irregular y trabajar con la misma: por
8 Visual Studio 2010 .NET 4.0 y ALM - Actualízate desde la versión 2008
/// <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;
12. Abrir el editor de código y será posible ver en el editor de código fuente, en
la sección superior comienza a pasar automáticamente el video de Channel
9 con el fondo naranja que definimos en la clase C9VideoMargin, en la
línea 31.
El siguiente tutorial demuestra un ejemplo sobre las posibilidades que posee los
tipos de selección en los editores de texto en Visual Studio 2010.
12 Visual Studio 2010 .NET 4.0 y ALM - Actualízate desde la versión 2008
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.
CheckPoint:Si por ejemplo, a todos los campos definidos se les desea agregar el
prefijo [cliente], es posible realizar esta acción con los siguientes pasos.
Novedades en el IDE 13
12. Con esta selección activa, teclear el comentario común para todos los
campos. Esta acción habilita la opción de MultiEdit y crea el código común
para todas las secciones como muestra la siguiente figura
Tengo que admitir que nunca fui muy amigo de la página 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 prefería
configurar Visual Studio para que se inicie con el IDE vacío y yo luego vería que hacer
dentro. Esto lo hacía porque usualmente, el proyecto en el que trabajo no aparecía en la
lista de los 6 proyectos que muestra la Start Page en Visual Studio 2008, y para ver
contenidos RSS utilizo otras herramientas.
En Visual Studio 2010 la nueva Start Page incorpora una serie de funcionalidades
que realmente hacen que la misma sea práctica 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 acción que he
visto automatizada en muchos desarrolladores en los últimos años: abrir un proyecto
desde la Start Page y a continuación cerrar la Start Page para comenzar a trabajar.
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 opción se
puede modificar directamente desde las opciones que posee la propia Start Page, junto
con la opción de mostrar la Start Page al iniciar Visual Studio. La siguiente imagen
muestra las opciones de configuración que se pueden modificar en la Start Page.
Finalmente la sección central de la Start Page, posee una serie de pestañas que
presentan una evolución al lector RSS de la Start Page de Visual Studio 2008, donde es
posible encontrar accesos directos a tutoriales, novedades, etc.; organizados por
categorías.
Y todo esto es posible ya que la Start Page es una página WPF; con lo que las
posibilidades de adaptación y mejora son muy amplias. En otras palabras es posible
modificar al gusto del desarrollador, el proyecto o una organización, el
comportamiento y funcionalidades que se desean incluir en la misma en Visual Studio
2010.
El siguiente tutorial demuestra cómo 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.