Je suis sur le point de créer une classe User pour mon projet. Des opinions quant à savoir si c'est une mauvaise pratique de créer une telle classe communément nommé? Je pourrais le compléter avec un préfixe spécifique à mon projet.Java "Utilisateur" classe meilleure pratique de nommage?
Répondre
C'est ce que packages sont pour.
Eh bien, vous pourriez finir par importer deux paquets ayant la classe "User". Cela causerait probablement des maux de tête. – rkg
@Ravi, mais si cela devait être un problème, alors vous pourriez vous référer aux classes par leurs noms complets. –
@Michael: C'est vrai, mais je pense que cela nuit à la lisibilité du code. – rkg
L'utilisation de noms communs n'est pas une mauvaise pratique, jusqu'à ce que vous décriviez le nom comme tel à la fonctionnalité de la classe. gardez à l'esprit de créer les paquets appropriés qui peuvent définir votre classe plus spécifiquement.
Je vous suggère de préfixer définitivement un terme spécifique d'application à votre classe d'utilisateur. "Utilisateur" est trop commun et vague. Vous pourriez facilement utiliser l'API qui a la classe "User" ou l'interface. Bien que les derniers IDE rendent relativement facile de refactoriser votre code, il serait plus propre et plus facile si vous avez une classe "User" spécifique à l'application.
Je suis d'accord avec vous. Il commence à devenir un gâchis quand vous avez plusieurs classes avec le même nom. –
Vous devez utiliser Java package
s pour éviter les conflits de noms. Il n'y a rien de mal à utiliser un nom commun, assurez-vous simplement de le mettre dans son propre paquet. Par exemple, vous pourriez avoir la structure suivante:
com/
yourwebsite/
yourproject/
userdata/
User.java
Vous commencez alors le fichier "User.java" avec:
package com.yourwebsite.yourproject.userdata;
Lorsque vous importez, vous devez utiliser:
import com.yourwebsite.yourproject.userdata.User;
Je suggère toujours que les gens ne nomment pas leurs classes "String" ou "List" ou "Collection" ou "Exception" ou "Connexion" ou "Session". Je suis bien avec "Utilisateur", si seulement parce qu'il n'est pas couramment utilisé ailleurs (dans mon espace de travail actuel, qui a beaucoup de bibliothèques, il n'y en a qu'un dans "com.sun.tools.internals ..." et un dans "org" .hsqldb ", dont vous n'êtes pas susceptible d'utiliser). – Thilo
@Thilo, oui, je n'utiliserais certainement pas les noms qui sont déjà utilisés dans les paquets "java. *" Ou "javax. *", Mais il n'y a pas de classe User dans l'API Java au moment de l'écriture. –
J'essaie toujours d'utiliser des noms communs comme Utilisateur pour plus de clarté. Assurez-vous simplement que les noms sont tirés du domaine du problème et du vocabulaire du projet existant. Soyez attentif aux ambiguïtés et, le cas échéant, changez le nom de la classe. Les IDE modernes avec prise en charge du refactoring automatisé facilitent la tâche.
Oui. Avoir le bon nom de classe dans le paquet approprié sera la bonne chose. Les IDE comme IntelliJ supportent très bien la recherche et l'importation de noms de classes - ils peuvent même être automatiques. – Jayan
Ce nom est peu susceptible d'être utilisé par une API publique. Une application peut donc l'utiliser.
- 1. Nommage des clés dans les fichiers de ressources Meilleure pratique
- 2. Meilleure pratique utilisateur SQL Server
- 3. Pratique de nommage pour les objets d'une classe en Python
- 4. Meilleure pratique pour Java IPC
- 5. Meilleure pratique: gérer l'erreur de classe
- 6. Meilleure pratique d'architecture Mysql: attributs utilisateur
- 7. Meilleure pratique pour rechercher Java Enum
- 8. Conventions de nommage et de nommage Java Spring MVC
- 9. Android: Meilleure pratique pour les interfaces utilisateur sensibles
- 10. Single SignOn - Meilleure pratique
- 11. Classes d'organisation - Meilleure pratique?
- 12. Meilleure pratique pour le panoramique/zoom d'un contrôle utilisateur?
- 13. meilleure pratique pour créer un ID utilisateur générique
- 14. Meilleure pratique pour l'interface utilisateur Web à sélection multiple?
- 15. quelle est la meilleure pratique de Java pour gérer les
- 16. Meilleure pratique pour utiliser plusieurs processeurs XML?
- 17. release Vs nil - Meilleure pratique
- 18. Meilleure pratique d'utilisation de org.apache.commons.logging.LogFactory.getLog
- 19. Meilleure pratique de test SQL
- 20. Webapp meilleure pratique template_dict
- 21. Dojo Layers meilleure pratique
- 22. cmake meilleure pratique
- 23. SQL Select Meilleure pratique
- 24. Comportement de l'héritage général/meilleure pratique voulue
- 25. Meilleure pratique de localisation de contenu
- 26. MVC question de la meilleure pratique
- 27. Meilleure pratique pour exposer des services Web
- 28. convention de nommage mysql
- 29. Meilleure pratique avec les constructeurs JFrame?
- 30. vérifier la convention de nommage dans Java
est ce projet destiné à être utilisé comme une bibliothèque par d'autres projets (et l'utilisateur va être une classe publique)? – Thilo
Non. Projet web propriétaire. Je suis plutôt à l'aise avec le fait de garder User comme utilisateur, mais nous avons aussi un autre concept de domaine d'une session. Je ne l'ai pas encore compris, mais nommer quelqu'un me donne déjà des brûlures d'estomac. – Steve