Grundsätzlich hat ein Programm seine Arbeit so schnell es geht zu erledigen
Äh. In der professionellen Softwareentwicklung eher nicht, denn da erntest Du mit dieser Aussage Hohn, Spott und abfälliges Schmunzeln.
Kann mir jemand erklären, wie man diese Anforderungen erreicht
Datenbank, fällt mir auf Anhieb ein. SQLite,
Access. Was kleines eben. Ich wähle meine Werkzeuge anhand der Anforderung. Wenn ich wahlfreien Zugriff benötige (mit Sicherheit über einen Schlüssel), nehme ich eine
DB.
Nicht nur Deine Entwicklung schützt du damit. Der Support-Aufwand hält sich in Grenzen wenn Anwender nicht in Daten rumwurschteln können
Ich weiss ja nicht, was für und welche Daten ihr da in so einem File-Of-TIrgendwas verschlüsselt abspeichert, aber bei mir ist das so: Eine Liste kommt in eine
DB, Konfigurationseinstellungen in eine
XML/INI usw.
Ich hatte bisher erst einen Fall, bei dem die Daten geschützt sein mussten. Dann wird eben verschlüsselt. Aber nur, weil es sich um einen embedded PC handelte, ohne Netzanbindung und keinerlei
DB-Treiber installiert werden durften. Ansonsten schütze ich Daten, indem sie auf das RDBMS kommen.
Übrigens würde ich mich freuen, wenn irgendwer in Konfigurationsdaten rumfummelt. Das gibt nämlich dann eine saftige Rechnung!
Ich kenne nur keinen Fall, wo ich File-of-record einem Stream vorziehen würde. Aber vermutlich, weil ich nicht mit Records arbeite, keine Shortstrings verwende, sowie keine einfachen Strukturen habe.
Jedem das Seine, würde ich da sagen.