Ich weiss nicht was es für ein Tool werden soll, aber wenn es recht komplex ist, würde ich dir zu reiner
OOP raten.
Forms-Units sollen lediglich visuelle Komponenten steuern, abfragen und deren Events verarbeiten. So kann man auch Funktionen aufrufen ohne gleich die Form erzeugen zu müssen.
Objekt-Units sind eng verbunden mit den Forms-Units und dies sollte schon vom Namen her zu erkennen sein. Beim Starten einer Form wird von einer Objekt-
Unit gefüllt, beim Schliessen füllen die visuellen Komponenten das Objekt (selbstverständlich können zu jeder Zeit irgendwelche Berechnungen durchgeführt werden).
Z.B.:
fAuto.pas (f = Form)
uAuto.pas (u =
Unit)
Die nur
Unit-Forms sollten von einer Ur-
Unit abgeleitet sein, die wiederum eine Hauptklasse beinhaltet, so hätten schon mal alle Units zugriff auf eine Instanz der Hauptklasse. Dein HauptObjekt (worum es sich am meisten dreht bei deinem Tool) füllst du bei der Initialisierung des Programms aus der Datenbank und beim Beenden schreibst du die Werte zurück in die Datenbank.
An dieser Stelle könnte man natürlich noch weiter gehen und jeder Tabelle ein Objekt zuweisen (die Klasse zu diesem Objekt würde natürlich 1 zu 1 die Spalten nachbilden).
Sogar jedem Feld könnte man ... (das führt jetzt zu weit 8) )