J'ai une application qui utilise SQLite, qui est extrêmement léger et rapide. J'ai certaines préférences qui n'ont pas nécessairement besoin d'être chargées au démarrage, mais qui peuvent avoir besoin d'être utilisées à différents moments selon l'endroit où l'utilisateur se rend. Cela étant dit, je ne peux pas décider où stocker cette information.C# Application - stockage des préférences dans la base de données ou le fichier de configuration?
Q1: Devrais-je simplement aller de l'avant et le stocker dans la base de données? Dois-je le stocker dans un fichier de configuration? Q2: Dois-je charger et stocker les préférences et autres données au démarrage même si elles ne sont pas nécessairement utilisées immédiatement? Ou devrais-je simplement interroger la base de données quand j'en ai besoin? Exemple: Mon application peut stocker les informations sur la société pour l'entreprise qui utilise le logiciel. Nom de la société, téléphone de la société, etc. La seule fois où cette information est utilisée, c'est lorsque le logiciel imprime une lettre, ou que l'utilisateur va modifier les informations de son entreprise dans le programme.
EDIT: J'ai réalisé que cela se résume aux paramètres de l'application par rapport aux paramètres utilisateur. Mon programme n'a pas plusieurs utilisateurs par copie du logiciel. Cela dit, je suppose que ce seraient des paramètres d'application.
chargement lorsque cela est nécessaire la première fois par rapport au chargement au démarrage de l'application est une préférence personnelle. Le chargement en cas de besoin permet un démarrage plus rapide. Les recherches Singleton comme celles-ci (où vous les chargez en singleton au premier accès) sont des impacts négligeables, mais peuvent avoir un effet d'interface utilisateur certain. Considérez comment Photoshop charge (où il charge TOUT avant de vous donner l'interface utilisateur) par rapport à la pause que vous obtenez dans certaines applications lorsque vous chargez des choses et obtenez cet écran d'attente-s'il vous plaît ennuyeux. – jcolebrand
@drachenstem Et vous pouvez également charger les choses en arrière-plan et laisser l'utilisateur attendre qu'il se charge s'il n'est pas chargé. Tout comme Visual Studio. Parfois, le cache de documentation n'est pas construit, mais le sera s'il le faut. –
Très vrai, mais pour l'essentiel, les données que je vais charger sont de très petite taille, l'utilisateur ne devrait même pas le remarquer. – OogaBooga