Hallo David , ich finde diese Reihe klasse! Klasse Arbeit. Danke! Du trennst immer schön das Design von der Architektur. Diese ist für mich aber absolut gleich. Software-Architektur und -Design sind soweit ich weiß, das selbe. Das was Du als Design angibst ist doch die Struktur (Struktogramm, UML-Strukturpläne). Also ich denke hier sprechen wir leider eine andere Sprache !? Es ist bei Systemen ganz oft der Fall, dass man z.B. alte Services für die nächste Stufe anpassen muss, der alte Service aber nicht abgeschaltet werden kann. Dazu kann es ganz unterschiedliche Gründe geben. Mag unsauber sein, finde ich auch, aber ist gängige Praxis. Ich habe schon gruselige if's und/oder switch/case's gesehen, die auf so eine Anforderung reagieren und den Code somit fast unlesbar aber vor allem unwartbar machen. OCP kann hier aber auch helfen, die alte Schnittstelle unberührt zu lassen, und diesen solange wie nötig, aber nicht länger als möglich, parallel laufen zu lassen. Ich bin bei Dir, bei KISS und YAGNI, selbst wenn es bedeutet, ansatzweise dagegen zu verstoßen. Nicht etwas blindlinks zu programmieren, sondern eine saubere Struktur zu bieten, die vielleicht etwas komplexer, dafür in Zukunft aber wesentlich händlebarer sind. Gruß Marcus
Hallo Marcus, danke, schön das es Dir gefällt! Ja, das trenne ich strikt. Architektur ist die grobe Struktur (Komponenten, Schichten) und Design ist die feine Struktur (Klassen, Methoden). Das die Sprache da eine andere ist, mag sein - daher erkläre ich es auch in fast jedem Video noch einmal. So gut wie jeder Architekt hat da eine unterschiedliche Deutung - mir ist es wichtig damit zu zeigen, dass sowohl die Entwickler als auch die Architekten für die Struktur verantwortlich sind und dabei getrennte Aufgabengebiete haben. Gruß David
Eine gutes Beispiel wären z.B. Pugins. Also z.B. Erweiterungen (Module, Plugins) für den Browser. Der Browser wird nicht verändert, er wird um neue Funktionaltäten erweitert.
Anfängerfrage : Ist das für beispielsweise AddOn- bzw Plugin-Schnittstellen relevant? Sowas haben ja einige Produkte ... Firefox erwähne ich mal als prominentes Beispiel. :-)
KISS = Keep it simple and stupid. Ich denke nicht, dass in diesem Begriff die Eleganz an erster Stelle steht. Ich würde es eher mit Einstein halten: "Man sollte alles so einfach wie möglich machen, aber nicht einfacher."
Du eklärst alles absolut verständlich. Dank dir habe ich nicht solche Probleme damit wie du sie einst hattest. Danke für's Vorausgehen!
Hallo David ,
ich finde diese Reihe klasse! Klasse Arbeit. Danke!
Du trennst immer schön das Design von der Architektur. Diese ist für mich aber absolut gleich. Software-Architektur und -Design sind soweit ich weiß, das selbe.
Das was Du als Design angibst ist doch die Struktur (Struktogramm, UML-Strukturpläne). Also ich denke hier sprechen wir leider eine andere Sprache !?
Es ist bei Systemen ganz oft der Fall, dass man z.B. alte Services für die nächste Stufe anpassen muss, der alte Service aber nicht abgeschaltet werden kann.
Dazu kann es ganz unterschiedliche Gründe geben. Mag unsauber sein, finde ich auch, aber ist gängige Praxis.
Ich habe schon gruselige if's und/oder switch/case's gesehen, die auf so eine Anforderung reagieren und den Code somit fast unlesbar aber vor allem unwartbar machen.
OCP kann hier aber auch helfen, die alte Schnittstelle unberührt zu lassen, und diesen solange wie nötig, aber nicht länger als möglich, parallel laufen zu lassen.
Ich bin bei Dir, bei KISS und YAGNI, selbst wenn es bedeutet, ansatzweise dagegen zu verstoßen.
Nicht etwas blindlinks zu programmieren, sondern eine saubere Struktur zu bieten, die vielleicht etwas komplexer, dafür in Zukunft aber wesentlich händlebarer sind.
Gruß
Marcus
Hallo Marcus,
danke, schön das es Dir gefällt!
Ja, das trenne ich strikt. Architektur ist die grobe Struktur (Komponenten, Schichten) und Design ist die feine Struktur (Klassen, Methoden). Das die Sprache da eine andere ist, mag sein - daher erkläre ich es auch in fast jedem Video noch einmal. So gut wie jeder Architekt hat da eine unterschiedliche Deutung - mir ist es wichtig damit zu zeigen, dass sowohl die Entwickler als auch die Architekten für die Struktur verantwortlich sind und dabei getrennte Aufgabengebiete haben.
Gruß David
Super RUclipsr! Hast viel mehr Abos verdient.
Vielen Dank!
Eine gutes Beispiel wären z.B. Pugins. Also z.B. Erweiterungen (Module, Plugins) für den Browser. Der Browser wird nicht verändert, er wird um neue Funktionaltäten erweitert.
Anfängerfrage :
Ist das für beispielsweise AddOn- bzw Plugin-Schnittstellen relevant?
Sowas haben ja einige Produkte ... Firefox erwähne ich mal als prominentes Beispiel. :-)
Ja Ja die Aussprache. Der Prof meiner Tochter sagt auch immer Püton zu Python :-)
Erwischt... ;) Ich mag pütons :)
Gruß David
KISS = Keep it simple and stupid. Ich denke nicht, dass in diesem Begriff die Eleganz an erster Stelle steht.
Ich würde es eher mit Einstein halten: "Man sollte alles so einfach wie möglich machen, aber nicht einfacher."