-
Besoin d'un conseil
Salut,
JE travail sur une application de gestion de stock et plus précisement sur l'entité produit qui permet l'ajout, suppression, mise a jour et la recherche d'un produit.
De ma part j'ai pas pensé de travaillé avec une classe produit et de manipuler des objets de types produit et de lé manipuler,
ce que je fais c'est a chaque fois j'interroge la BDD pour selection tous les ID des produits que je mets dans une JComboBox et a partir de l'ID selectionner j'interroge une deuxième fois la BDD pour selectionner les informations relativent à ce produit.
Mais ma collègues ma suggérer de travailler avec des objets qu'on mettera dans une collection comme ca on aura pas a interroger a chaque fois la BDD. Le problème qui se pose ici c'est que si la BDD contient des milliers de produits .....
Donc quelqu'un à un conseil pour moi ?
Merci d'avance
-
Mouais, ca me choque pas de faire quelques allers-retours serveur (la mode etant à ne pas economiser les communications cf les protocoles basés sur xml).
Mais la premiere question à te poser, c'est quels sont les avantages et inconvénients de chaque methode. Le gros avantage de remonter toutes les infos par rapport à ne recuperer que les ID est d'economiser une requete. Par contre, il y a des inconvenients : temps d'execution de creation/gestion des classes conteneur, modification du code (puisque je comprends que le code avec l'id existe deja), taille memoire occupée, charge du serveur pour repondre à la 1ere requete...
Et en ce qui concerne les evolutions futures, il est probable que tu veuilles remonter quelques infos en plus dans quelques temps. Et dans ce cas, si tu as choisi l'option tout remonter, tu devras le remonter et le stocker pour les milliers d'enregistrements de ta base, ce qui alourdira encore tout. A la limite, une question qui peut t'aider à choisir, c'est "est ce que l'utilisateur lambda va etre amené à choisir beaucoup de produits ou bien en general, il n'en choisira que quelques un ?".
Mais bon, toutes ces considerations mises à part, à mon avis, il ne faut faire des ameliorations que lorsqu'elles sont necessaires. Si tu vois que ton serveur est surchargé, il sera temps de faire des modifs. Mais les optimisations avec de gros effets de bord, vaut mieux eviter s'il n'y a pas de besoin...
a+