Die Nutzung von ausgezeichneten, erprobten Problemlösungen für wiederkehrende Problemsituationen hat im Bereich der Architektur zu Musterlösungen geführt, die immer dann eingesetzt werden, wenn Standardprobleme zu lösen sind. Durch Variation von Parameterwerten lassen sich so Klassen von Problemen mit bekannten Ansätzen lösen.
Die Informatik verfügt über Musterlösungen, die bis von ca. 15 Jahren nicht als »Pattern« bezeichnet wurden. Hierzu sei auf vielfältige Algorithmen und Datenstrukturen hingewiesen, die in die Lehre und den Informatikunterricht Eingang gefunden haben: Listen, Sortieralgorithmen, Bäume, Backtracking, …. Mit dem objektorientierten Paradigma fand die Bezeichnung Pattern (== Muster) Eingang in den Sprachgebrauch der Informatik. Dies hängt im Wesentlichen damit zusammen, dass die Objektorientierte Modellierung durch das Mittel der Vererbung eine Möglichkeit bereithält, Musterlösungen als Grundlage für Erweiterungen zu verwenden, ohne den Quellcode kennen zu müssen.
Bisher finden wir im Informatikunterricht kaum den Einsatz dieser Technik. Dabei stellt sie eine Möglichkeit bereit, die es den Schülerinnen erlaubt, grundlegende Arbeitstechniken der Informatik zu studieren, zu nutzen und sich um Details einer effizienten Implementierung nicht kümmern zu müssen.
Der Autor sammelt zur Zeit erste Erfahrungen in der Nutzung von Lösungsmustern. Die Einsatzmöglichkeiten im Anfangsunterricht beziehen sich i.W. auf Problemstellungen, die im Bereich der Netzwerke oder im Bereich der Steuerung von Programmen zu finden sind.
Die Überlegung, das bereits aus Smalltalk-Zeiten bekannte Muster:
Model View Control »MVC« einzusetzen, wurde verworfen, da die Nachteile
dieses Musters – die Trennung von V und C – eine
Komplexitätserhöhung nach sich zieht. Nach Sichtung verschiedener Muster
wurde das Beobachtermuster ausgewählt, das sowohl im Bereich von GUIs,
aber auch im Bereich der Netzwerke seine Kraft entfalten kann. Dies
scheint geeignet, um ein Informatikkonzept am konkreten Beispiel
einführen zu können. Materialen (inkl. Quellcode in Python) sind zu
finden unter:
haspe.homeip.net:8080/cgi-bin/pyblosxom.cgi/python/2005-11-14_BeobachterMuster-Dokumentation.html