Согласно документации Symfony2:
В Symfony2 комплект похож на плагин, за исключением того, что весь код в
Ваше приложение будет жить внутри пакета. Связка больше ничего
чем каталог, в котором находится все, что связано с определенной функцией,
включая классы PHP, конфигурацию и даже таблицы стилей и
Файлы Javascript (см. Система комплектов).
Лично, следуя этому описанию, я бы настроил SystemUserBundle так, чтобы он содержал модель Doctrine2 и шаблоны / js / css / images, которые конкретно относятся к управлению клиентами, а не разделял их на CoreBundle и ResourceBundle. Однако разделение вашего приложения на SystemUserBundle и MessagingBundle звучит как разумный подход.
Мне нравится думать об этом таким образом - инкапсулирует ли пакет какое-то поведение, которое мне может понадобиться, или я хочу подключиться к будущему (ым) проекту (-ам) Symfony, в котором я участвую. Например, может быть применимо управление клиентами в любое приложение и может использоваться повторно в разных проектах (именно поэтому существует расширяемый FOSUserBundle).
Я не думаю, что документы Symfony2 подробно разбираются в пакетах (пока!), Но в случае, если вы не нашли все соответствующие разделы, мне известны следующие: