Statt
Record
eine
Class Abstract
oder
Class Sealed
macht von der "Verwendung" her keinen großen Unterschied.
Der "Unterschied" ist nur in Bezug auf Vererbung und die
RTTI bezogen.
Aber ich würde bei Records auf jeden Fall noch
static
mit angeben, um den "unsichtbaren" Self-Parameter loszuwerden, da Self ohne Vererbung keinen Sinn macht.
Ich verwende auch gern Record statt Class, da dort der
RTTI-Overhead einen Hauch geringer ist, aber im Prinzip kann es jeder machen wie er will.
Record verwende ich quasi so ähnlich wie den "Namespace" in anderen Sprachen.