Microsoft’s dot net begon ooit als een ontwikkelomgeving die nog te overzien was. Voor het maken van Windows applicaties had je Winforms en voor het maken van web applicaties had je ASP.NET. De gegevens staan in een database, ADO.NET was een prima API om bijna elke database te benaderen. En om met de rest van de wereld te kunnen praten was er XML en webservices. In eerste instantie leek het er op dat het walhalla van applicatieontwikkeling aan was gebroken. Dankzij de vele wizards en designers in Visual Studio kon iedere ontwikkelaar de meest complexe applicaties bouwen.
Maar al heel snel dijde het framework enorm uit. XML-webservices waren in de praktijk onvoldoende om in alle gevallen echt te kunnen communiceren. Met de (veel uigebreidere) WCF kan dat wel. De stormachtige ontwikkelingen in het presenteren van webpagina’s vroegen om nieuwe technieken: entree Ajax, WPF en Silverlight. Om het nog allemaal te kunnen overzien is voor menige ontwikkelaar terecht te veel gevraagd. Tot overmaat van ramp blijken de met veel enthousiasme gebouwde .NET applicaties moeilijk tot helemaal niet aan te passen te zijn aan de groeiende mogelijkheden en wensen.
Vandaag de dag heb je als .NET ontwikkelaar dus twee problemen. In de eerste plaats het overzien van al die nieuwe delen van het framework en weten waar en hoe ze worden gebruikt. In de tweede plaats manieren vinden om de applicaties zo te bouwen dat ze in latere versies aangepast kunnen worden om nieuwe delen ook daadwerkelijk te gaan gebruiken. Een oplossing voor beiden zit in de structuur, beter gezegd de architectuur van je applicatie. Dit is helaas een ondergeschoven kindje geweest in de .NET wereld. Het framework is wel gebaseerd op architecturen, maar die worden niet met name benoemd. Daarnaast gaat alle literatuur, en zeker alle voorbeelden, over de Java wereld. Je moet de nodige vertaalslagen maken om er in de .NET praktijk wat aan te hebben.
Recentelijk verscheen er eindelijk een Microsoft boek over architectuur “Microsoft .NET: Architecting Aplications for the Enterprise”. Geschreven door (oa) Dino Esposito, dezelfde die menigeen zoveel heeft geleerd over het maken van ASP.NET sites en het programeren van XML. In het werk worden de vele delen van het framework geplaatst in de context van hedendaagse ideeën over een goede architectuur. En het staat vol met praktijkvoorbeelden hoe je zelf aan de slag kan.
Naar mijn mening is je verdiepen architectuur dé manier om mee te kunnen blijven komen in de uitdijende wereld van .NET.

