Von
Andreas Aschauer
23. November 2009 10:27
Die Microsoft Web-Entwicklungsplattformen machen es durch ihre zu Grunde liegende Architektur - Trennung von Layout-Logik – einfacher, gut strukturierte Web Anwendungen zu entwickeln. “Sauberer” Code geht meist mit einem höheren Initialaufwand beim Umstieg auf die entsprechende Technologie einher.
Was dabei oft vergessen wird, sind die Zeiten und Aufwände, die investiert werden müssen, wenn Anwendungen mit “Spaghetti-Code”, also schnell zusammengewürfelte Systeme und Module in die Produktion kommen. Die Testphase und Validierung ob überhaupt den Spezifikationen entsprochen wurde bei der Entwicklung, sind meist unnötig lange und aufwendig und belasten bis zu einer Abnahme durch den Auftraggeber das Entwicklungsteam sehr. Weiters sind die Kosten zur Behebung eines Fehlers, der NACH der Entwicklungsphase gefunden wird um ein vielfaches höher und jede Änderung in einer schlecht strukturierten Software ist sehr aufwändig.
Kurzum: Lieber ein höherer Initialaufwand als eine langwierige, teure und strapaziöse Produktivstellung und eine schwere Wartbarkeit.
Die Lösung: Software Design Patterns
Sobald Mario von der PDC zurück ist, wollen wir hier eine Blogreihe starten, die sich mit Design Patterns und ihrer Anwendung in Web Applikationen beschäftigt. Im Vordergrund soll dabei nicht die Theorie stehen, sondern WIE ich ein Pattern einsetzen kann um meine Anwendungen modularer zu machen und WAS genau die Vorteile sind.
Den Start der Reihe machen wir mit einer Einführung in Dependency Injection / Inversion of Control . Eine Technik die es ermöglicht lose gekoppelte Module zu entwickeln, die leicht ausgetauscht werden können. Falls jetzt noch bei einigen Lesern Verwirrung herrscht: Mit ein paar Praxisbeispielen (Code) werden wir versuchen, das Thema klar und verständlich zu machen.