Je suis novice en programmation (6 semaines maintenant). Je lis beaucoup de livres, de sites et de blogs en ce moment et j'apprends quelque chose de nouveau tous les jours.Haricots, méthodes, accès et changement? Quelle est la pratique recommandée pour les manipuler (c'est-à-dire dans ColdFusion)?
Actuellement j'utilise coldfusion (job). J'ai lu un grand nombre d'articles sur le web et j'ai l'intention d'entrer dans mxunit ensuite et ensuite de regarder quelques frameworks. Une chose me dérange et je ne suis pas en mesure de trouver une réponse satisfaisante. Les beans sont parfois décrits comme DataTransferObjects, ils contiennent des données provenant d'une ou de plusieurs sources.
Quelle est la pratique recommandée pour gérer ces données? Dois-je utiliser un objet séparé qui lit les données, les mute et les réécrit dans le bean, de sorte que le bean est juste un stockage de données (accessible via getters) ou devrais-je mettre en œuvre les méthodes pour manipuler le les données dans le bean.
Je vois deux options.
1. Le bean est seulement le stockage, d'autres objets doivent faire quelque chose avec ses données.
2. Le bean est le stockage et la logique, d'autres objets lui disent de faire quelque chose avec ses données.
La deuxième option me semble plus adhérer à l'encapsulation tandis que la première semble être la façon dont les haricots sont utilisés. Je suis sûr que les deux options correspondent aux besoins de quelqu'un et sont recommandées dans un contexte spécifique, mais ce qui est recommandé en général, surtout quand quelqu'un ne sait pas assez sur la plus grande image de l'application et est un débutant?
Exemple:
J'ai créé un bean qui contient un élément d'une base de données avec l'ID d'élément, un nom et un tableau 1d. Chaque élément de tableau est une structure qui contient un identifiant, un nom et le montant de l'élément. Grâce à un getter je produis les données dans un tableau dans lequel je peux aussi changer le montant pour chaque utilisateur ou vérifier un utilisateur pour la suppression de cet article. Où dois-je mettre la logique pour gérer l'entrée des utilisateurs de l'application?
Dois-je dire au bean de changer son tableau en fonction de l'entrée de l'utilisateur?
Ou est-ce que je crée un objet qui modifie le tableau et écrit ce nouveau tableau dans le bean?
(Tous les accès à la base de données (CreateReadUpdateDelete) sont gérés par un objet DataAccessObject qui reçoit le bean en tant qu'argument.Le DAO contient également une méthode de passerelle pour lire plusieurs enregistrements de la base de données. éléments, sur lesquels je peux cliquer pour créer le bean et ses données.)
Je n'ai pas d'objet passerelle, juste une méthode additionnelle pour écraser dans mon dao qui (à mon avis) reprend la partie de l'objet passerelle (dans mon cas, interroger la base de données pour obtenir tous les enregistrements que je veux être en mesure de continuer à travailler avec) – mrt181
Cela semble bien (j'ai mal lu votre commentaire original). –