Wenn ich die record-Definition in eine eigene
Unit auslagere, ist sie erst recht überall zugänglich, dann kann ich sie gleich im Interface Abschnitt dieser
Unit lassen.
Wenn du die Definition im (sichtbaren) Interface-Teil deiner
Unit vornimmst, ist sie für jeden Nutzer dieser
Unit zugänglich. Lagerst du die Definition in eine eigene
Unit aus, muss diese zusätzliche
Unit im Fremdcode explizit per USES eingebunden werden, damit die Definition sichtbar wird. Ich würde in einem solchen Fall durch eine geeignete Benennung deutlich machen, dass es sich um eine private
Unit handelt.
Noch ein Tipp: packe nicht zu viel Code in eine
Unit (
SRP). Durch die Aufteilung des Codes kannst du die Übersicht verbessern, die Wahrscheinlichkeit für Wiederverwendung von Code erhöhen und das Testen einzelner Teile vereinfachen. Falls der Record kein reines Datenobjekt ist, wäre es dann nicht möglich, ihn um Methoden zu erweitern oder ihn sogar in eine Klasse umzuwandeln? Dies würde dann auf jeden Fall eine Verlagerung in eine eigene
Unit rechtfertigen.
Gruß Hawkeye