Quelle est la meilleure pratique pour mettre en place des structures de paquets dans une application Web Java ?
Comment configurerais-tu tes src, ton code de test unitaire, etc ?
Quelle est la meilleure pratique pour mettre en place des structures de paquets dans une application Web Java ?
Comment configurerais-tu tes src, ton code de test unitaire, etc ?
Vous pouvez suivre les conseils de maven schéma standard du projet . Vous n'êtes pas obligé d'utiliser maven, mais cela facilitera la transition à l'avenir (si nécessaire). De plus, les autres développeurs seront habitués à voir cette présentation, puisque de nombreux projets open source sont présentés de cette façon,
Je recommande également d'utiliser la mise en page de Maven si vous avez le choix. Il s'agit d'une structure bien pensée, qui a fait ses preuves et qui est familière à de nombreux développeurs.
Vous pouvez utiliser cet oneliner pour créer la disposition du répertoire : mkdir -p src/{main/{java,resources,filters,assembly,config,webapp},test/{java,resources,filters},site}
Il existe quelques ressources existantes que vous pouvez consulter :
Pour ce que cela vaut, les directives personnelles que j'ai tendance à utiliser sont les suivantes :
Quelques autres points :
Je vous suggère de créer la structure de votre paquet par fonction, et non par couche d'implémentation. Un bon article sur ce sujet est Les pratiques de Java : Emballage par fonctionnalité, et non par couche
Et si vous souhaitez changer de base de données ? Il suffit de regarder dans 30 paquets différents. Passer de SFTP à des services Web ? Là encore, vous n'avez qu'à chercher dans 30 endroits différents. Je ne suis vraiment pas fan.
Un autre exemple où le packaging par couche présente des avantages : si vous sérialisez des classes en JSON (par exemple avec gson), si ces classes sont obfusquées (par exemple par Proguard), la (dé)sérialisation échouera ; vous devez configurer Proguard pour qu'il ne touche pas à ces classes - le plus simple est de spécifier un seul package avec toutes les classes.
Un autre très bon article sur la structure des paquets Java : Gestion du chemin de classe Java
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.