24/10/2009 18:44
El Bruno
[VSTS2010] HowTo: Identificar referencias circulares utilizando el Architecture Explorer

Buenas,
hace unos días comentaba en Bilbao sobre lo potente e interesante que es el Architecture Explorer, esta nueva herramienta incluida dentro de Visual Studio 2010. Entre las muchas cosas que podemos hacer con la misma, tenemos la capacidad de generar grafos que representes las relaciones de los elementos de nuestras soluciones y a partir de los mismos aplicar reglas para validar la integridad de las mismas, por ejemplo buscando referencias circulares.
El siguiente tutorial demuestra como crear un gráfico a partir de un código muy malo y como analizar el mismo en busca de referencias circulares.
Tutorial
1. Para esta pequeña demo crearemos un proyecto del tipo Class Library en VB.Net y en el archivo Class1.vb reemplazaremos el contenido por el siguiente código que posee una referencia circular entre 4 clases.
Public Class Class1
Public Function DoSomething() As String
Return New Class2().DoSomething
End Function
End Class
Public Class Class2
Public Function DoSomething() As String
Return New Class3().DoSomething
End Function
End Class
Public Class Class3
Public Function DoSomething() As String
Return New Class4().DoSomething
End Function
End Class
Public Class Class4
Public Function DoSomething() As String
Return New Class1().DoSomething
End Function
End Class
2. Una vez que tenemos el proyecto, el mismo compila correctamente (y esto nos recuerda que compilar no lo es todo !!!)
3. Seleccionamos el menú View // Architecture Explorer y seleccionamos las opciones como muestra la siguiente imagen. En la misma hemos partido seleccionando la opción Class View hasta llegar el nivel de función [DoSomething]
4. Sobre el gráfico desplegamos el menu contextual y seleccionamos la opción Analyzers // Circular References.
5. En este momento podremos ver como aparecen 4 avisos indicando una referencia circular en el código de nuestra solución.
6. Y lo mejor es que desde el mismo gráfico podemos ver el flujo “circular” entre las llamadas de las 4 clases.
Una vez más, una potente herramienta que nos ayudará a trabajar un poco más organizados.
Saludos @ Home
El Bruno
Archivado en: Visual Studio Team System,VSTS,Visual Studio 2010
Comparte este post: