9 - Introduction to Software Engineering [ID:49869]
50 von 650 angezeigt

So, willkommen zurück zur wunderbaren Welt des Software Engineering. Wir wollen heute mit unserer

Einführung weitermachen und wir hatten uns beim letzten Mal schon so ein paar Architekturentscheidungen

angeguckt, Plugins und wie man quasi so einen generellen Systementwurf machen kann, welche

Architekturen da praktisch sein können und heute wollen wir uns tatsächlich mit einzelnen

Entwurfsmustern für die Programmierung, insbesondere objektorientierte Programmierung

auseinandersetzen. Und das ist auch so ein Thema, also Entwurfsmuster ist etwas, wenn man

objektorientiert programmiert, dann läuft das einem ständig über den Weg. Also diese Entwurfsmuster,

wenn man die, also wenn man eine Weide programmiert hat objektorientiert, dann stellt man fest,

wow, das brauche ich irgendwie ständig. Das sind auch Lösungsvorschläge, die man vielleicht

selber sogar schon benutzt hat. Also diese Design Patterns, Entwurfsmuster sind einfach ganz tolle.

Da hinten ist irgendwie die Tür noch offen, könnte man die zumachen? Ich mache auch hier noch die Tür zu.

So und dann haben wir etwas mehr Ruhe hier. Also Entwurfsmuster sind ja wie so eine Art

Kochrezept für gewisse programmatische Probleme und wenn man eine Weile programmiert hat und dann

zum ersten Mal von diesen Entwurfsmustern hört, dann denkt man sich, oh mein Gott, das brauche

ich hier ständig. Und das ist so ein bisschen die Schwierigkeit, das jetzt zu unterrichten,

weil das hängt schon viel davon ab, wie viel Programmiererfahrung man hat mit dem objektorientierten

Programmierung und ich muss sagen, also viele von den Entwurfsmustern habe ich selber schon in

eigener Programmiererfahrung eingesetzt und fand die irre praktisch. Auch das Buch, aus dem diese

Sammlung von letzten Endes Kochrezepten kommen, wenn man das dann mit ein bisschen Programmiererfahrung

liest, denkt man, wow, das ist ja Wahnsinn. Auf der anderen Seite ist es auch ein tolles Kompendium,

man kann da auch super gut nachschlagen. Ich habe gerade ein Programmierproblem und ich möchte das

entsprechend lösen, mir fällt kein guter Lösungsansatz ein, dann kann ich mich hinsetzen und noch mal die

Entwurfsmuster rausholen und sagen, ach Mensch, genau das ist die Lösung zu meinem Problem. Also

das ist ja daher vom Unterrichten in der Vorlesung das Ganze schön vorzubereiten, schön zu zeigen,

man muss aufpassen, dass man sich nicht ein bisschen verzettelt, weil wirklich dann ins Detail zu gehen

bei den einzelnen Entwurfsmustern macht natürlich Sinn. Ich versuche das jetzt auch mit Programmierbeispielen

aus der eigenen Programmiererfahrung und so weiter zu unterstützen, aber zum gewissen Punkt möchte man

wahrscheinlich noch mal in Ruhe sich hinsetzen und ihr auch einfach nachschlagen. Es ist ein super

Nachschlagewerk. Wir haben jetzt auch hier in dem vorigen Satz nicht alle Entwurfsmuster aus diesem

Grundlagenwerk der Gang of Four, sondern wir haben da jetzt einige ausgewählt und gehen jetzt nicht

wirklich alle durch, weil ansonsten wird das alles ein bisschen öde und zäh. Wir haben relativ viele

drin. Ich werde die versuchen einigermaßen gut zu erklären mit Beispielen vorzusehen und dann über

einige vielleicht auch ein bisschen schneller hinweg zu gehen. Es gibt auf den Folien zu jedem im Prinzip

ein Klassendiagramm, UML-Klassendiagramm, das quasi so das Template vorgibt, wie das typischerweise

implementiert ist in der Klassenhierarchie und ich versuche es einigermaßen kurzweilig

rüberzubringen. Also aber das Ganze ist wirklich etwas, was auf der einen Seite unheimlich nützlich

ist, aber halt zu dem richtigen Zeitpunkt nützlich ist, wenn man genau an einem Problem arbeitet, wo

man das quasi implementieren will. Und das bringt uns letzten Endes zu der Frage, was sind diese

Entwurfsmuster und das ist im Prinzip eine best practice, könnte man sagen, die quasi

realisiert werden soll. Und das Ziel ist es quasi zu beschreiben, wie man entsprechende Lösungen

realisieren kann. Und jetzt würde ich ganz gerne, nein ich will nicht auf die nächste Folie, ich will

mal im Cursor. Schwarzer Cursor auf schwarzem Grund, ah sehr gut. Und letzten Endes sind es best practices

und die sind halt genau dann nützlich, wenn man genau dieses Problem vor Augen hat. Und ja, also

sich viele Lösungen anzugucken, ob man hat das Problem gar nicht, ist dann vielleicht auch nicht

so super spannend. Ich kann natürlich, das ist so wie wenn man ein Rätsel vor sich hat oder das

Lösungsbuch zu einem Rätsel, aber man hat das Rätsel nicht. Und das ist viel spannender, wenn man

erst drüber gerätselt hat und das Problem versucht schon mal selber zu lösen und dann die Lösung dazu

sieht. Dann fällt es einem quasi richtig auf, sagt, oh das ist toll, aber sich ständig nur die Lösung

anzugucken, ist natürlich auch nicht super toll. Häufig sind die auch letzten Endes durch so

Ressourcenknappheit und so weiter motiviert. Also eins, das wir heute auch durchgehen werden,

Zugänglich über

Offener Zugang

Dauer

01:12:26 Min

Aufnahmedatum

2023-12-14

Hochgeladen am

2023-12-15 12:39:09

Sprache

de-DE

Einbetten
Wordpress FAU Plugin
iFrame
Teilen