Och, nö. Die Ausprägung einzelner Merkmale ('Anrede', 'Status' etc.) wird dann auch über die Lookuplisten repräsentiert. Ob das nun nachher Objekte werden, oder TDatasets, ist irrelevant. Eingegeben werden müssen die Werte ja sowieso irgendwann, und da ist mir eine Lookup-Combo (egal ob datensensitiv oder nicht) doch lieber.
Dessenungeachtet ist die objektorientierte Abbildung von Daten performancetechnisch ein Disaster, da die schöne Datenmengenwelt verlassen wird, und mit einzelnen Objekten rumhantiert wird. Das ist bei der Bearbeitung einzelner 'Objekte' noch ok, aber auf 'Objektlisten' würde ich das nicht aufweiten. Der Unterschied liegt bei ca. 400% (und mehr).
Das ist die Crux mit den Mittelschichten: Entweder schön objektorientiert (wirklich schön), dafür lahm, oder den
DB-Server ausreizen, dafür etwas klassisch. Irgendwo gibt es einen Schnittpunkt zwischen Übersichtlichkeit und Performance. Wenn das Projekt zu komplex wird, wird man auf Performance eventuell verzichten. Denn dann muss die Implementierung sauber und wartbar sein.