Blog 01.02.2013, 00:00 Uhr

Die Framework-Superklasse eine Superidee?

Manche Frameworks lassen sich nur einbinden, indem das Programm, das sie verwenden will, von einer zentralen Klasse erbt. Ein No-go, wie Michael Feathers findet.
Vererbung in der Objektorientierten Programmierung ist eine Supersache. Es sei denn, Sie schreiben ein Framework und zwischen die Anwender des Frameworks, von einer Klasse Ihres Frameworks zu erben.
Das führt nämlich zu zwei Problemen:
- Die Anwender können ihren Code nicht getrennt von Ihrem Framework testen.
- Eine Migration weg von Ihrem Framework ist schwierig bis unmöglich.
Zu diesem Schluss kommt Michael Feathers in einem Blogpost.
Er begründet "Vererbung ist eine der engsten Formen der Kopplung, die Sie in der Objektorientierung verwenden können" und in puncto Testen führt er aus "Oft sind Sie gezwungen, geerbten Code zusammen mit dem Code laufen zu lassen, den Sie tatsächlich testen wollen. Das ist verbunden mit all den Abhängigkeiten wie Laufzeiten etc.".


Das könnte Sie auch interessieren