zu Punkt 2:
Richtig, es gibt keine allgemeingültige Formel. Die in den entsprechenden Klassen dann umzusetzen ist völlig richtig.
Ohne die Schlüsselwörter "virtual" und "override" gibt es allerdings ein Problem - Wenn du eine Variable vom Typ IFigur hast weiß er nicht dass die wirkliche Bestimmung der Fläche nicht in der Klasse (TFigure) sondern in einer Unterklasse steckt.
Ich habe hier einmal ein kurzes Komplettbeispiel gemacht, allerdings mit Tieren statt Formen 😉
https://gist.github.com/JensMertelme...509caa07a057a6