IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

méthode de dev pour application graphique


Sujet :

C++

  1. #21
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    mmm ok j'avance un peu là

    Je reconnais que le sujet de départ à un peu dérivé et que mes questions ne sont pas évidentes car c'est assez dur à expliquer mon incompréhension. Merci à vous de m'aider. Donc :
    Je ne suis pas expert, mais je pense qu'il suffit juste de fournir la "dll" de sqllite et rien d'autre.
    Je viens de télécharger le fichier "sqlitedll-3_6_23_1.zip" et dedans il y deux fichiers (sqlite3.dll et sqlite3.def).
    Ok donc invisible pour l'utilisateur lambda. Je posais cette question car pour le développeur, lui, doit lancer une installation sur son pc pour pouvoir créer une BDD et je pensais que l'utilisateur devait finalement faire de même (donc contraignant et non silencieux).

    moteur de base de données client-serveur un peu plus lourd s'est réalisé en mode "silencieux" (via des scripts), et qu'un service (ou daemon sous linus/unix) en tâche de fond tourne.
    J'ai donc sur mon ordinateur, qui contient une variété conséquente de programme, une multitude de moteurs de SGBDR qui tourne en tâche de fond à chaque fois que je lance un programme qui utilise cette technique pour la sauvegarde de ses données ?

    J'ai des SGBDR installés sur mon PC qui tournent mais uniquement pour le programme qui l'utilise mais, moi personnellement, je ne pourrais pas lancer ces moteurs de bases de données seule ?

    Ai-je bien compris ?
    Cela peut paraitre tordu ou bizarre comme question mais je vous assure que ce sujet est très peu abordé sur la toile ou je n'arrive pas à trouver les mots clés juste pour pouvoir accéder à ce genre de concept expliqué.

    Avant de me lancer j'ai besoin de bien comprendre ce que j'ai à faire et comment le faire et surtout pourquoi le faire

  2. #22
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 69
    Points : 142
    Points
    142
    Par défaut
    Citation Envoyé par miltone Voir le message
    [...]
    J'ai donc sur mon ordinateur, qui contient une variété conséquente de programme, une multitude de moteurs de SGBDR qui tourne en tâche de fond à chaque fois que je lance un programme qui utilise cette technique pour la sauvegarde de ses données ?
    [...]
    Attention, je n'ai jamais dit que tous le faisait mais que c'est simplement une éventualité. Cela dépend de l'application, il faut vraiment que l'application ait un réel besoin d'utiliser un moteur de base de données non embarqué (genre mySql ou postgresql).

    En dehors des applications professionnelles, je ne vois pas trop l'intérêt de "sortir l'artillerie lourde". Pour ma part, j'ai du en voir une seule mais je ne me souviens plus de l'application.

    Gérer la persistance des données de manière "classique" peut suffire dans les cas les plus basiques.

    Citation Envoyé par miltone Voir le message
    J'ai des SGBDR installés sur mon PC qui tournent mais uniquement pour le programme qui l'utilise mais, moi personnellement, je ne pourrais pas lancer ces moteurs de bases de données seule ?
    Pourquoi est-ce que tu ne le pourrais pas ? Si tu es sous windows en mode administrateur, il suffit d'aller dans 'Panneau de configuration'->'Outils d'administration'->'Services' et là tu fais ce que tu veux.

    Mais pour un utilisateur 'lambda' cela n'a aucune utilité.

    Citation Envoyé par miltone Voir le message
    Ai-je bien compris ?
    Cela peut paraitre tordu ou bizarre comme question mais je vous assure que ce sujet est très peu abordé sur la toile ou je n'arrive pas à trouver les mots clés juste pour pouvoir accéder à ce genre de concept expliqué.

    Avant de me lancer j'ai besoin de bien comprendre ce que j'ai à faire et comment le faire et surtout pourquoi le faire
    Au contraire, il me semble que cela soit très intéressant comme question, c'est en se posant des questions qu'on avance.

    En matière de persistance de données, il faut d'abord évaluer les besoins de l'application, savoir s'il y aura ou pas des accès concurrents aux données, estimer la quantité de données que l'application devra gérer, etc...

    Par exemple je veux créer un logiciel de gestion de cave à vin pour un particulier, est-ce que j'ai vraiment à me soucier des accès concurrents aux données si une seule personne doit y accéder ? Soit je gère tout de manière traditionnelle à la main soit j'y intègre un moteur de base de donnée léger embarqué (Sqlite).

    Bref, ça dépend de ce que tu veux faire.

  3. #23
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 69
    Points : 142
    Points
    142
    Par défaut
    Citation Envoyé par miltone Voir le message
    Salut à tous,

    [...]
    J'ai donc dans l'idée de développer un logiciel de gestion bancaire personnel en C++ avec Qt (que je connais que de nom).
    [...]
    En gros c'est un peu comme "Microsoft Money", non ?

  4. #24
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    En gros c'est un peu comme "Microsoft Money", non ?
    C'est EXACTEMENT ça !!! Sauf que étant utilisateur de ce logiciel il y a quelques fonctions que j'aimerais avoir qui n'existe pas ou la présentation que, moi, je ferais différemment.

    L'idée est de ne pas perdre la main durant ma difficile période de recherche de 1e emploi après ma formation, en développant un outil de A à Z qui me servera dans le futur.

    Finalement Obliveon j'ai l'impression que tu me conseil d'écrire mes sauvegardes à la main là ou 3D signal que cela est laborieux.

    Vers quel technologie ou concept je pourrais me pencher pour étudier comment effectuer ces sauvegarde ? car les ranger dans un simple fichier texte je pense que cela est trop basique (et peut-être lent à la lecture).

  5. #25
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par miltone Voir le message
    Finalement Obliveon j'ai l'impression que tu me conseil d'écrire mes sauvegardes à la main là ou 3D signal que cela est laborieux.
    Les 'petits' projets (disons, là où les données sauvegardées ne sont pas nombreuses ni d'une architecture complexe) la sauvegarde à la main est la façon la plus rapide à mettre en œuvre.
    XML permet une première 'structuration' et les bibliothèques XML commencent à t'enlever quelques soucis (comme les conversions).
    Une bibliothèque de sérialisation s'occupe de la cuisine nécessaire pour avoir des objets correctement construits.
    Ces techniques te permettent aussi bien une sauvegarde sur fichier que des échanges inter-appli (par réseau par expl). En revanche, elles nécessitent souvent de charger et de sauver l'intégralité des données d'un projet par ton programme car les instertions/suppressions en milieu de fichier sont assez laborieuses.

    Avec une bonne conception, ton module de sauvegarde devrait être facilement substituable. Puisque tu précises qu'il s'agit de te faire la main, il peut même être intéressant de tester différentes stratégies : 100% à la main dans un format qui t'est propre, en utilisant une bibliothèque XML, en utilisant une librairie de sérialisation, en utilisant SQLite.
    Ca te permet d'apprendre les flux, XML, la sérialisation et SQLite, que du bonheur

    Citation Envoyé par obliveon Voir le message
    SQLite is a compact library. With all features enabled, the library size can be less than 300KiB, depending on compiler optimization settings. (Some compiler optimizations such as aggressive function inlining and loop unrolling can cause the object code to be much larger.) [...]
    Je ne suis pas expert, mais je pense qu'il suffit juste de fournir la "dll" de sqllite et rien d'autre.
    Je viens de télécharger le fichier "sqlitedll-3_6_23_1.zip" et dedans il y deux fichiers (sqlite3.dll et sqlite3.def).
    Tu as le code source. Donc c'est même possible de générer une bibliothèque statique et de la lier à ton programme. Donc rien de plus qu'un exécutable de visible pour l'utilisateur (en dehors des fichiers de données).

  6. #26
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 69
    Points : 142
    Points
    142
    Par défaut
    Citation Envoyé par 3DArchi Voir le message
    [...]

    Avec une bonne conception, ton module de sauvegarde devrait être facilement substituable. Puisque tu précises qu'il s'agit de te faire la main, il peut même être intéressant de tester différentes stratégies : 100% à la main dans un format qui t'est propre, en utilisant une bibliothèque XML, en utilisant une librairie de sérialisation, en utilisant SQLite.
    Ca te permet d'apprendre les flux, XML, la sérialisation et SQLite, que du bonheur
    [...]
    Un excellent exercice de conception qui permet de séparer la gestion des données et la présentation des données, patron de conception MVC.

  7. #27
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    je crois que je vais me lancer à développer mes sauvegardes moi-même puis à améliorer au fur et à mesure. SQLite sera donc la suite logique. Mine de rien, j'ai appris pas mal avec ce sujet et je dois maintenant mettre en pratique.

    Je vous remercie à tous de votre précieuse participation et vous dit à plus


  8. #28
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par miltone Voir le message
    je crois que je vais me lancer à développer mes sauvegardes moi-même puis à améliorer au fur et à mesure. SQLite sera donc la suite logique. Mine de rien, j'ai appris pas mal avec ce sujet et je dois maintenant mettre en pratique.

    Je vous remercie à tous de votre précieuse participation et vous dit à plus

    Bonne idée.
    stratégie n'était pas en italique par hasard dans mon dernier message.

Discussions similaires

  1. [Conseil] IDE/framework/librairie pour application graphique
    Par nuke_y dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 05/07/2010, 12h08
  2. Bonne méthode pour la création d'une application graphique cliente
    Par kayoum dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 22/01/2009, 12h12
  3. Quel Framework utilisez vous pour vos application graphiques
    Par zoullou dans le forum Interfaces Graphiques en Java
    Réponses: 6
    Dernier message: 04/01/2006, 13h23
  4. Quel langage pour un application graphique sous windows
    Par ipeteivince dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 06/06/2003, 17h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo