Während Sie weiterhin versuchen, neue Funktionen in Ihren Anwendungen zu entdecken, stellen Sie fest, dass die von Ihnen vorgeschlagenen Lösungen einigen Dingen, die Sie zuvor implementiert haben, so ähnlich sind? Wenn Sie Programmierer sind (auch wenn Sie erst seit Kurzem damit anfangen), haben Sie wahrscheinlich mit „Ja“ geantwortet. Es sieht so aus, als würden Sie alten Code verwenden, um neu entdeckte Probleme während der Softwareentwicklung zu lösen. Möglicherweise haben Sie erkannt, dass Ihre Lösung ein grundlegendes Prinzip ist, eine Methode, die nicht nur von Ihnen, sondern von allen professionellen Entwicklern häufig wiederholt werden kann.
Tatsächlich treten viele Programmierprobleme immer wieder auf, und es sind viele grundlegende Methoden (oder Entwurfsmuster) zur Lösung dieser Probleme entstanden. Ein Entwurfsmuster ist eine Vorlage, die Ihnen zeigt, wie Sie Ihren Code mithilfe authentischer und zuverlässiger Designs organisieren.
Geschichte der Designmuster
Der Begriff „Designmuster“ wurde ursprünglich im Bereich der Architektur geprägt. In seinem 1977 erschienenen Buch „A Pattern Language: Towns/Building/Construction“ beschreibt Christopher Alexander einige häufige architektonische Designprobleme und erklärt, wie man eine Sammlung bestehender, bekannter Muster nutzen kann, um neue und effektive Designs zu entwickeln. Alexanders Perspektive lässt sich gut auf die Softwareentwicklung übertragen, und es besteht ein langfristiger Konsens darüber, vorhandene Komponenten zum Aufbau neuer Lösungen zu nutzen.
Alle Entwurfsmuster haben einige gemeinsame Merkmale: einen Namen, eine Problemstellung und eine Lösung.
1. Die Identifizierung eines Entwurfsmusters ist wichtig, da es anderen Programmierern ermöglicht, den Zweck Ihres Codes sofort zu verstehen, ohne sich zu sehr damit befassen zu müssen (zumindest sind Programmierer durch diese Identifizierung mit diesem Muster vertraut). ?
2. Die Problembeschreibung dient der Veranschaulichung des Anwendungsbereichs dieses Modells. ?
3. Die Lösung beschreibt die Ausführung dieses Modells. Eine gute Diskussion eines Entwurfsmusters sollte die Vor- und Nachteile der Verwendung des Modells abdecken. ?
Expandieren