Hallo,
in unserem Unternehmen gibt es auf hoher Ebene starke Ressentiments gegen Vererbung.
Argumentiert wird damit, dass eine Vererbung
- im Gegensatz zu einer losen Kopplung durch Methoden -
eine starke Bindung von Vater- und Kindklassen herstellt.
"bei der Vererbung gibt es eine undefinierte aber sehr starke Bindung zischen Oberklasse und erbender Klasse.
Bekannt ist in diesem Zusammenhang das Kopieren von Konstanten von der oberen Klasse in die erbende Kasse."
Aufgrunddessen sollen Änderungen an Oberklassen ohne Kentnisse der Unterklassen kaum möglich sein.
Umgekehrt ebenso. Bei einer Änderung der Oberklasse müssten auch alle Kindklassen erneut getestet werden.
Um die obigen Ausführungen zu verstehen, ist zu ergänzen,
dass die Auslieferung des Codes Klassenweise erfolgt.
Der Kunde bekommt genau die Klassen, die für ihn geändert wurden
(Oft ist dies zu einem Bereich nur eine, in der monolithisch mehrere Tausend Zeilen Code stehen).
Was ist zu beachten, wenn Vater und Kindklasse bei Bedarf separat ausgeliefert werden sollen?
D.h., beide Klassen sind evtl. schon Jahre im Einsatz und es soll eine der beiden ausgetauscht werden.
Dass sich die Schnittstellen nicht verringern dürfen, ist klar. Was gilt für Erweiterungen?
Bei welchen Änderungen der Vaterklasse muss die Kindklasse zwingend neu kompiliert werden?
in unserem Unternehmen gibt es auf hoher Ebene starke Ressentiments gegen Vererbung.
Argumentiert wird damit, dass eine Vererbung
- im Gegensatz zu einer losen Kopplung durch Methoden -
eine starke Bindung von Vater- und Kindklassen herstellt.
"bei der Vererbung gibt es eine undefinierte aber sehr starke Bindung zischen Oberklasse und erbender Klasse.
Bekannt ist in diesem Zusammenhang das Kopieren von Konstanten von der oberen Klasse in die erbende Kasse."
Aufgrunddessen sollen Änderungen an Oberklassen ohne Kentnisse der Unterklassen kaum möglich sein.
Umgekehrt ebenso. Bei einer Änderung der Oberklasse müssten auch alle Kindklassen erneut getestet werden.
Um die obigen Ausführungen zu verstehen, ist zu ergänzen,
dass die Auslieferung des Codes Klassenweise erfolgt.
Der Kunde bekommt genau die Klassen, die für ihn geändert wurden
(Oft ist dies zu einem Bereich nur eine, in der monolithisch mehrere Tausend Zeilen Code stehen).
Was ist zu beachten, wenn Vater und Kindklasse bei Bedarf separat ausgeliefert werden sollen?
D.h., beide Klassen sind evtl. schon Jahre im Einsatz und es soll eine der beiden ausgetauscht werden.
Dass sich die Schnittstellen nicht verringern dürfen, ist klar. Was gilt für Erweiterungen?
Bei welchen Änderungen der Vaterklasse muss die Kindklasse zwingend neu kompiliert werden?