Hallo,
das wichtige an #7 (u.a.
) ist diese Funktion
function EditContactData(Contact: TContact): boolean;
OK, bei mir würde sie ExecuteForm_
ContactData heissen.
Das Hauptform hat mit der Datenübergabe nur wenig zu tun (lose Kopplung).
Die Contact-Klasse kann so erweitert werden,
ohne dass in der Hauptform-
Unit was geändert werden muss.
Ob das Singleton-Pattern hier notwenig ist,
ist eine andere Frage,
das Hauptform benutzt die Klasse ja eh als erstes
und könnte sie im FormCreate erzeugen.
Ich denke dabei auch an das Laden der Konfiguration und anderer Startdaten aus einer
DB.
Wird das an einer einzigen Stelle gemacht, kann man es in eine Transaktion "sperren".
Heiko