Ich unterstelle jetzt einfach mal keine jahrelang CodingXperience. In diesem Fall würde ich dringend auf die datensensitiven Controls von Delphi verweisen. Einfacher kann man eine derartige Applikation nicht entwerfen.
Auch hier werden je nach Implementation die Daten im Speicher gehalten (TDataset-Nachfahre), allerdings sind das erprobte Komponenten. Die TObjectList-Lösung ist
imho schon um einiges aufwendiger zu programmieren.