2010-10-09 7 views
0

Je sais que cette question a été posée et répondue plusieurs fois, mais je me pose encore la même question ...comment organiser les interfaces et les classes

J'ai commencé à travailler sur une application de voyage et pour lequel actuellement I Je travaille sur la création à la création du DAO sous-jacent, donc je prévois de créer un DAO générique, sa mise en œuvre et encore une interface pour chaque classe d'entité.

Ma question est quelle est la meilleure façon d'organiser toutes ces interfaces ainsi que leur mise en œuvre.

Merci à l'avance

Répondre

0

Si je comprends bien la question que vous cherchez des suggestions sur l'organisation de vos forfaits?

Je diviserais alors entre. com.yyy.zzzz.dao.interfaces et com.yyy.zzzz.dao.impl

+0

oui Kevin tu l'as bien compris. Cette organisation est-elle une question de choix ou a-t-elle d'autres points lorsque nous parlons d'une application complète? – umesh

+0

Je me suis impressionné Je viens juste de me réveiller. :) –

+0

Quiconque envisage de voter pour cette réponse, s'il vous plaît voter @Colin Herbert son est une bien meilleure réponse. –

0

Vous êtes le seul à pouvoir prendre des décisions sur l'organisation de votre application. Vous pouvez, bien sûr, suivre certaines recommandations telles que la convention de dénomination Java pour les paquets, ou même essayer de scinder vos paquets pour chaque niveau implicite dans votre application; mais à la fin, vous devez choisir pour vous-même.

La solution est correcte D'@ Kevin, vous pouvez utiliser les com.company.project.dao.interfaces (je ne voudrais pas utiliser interfaces comme il est un pluriel et j'éviter pluriel dans les noms de paquet, mais encore une fois dépend de vous) et com.company.project.dao.impl ou vous pourriez utiliser des paquets pour séparer différentes implémentations. C'est comme tu veux. Et personne ne devrait vous dire comment diviser votre propre application (sauf votre équipe).

La seule règle (mais facultative) que je vous dirais de suivre est "Avoir des noms cohérents". Cela signifie choisir votre convention de projet, mais respectez-la, et bien sûr les noms que vous choisissez pour vos paquets (mais cela s'applique aussi aux classes, aux variables) doivent représenter leur contenu (mais je suppose que c'est du bon sens). Sur une autre note, je ne connais pas le contexte de votre travail, mais vous devriez vraiment lire Adam bien's Weblog, vous verrez des articles sur les meilleures pratiques concernant DAO et "implémentation par défaut", peut-être que cela concernera votre projet.


Ressources:

+0

Merci pour les détails et oui je suis d'accord c'est moi qui doit prendre la décision à la fin de la journée je demande la vue s'il y a vraiment des benifits d'un autre ver .. – umesh

+0

@umesh, le moyen le plus efficace de nommer les choses est d'avoir des noms que tout le monde dans votre équipe peut facilement comprendre. Habituellement, la convention de nommage choisie par un développeur a suffisamment de sens pour quiconque lit le code. C'est pourquoi les packages sont si différents d'un projet à l'autre, mais deux projets avec des conventions différentes peuvent être aussi compréhensibles. –

+0

Vous ne pouvez pas utiliser 'com.company.project.dao.interface' car' interface' est un mot-clé! –

Questions connexes