Bonjour à tous,
Voilà j'ai un petit problème de conception assez basique dans le cadre d'une architecture 3-tiers.
Admettons que mon application manipule des objets Contact (id, nom, prenom, adresse, age). En respectant le principe 3-tiers, j'ai une classe ContactDAO qui gère l'ajout et la suppression de Contact dans la table contact d'une DB. J'ai également une classe ContactManager qui gère la création, l'ajout et la suppression de Contacts en faisant appel à la couche données.
Jusque là ok. Prenons maintenant le cas d'un ajout de Contact. Les différentes données du contact sont rentrées par le user mais l'ID du contact ne dépend pas du User... A quelle niveau cette ID doit être créé? au niveau métier ou au niveau donnée lors de l'insertion dans la table contact. Car admettons que mon application permette à l'utilisateur de créer plusieurs Contact en mémoire avant des les insérer tous dans la table, comment dois-je procéder dans ce cas... et où dois-je stocker ces différent contact en mémoire? Au niveau de ma classe ContactManager ?
Une dernière petite question... Lors de l'insertion d'un nouveau Contact, qui va se charger de vérifier le fait que le contact existe déjà dans la DB. La couche métier ou la couche données ???
J'espère me faire comprendre...
Merci d'avance pour votre aide...
Partager