2011-04-05 19 views
5

Me gusta mucho la característica de tener un diagrama de dependencia y evitar que ciertos ensambles tengan referencias a otros ensamblajes, asegurando que otros desarrolladores sigan buenas prácticas de programación.Diagrama de Capa Ultimate de Visual Studio 2010 - ¿Equivalente de Código Abierto?

¿Existe una fuente abierta equívoca de Visual Studio 2010 Ultimates Dependency Diagram? Revisé NDepend, sin embargo, esto es para uso comercial, así que no puedo usar la versión gratuita.

Editar: Tal vez me estoy refiriendo al diagrama de capas? Cualquiera que sea el diagrama que se puede usar para asegurar que ciertos ensambles no tengan referencias a otros ensambles

I.E.

Business assembly 
Data assembly 
Data.EntityFramework assembly 

Data.EntityFramework implementa las interfaces desde el conjunto de datos. El ensamblado Business solo tiene una referencia al ensamblado de datos y tiene una instancia de Data.EntityFramework a través de Unity u otro contenedor IoC.

sólo tengo Visual Studio 2010 Professional :(

Respuesta

3

no he encontrado nada que es un equivalente total de los diagramas de capa en VS 2010.

ConQAT le dejará a visualizar y analizar la conformidad de arquitectura, pero no hará cumplir las reglas en tiempo de compilación, como pueden hacerlo los diagramas de capas. Además, ConQAT no parece funcionar con las soluciones de VS 2010, lo cual es una lástima porque parece que podría ser una herramienta muy útil. Admite soluciones de VS 2008

Gendarme es la combinación más cercana a w que quieras, creo. Esta es una herramienta basada en reglas del equipo Mono, y puede ser integrated en el IDE o en su servidor de compilación. Por lo tanto, lo ayudará a identificar y aplicar buenas prácticas de programación, pero no generará ningún diagrama para usted.

Fuera de la caja, Gendarme viene con muchas reglas para detectar malas prácticas (métodos largos, falta de cohesión, árboles de herencia profunda, etc.). Tendría que escribir sus propias reglas personalizadas para aplicar sus restricciones arquitectónicas específicas, en su caso al recorrer los conjuntos y verificar las referencias.

Las reglas están escritas en C# - aquí hay un example.

Cuestiones relacionadas