Соглашение об именах для интерфейса для доступа к одному полю
Мои классы имеют несколько полей и методов доступа. НапримерgetId()
а также setId(Long id)
а такжеgetTimestamp()
а также setTimestamp(Instant time)
Я хочу абстрагировать эти методы в отдельных интерфейсах. Я ищу лучшую практику, чтобы назвать эти интерфейсы
Я предполагаю, что возможные предложения:
HasId
или же WithId
или же Timestamped
(но это не работает с ID, так как вы не можете Ided
)
Существует ли стандартное соглашение об именах для этих интерфейсов?
1 ответ
Я не думаю, что здесь есть лучшая практика, так как это зависит от варианта использования. Помните, что интерфейс - это "контракт", поэтому, называя их, думайте о них как о контрактах.
В вашем примере (id) я видел людей, использующих "IsIdentified", "Identified", "Identifiable", "WithIdentifier"... На самом деле ни один из них не является неправильным, но я предпочитаю использовать суффикс "-able".
Не воспринимайте это как "все интерфейсы должны иметь суффикс -able". Что бы ни делало ваш код более понятным, а назначение интерфейса само за себя:)