HeinzJ, ich hatte neulich eine ähnliche Diskussion.
Ich würde das mal vereinfacht so beantworten:
1. Schreibst du eine kleine Desktop-Anwendung, nimm die TDBEdits, TDatasources und TxxxQuery Komponenten und klick Dir die Anwendung zusammen. Das sollte für einfache(!) Anwendung ausreichen. Eine der Hauptvorteile von Delphi ist ja
RAD und so geht das am schnellsten.
2. Schreibst Du eine komplexere Anwendung oder eine mit mehreren Clients, dann solltest Du das OR-Modell wählen. Deiner Mittelschicht spendierst Du eine schöne Schnittstelle, die einfach die logischen Datensätze (z.B. Kunde) aus der
DB zusammensammelt, hübsch serialisiert und dem Client als 'Objekt' zuschickt. Der Client verändert dann das Objekt und schickt es zurück. Die Mittelschicht kümmert sich dann ums Abspeichern.
Listen und Auswertungen (Auftrags- Kundenübersichten) dagegen würde ich so nicht implementieren. Da würde ich mir doch ein TDataset gönnen und irgendwie (entweder über die Mittelschicht oder direkt) die
DB anzapfen. Ich habe mit Objektlisten performancetechnisch einfach keine guten Erfahrungen gemacht...