[Python-Leipzig] Teach Me Vererbung: Problemstellung

Jan Zelmer Jan.Zelmer at gmx.net
Do Feb 5 11:59:25 UTC 2015


Seid gegrüßt :),

Meine Problemstellung:

Also ich hab ein Rechteck. Darin werden Kreise platziert. Von diesen Kreisen wachsen Linien. Diese Linien können nur geradlinig wachsen. Wenn eine Linie auf ein Kreis trifft, dann merken sich beide Kreise das. Ein Kreis darf nur eine bestimmte Anzahl von "eingehenden und ausgehenden Verbindungen" besitzen. Zusätzlich gibt es Funktionen die bestimmte Statistiken errechnen.
Eine Klasse generell soll das Setzen, Wachsen und errechnen der Statistiken implementieren. Dabei gibt es verschiedene Möglichkeiten des Setzens, des Wachsens, aber das Berechnen der Statistiken bleibt immer gleich. Von daher hätte ich gerne eine abstrakte Basisklasse, die die Berechnung der Statistiken (und Utility) implementiert, aber weder Setzen noch Wachsen kann. Und somit auch nicht initialisiert werden darf. (Wie in Java abstrakte Klassen definiert sind.) Es soll dann eine einfach Unterklasse geben, die triviales Setzen und Wachsen implemeniert und durch das Erben auch die Statistiken berechnen kann. Wenn jetzt weitere Unterklassen hinzukommen, so sollen sie einfach nur Methoden überschreiben und anpassen, die sie für nötig halten und der Rest soll einfach übernommen werden. 

Und ich werde den Code den ich bis jetzt habe mitbringen und darauf aufbauen. Ich hab eine eigene Geometrie Implementation für Punkte, Linien und Rechtecke und einen GeoTree um Kollisionsberechnungen zu beschleunigen ( den ich zwar noch nicht verwende, aber er ist da ^^)

Viele Grüße,
Jan Zelmer



Mehr Informationen über die Mailingliste Python-Leipzig