Соглашения об именах управляемых компонентов JSF - PullRequest
19 голосов
/ 18 апреля 2011

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

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

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

1 Ответ

26 голосов
/ 18 апреля 2011

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

  • FooBean
  • FooBacking
  • FooManager
  • FooController
  • FooManagedBean

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

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

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

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

В любом случае, это довольно субъективный вопрос, на который вряд ли можно объективно ответить с помощью The One AndПравильный ответ.Для меня и для кого-то еще это не имеет большого значения, если вы согласны с этим на протяжении всего проекта.

...