Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Grundlagen der Programmierung: Entwurfsmuster

Einführung und Prinzip 1:Trenne Veränderliches von Konstantem

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Das Grundprinzip, das für lose Kopplung sorgt und ein wesentliches Ziel vieler Entwurfsmuster darstellt, lernen Sie in diesem Video kennen.
03:12

Transkript

Worum es sich bei objektorientierten Entwurfsprinzipien handelt, erfahren Sie in diesem Video. Außerdem lernen Sie einige dieser Prinzipien kennen. Um überhaupt eine objektorientierte Anwendung entwickeln zu können, sollten Sie natürlich auf jeden Fall die Grundprinzipien der Objektorientierung kennen, also Abstraktionen, Kapselung, Polymorphie und Vererbung. Das macht Sie aber nicht automatisch gleich zu einem guten Entwickler. Darüber hinaus gibt es nämlich noch eine Reihe weiterer Prinzipien, die letztlich die Grundlage eines guten objektorientierten Entwurfs bilden. Die Anwendung des richtigen Prinzips an der richtigen Stelle führt dann dazu, dass der Code besser lesbar wird und leichter geändert und erweitert werden kann. Viele Entwurfsmuster sind durch die Anwendung oder Kombinationen solcher Entwurfsprinzipien entstanden. Nun gibt es aber niemals nur die eine richtige Lösung und das gilt für die Entwurfsmuster genauso wie für die Entwurfsprinzipien. Die Kenntnis von Entwurfsmustern kann den manchmal recht beschwerlichen Weg durchaus abkürzen. Die Kenntnis der zugrundeliegenden Prinzipien hilft Ihnen aber erst die Muster besser zu verstehen und damit auch zu entscheiden, wann Sie vom Muster empfohlenen Lösungen abweichen sollten und wann Sie natürlich eventuell das Muster auch gar nicht einsetzen sollten. Schauen wir uns nun ein paar solcher Entwurfsprinzipien an. Das erste Prinzip lautet folgendermaßen. Trenne die Aspekte der Anwendung, die sich ändern können von denen, die konstant bleiben. Diesem Prinzip liegt die Beobachtung zugrunde, dass Anforderungen an Softwaresysteme dazu neigen sich zu ändern. Damit nun Änderungen an einzelnen Teilen des Systems nicht auf alle anderen Teile durchschlagen, klingt es durchaus sinnvoll, diese beiden Bereiche voneinander zu trennen. Eine vollständige Trennung ist dabei natürlich nicht möglich. Irgendwie müssen die Dinge immer noch miteinander kommunizieren können. Aber die Abhängigkeiten sollten zumindest minimiert werden, damit die Auswirkungen von Änderungen lokal begrenzt bleiben. Nun sollte man es mit diesem Prinzip aber auch nicht übertreiben. Davon auszugehen, dass sich potentiell irgendwie alles ändern könnte und deshalb alles von allem anderen zu entkoppeln, würde zwar möglicherweise zu einem total flexiblen Design führen, aber eben auch zu einem möglicherweise unglaublich komplexen System. Ein Großteil der Flexibilität wird möglicherweise niemals in Anspruch genommen werden und die Energie, die in die Erstellung und Wartung eines solchen Systems gesteckt wurde und auch wird, steht an anderer Stelle natürlich nicht zur Verfügung. Sie sollten sich also tatsächlich in jedem einzelnen Fall fragen, könnte sich das hier tatsächlich demnächst ändern oder versuchen ich hier einfach nur unnötig flexibel zu sein. Ein sehr gutes Beispiel für die Anwendung dieses Prinzips können wir im Entwurfsmuster Beobachter sehen. Beim Beobachter geht es darum, dass ein Objekt seinen Zustand ändert und dann andere Objekte davon informiert werden möchten. Das ist also das Objekt, das seinen Zustand ändert und das sind die beiden Objekte, die sich dafür interessieren. Wenn sich nun sowohl Art als auch Anzahl dieser Interessenten ändern könnte, dann sollten wir unser erstes Entwurfsprinzip zur Anwendung bringen. Das heißt also, wir trennen das, was ich ändern kann von dem, was konstant bleibt. Wir erreichen das, indem wir eine Schnittstelle dazwischenschieben. Die Interessenten implementieren die Schnittstelle und das Beobachtet, das Objekt, das seinen Zustand ändert, kennt nur die Schnittstelle. Nun können wir hier beliebig vielen weitere Beobachter hinzufügen und Sie können auch von beliebigen verschiedenen Typen sein. Solange alle die vereinbarte Schnittstelle implementieren, funktioniert die Kommunikation ohne Probleme. Der Beobachter ist natürlich nur ein Beispiel. Dieses Entwurfsprinzip ist so grundlegend, dass Sie es praktisch in jedem Entwurfsmuster wiederentdecken werden.

Grundlagen der Programmierung: Entwurfsmuster

Erhalten Sie einen fundierten Einstieg in das Thema Entwurfsmuster (Design Patterns) und erfahren Sie, wie Sie Entwurfsmuster in objektorientierten Programmiersprechen umsetzen.

2 Std. 49 min (33 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!