Я собираюсь создать класс User для моего проекта. Любые мнения относительно того, является ли плохая практика создавать такой общепринятый класс? Я мог бы дополнить его префиксом, специфичным для моего проекта.Java «Пользователь» класс именования лучшей практики?
ответ
Это то, что packages предназначено для.
Ну, вы можете в конечном итоге импортировать два пакета с классом «Пользователь». Это может вызвать некоторые головные боли. – rkg
@Ravi, но если это будет проблемой, вы можете обратиться к классам по их полностью квалифицированным именам. –
@Michael: Это правда, но я чувствую, что это ухудшает читаемость кода. – rkg
Использование общих имен не является плохой практикой до тех пор, пока вы не укажете имя как функциональность класса. имейте в виду создание правильных пакетов, которые могут более точно определить ваш класс.
Я бы посоветовал вам определенно назначить конкретный термин для вашего класса User. «Пользователь» слишком распространен и расплывчатый. Вы можете легко использовать API, который имеет класс «Пользователь» или интерфейс. Хотя последние IDE упрощают реорганизацию вашего кода, было бы проще и проще, если у вас есть определенный для пользователя класс «Пользователь».
Я согласен с тобой. Это начинает беспорядок, когда у вас есть несколько классов с одинаковым именем. –
Вы должны использовать Java package
s, чтобы избежать конфликтов имен. Нет ничего плохого в использовании общего имени, просто поставьте его в свой собственный пакет. Например, вы могли бы иметь следующую структуру:
com/
yourwebsite/
yourproject/
userdata/
User.java
Вы затем начать файл "User.java" с:
package com.yourwebsite.yourproject.userdata;
При импорте, вы будете использовать:
import com.yourwebsite.yourproject.userdata.User;
Я бы все же предположил, что люди не называют свои классы «String» или «List» или «Collection» или «Exception» или «Connection» или «Session». У меня все в порядке с «User», хотя бы потому, что оно не используется обычно в другом месте (в моей текущей рабочей области, которая имеет много библиотек, есть только одна в «com.sun.tools.internals ...», а другая в «org» .hsqldb ", ни один из которых вы, скорее всего, не используете). – Thilo
@Thilo, да, я, конечно, не буду использовать имена, которые уже используются в каких-либо пакетах «java. *» Или «javax. *», Но в Java API на данный момент нет класса User. –
Я всегда стараюсь использовать общие имена, такие как User для ясности. Просто убедитесь, что имена взяты из проблемного домена и существующего словаря проекта. Будьте бдительны для двусмысленностей, и если кто-то возникает, измените имя класса. Современные IDE с автоматизированной поддержкой рефакторинга упрощают работу.
Да. Правильное имя класса в соответствующем пакете будет правильным. IDE, такие как IntelliJ, очень хорошо поддерживают поиск и импорт имен классов - это может быть даже автоматическим. – Jayan
Это имя вряд ли будет использоваться каким-либо общедоступным API, поэтому его можно использовать.
- 1. Java-интерфейс бросает Исключение лучшей практики
- 2. Django лучшей практики. Формы
- 3. CSS макет лучшей практики
- 4. Использование лучшей практики Javascript
- 5. Методы лучшей практики - VB.NET
- 6. Открытие лучшей практики DB
- 7. Блокировка лучшей практики s3-объекта?
- 8. MVC Entity разделение лучшей практики
- 9. Azure ACS - реализация лучшей практики
- 10. Рубин Примеси ищет лучшей практики
- 11. Rails лучшие практики/схемы именования
- 12. MVP шаблон дизайна лучшей практики
- 13. андроид сервиса GPS лучшей практики
- 14. Подтверждение лучшей практики: удаление EventListeners
- 15. коллекция Backbone/модель лучшей практики
- 16. API изменить дизайн лучшей практики
- 17. Ресурсы для лучшей практики Grails
- 18. Вопросы, касающиеся лучшей практики WIX
- 19. Play 2.4-Java - Actor Message Protocol лучшей практики
- 20. HTML5 и идентификатор именования наилучшей практики
- 21. Вызов SProcs из лучшей практики EF
- 22. Определение репозитория для лучшей практики MVC
- 23. Условно-сериализовать коллекцию полевой лучшей практики?
- 24. MVC ViewModel между представлениями лучшей практики
- 25. Java Использование переключателя переменной в нескольких случаях лучшей практики
- 26. xhtml/css лучшие практики именования divs
- 27. STL Векторизованная карта - Поиск лучшей практики
- 28. Найти и заменить значение лучшей практики
- 29. Комментарии в конце метода лучшей практики?
- 30. Предпочтительное форматирование для этой/лучшей практики?
Этот проект предназначен для использования в качестве библиотеки другими проектами (и пользователь будет публичным классом)? – Thilo
№ Проприетарный веб-проект. Мне на самом деле довольно удобно сохранять User как User, но у нас также есть другая концепция сеанса. Пока не дошли до этого, но называть это уже дает мне изжога. – Steve