V minulém postu jsem nastínil způsob, jak lze kontrolovat zakázané závislosti mezi třídami v aplikaci. Trochu jsem si zaexperimentoval a vytvořil knihovnu StructureAssertions a NuGet balíček, který si můžete nainstalovat do testovacího projektu a jednoduše závislosti otestovat.
Jak uhlídat závislosti ve velké aplikaci
UPDATE: Knihovnu pro testování závislostí si nyní můžete nainstalovat jako NuGet balíček. Více v následujícím postu.
U každé větší softwarové aplikace hrozí, že kód začne časem degradovat. Jedním z typů degradace jsou závislosti, které porušují původní architektonický návrh. Modelový příklad: v ASP.NET MVC aplikaci platí, že model nesmí referencovat žádný controller. Jak ale takové pravidlo vynutit, když jsou modely i controllery v jednom Visual Studio Projectu?