Соглашения об именах, поддерживаемые JSF

В эти дни я работал с JSF, но есть «конвенция». Я сомневаюсь, что мне следует использовать. Во время работы с управляемыми компонентами люди использовали его как XxxxxManagedBean где префикс может быть любым именем, относящимся к вашей компании.

Вы так работали? В частности, мне это не нравится, несмотря на то, что поиск легко. Вы используете другое соглашение?

Спасибо, что ответили на это простое сомнение.

Нет строгого соглашения, определенного самим JSF. Я видел следующие соглашения:

  • FooBean
  • FooBacking
  • FooManager
  • FooController
  • FooManagedBean

Или даже просто Foo который затем помещается в определенный пакет, такой как com.example.controller , com.example.backing или даже com.example.view и т. Д.

Я сам, как правило, использую FooManager для приложений и компонентов с сессией (например, DataManager , UserManager , LocaleManager и т. Д.) И просто Foo , или, как это было предусмотрено моим текущим проектом, FooBacking (например, Login или LoginBacking ) для запроса и просмотра областей, каждый из которых обычно привязан к определенной и / или.

FooBean слишком расплывчата. Действительно, многие classы могут быть отмечены как javabeans. JSF-управляемые компоненты, объекты JPA, EJB, объекты передачи данных, объекты ценности и т. Д. Именование Bean не указывает на реальную ответственность classа каким-либо образом. Правда, я часто использую public class Bean или MyBean в MyBean моего общего кода в блогах или ответах на форуме / Q & A, но в реальном мире вам следует избегать этого.

FooManagedBean – это плохое имя IMO, оно не только слишком длинное и уродливое, но и технически управляемый компонент является экземпляром бэкбона, который управляется некоторыми фреймами (JSF в этом случае). Само определение classа действительно является бэк-компонентом, а не управляемым компонентом . Таким образом, FooBackingBean технически более корректен, но он все еще слишком длинный, а часть Bean немного зудит.

Во всяком случае, это довольно субъективный вопрос, на который вряд ли можно объективно ответить на вопрос «Один и правильный». Для меня или для кого-то еще не важно, что вы из этого делаете, если вы согласны с ним на протяжении всего проекта.

Interesting Posts

R: Перестановки и комбинации с / без замены и для отдельных / неявных элементов / мультимножества

Синтаксис Swift do-try-catch

Выполните M-Audio ProFire 610 как устройство 5.1

Случайное число из диапазона в сценарии Bash

Как включить скрипты, расположенные внутри папки node_modules?

xcrun: Ошибка: не удалось установить активный путь Xcode ‘/Volumes/Xcode/Xcode45-DP1.app/Contents/Developer’. (Данный файл или каталог отсутствует)

Есть ли 64-битное программное обеспечение для Windows, которое гораздо предпочтительнее 32-разрядной копии в 64-разрядной ОС?

Как заблокировать вызов iframe

Практическое использование битовых полей с нулевой длиной

Доверяющие файлы на моем NAS в XP

Плохой выбор данных с использованием VBScript, значений полей даты

Можно ли расширять расширения Google Chrome с помощью node.js?

gfortran для макетов: что делает mcmodel = medium?

Как загрузиться с SSD, но есть установки и домашняя папка на HDD

Использовать старый ноутбук в качестве монитора?

Давайте будем гением компьютера.