Gérer ses données en C++


précédentsommairesuivant

I. Présentation du projet

I-A. L'utilité

En comparant avec le bâtiment, l'établissement d'une gestion de données peut ressembler à une partie de la construction des fondations. A ce niveau, un mauvais choix, une mauvaise décision, et c'est le reste du chantier qui en sera pénalisé, de la plomberie à la charpente. En revanche, bien faite, elle vous permettra d'avancer sereinement, sans jamais (ou presque) avoir besoin d'y revenir dessus. Aussi, son rôle est cruciale. En effet, la moindre donnée mal câblée à la source peut avoir de grosses répercutions dans le haut niveau, c'est à dire en production devant l'oeil de l'utilisateur. Ses responsabilités sont grandes, car elle doit assurer la cohérence des données, leur pérennité, une utilisation intuitive mais aussi des performances non négligeables, puisque'utilisé partout, et souvent en masse.

I-B. Objectifs

C'est quoi finalement "une gestion de données" ? Le terme est vaste, posons nos objectifs :

  • Assurer la pérennité des données, donc les charger les manipuler puis les sauvegarder
  • Reproduire les relations entre elles (1-1 et 1-n), l'utilisateur doit pouvoir "sauter" facilement entre elles
  • Offrir des fonctions de recherches
  • Pouvoir se câbler facilement à tout type de source (SGBDR, fichier plat, XML etc.)

Nous allons également nous poser des objectifs plus généraux quant à la création d'une bibliothèque :

  • Une facilité d'utilisation. L'intégration des données métier de l'utilisateur ne doit ressembler qu'à de la configuration
  • Les performances, comme tout le reste applicatif
  • Etre préventif. L'erreur est humaine, donc nous nous forcerons à lever tout incohérence pour les ramener à l'oeil de notre utilisateur sans qu'il ai besoin de rentrer dans notre code bas niveau

I-C. Public visé

Je vais essayer d'adapter ce tutoriel à un public très large, pour plusieurs raisons :

  • Le besoin est vaste, gérer des données... nous en avons tous eu besoin dès nos premiers TP à l'école
  • En parcourant différents forums à la recherche du "comment s'y prendre ?", j'ai pu m'apercevoir que toutes les catégories de développeurs, débutant comme expérimenté, étaient confronté à cette problématique, mais les réponses furent très abstraite, comme le sujet.
  • Beaucoup de gens tendent à se tourner vers C++ pour gérer ce genre de chose, par souci de performance mais ne sont pas forcément familiers avec ce langage, par conséquent j'essayerai d'expliquer les techniques utilisées.

L'organisation des projets ainsi que les différents codes source ont été produit avec Microsoft Visual Studio 2005 Pro, donc sous Windows. Je ne pense pas que, tel quel, tout fonctionne sur d'autres compilateurs, d'autres OS.

I-D. Contexte applicatif

Je n'ai pas eu le temps de produire un exemple d'utilisation, mais c'est pour bientôt.


précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Aurélien FILEZ Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.