0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 5
|
|||||||||||
1 | |||||||||||
Symfony 2: как правильно организовать бизнес-логику?21.09.2013, 14:08. Показов 2241. Ответов 6
Метки нет (Все метки)
Всем привет!
Вот я недавно начал один проект на Symfony 2 и сразу же столкнулся одной проблемой - организацией бизнес-логики. Например, у меня есть сущности User, Scene и Game. Правильно ли будет такой подход:
Какая разница между таким подходом и передачей в качестве аргумента зарегистрировав класса в качестве сервиса:
0
|
21.09.2013, 14:08 | |
Ответы с готовыми решениями:
6
Как лучше организовать бизнес-логику и сильно связанные сущности Правильно организовать логику событий при взаимодействии набора данных и потоков Как отделить бизнес логику от UI ? Как организовать логику приложения WebView |
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
|
|
22.09.2013, 11:19 | 2 |
Если тебе нравится такой подход, то Doctrine не лучший вариант.
Используй AR: Propel либо надстройки над доктриной. В Symfony принято использовать DI.
1
|
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 5
|
|
22.09.2013, 12:29 [ТС] | 3 |
За кулисами не происходит ли тоже самое, когда используем DI (единственное отличие - допускается создать только одного экземпляра)?
А вообще, какие еще есть варианты организации бизнес-логики?
0
|
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
|
|
22.09.2013, 13:36 | 4 |
satmurat,
DI использует контейнер. Ты и сам можешь положить что-то в контейнер и заставить DI это использовать.
Можно работать с пустыми сущностями в различных сервисах, в которых и будет логика. А можно положить логику в сущности. Второй вариант менее гибок, но более удобен.
0
|
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 5
|
|||||||||||
22.09.2013, 19:31 [ТС] | 5 | ||||||||||
OnYourLips,
В официальных туториалах рекомендуют связку с сущностями и БЛ через DI. То есть, таким образом
0
|
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
|
|
22.09.2013, 19:37 | 6 |
При использовании Doctrine - DI.
Сущность ничего не должна знать о EM. Я бы не стал использовать Symfony для проектов дешевле нескольких миллионов.
0
|
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 5
|
||||||
22.10.2013, 10:25 [ТС] | 7 | |||||
На данный момент сложилась такая ситуация, что почти все модели в качестве аргумента в конструктор принимают EntitiyManager. Без него никак. Можно было бы через DI, но в некоторых моделях создаются экземпляры таких классов по логике. Например,
0
|
22.10.2013, 10:25 | |
22.10.2013, 10:25 | |
Помогаю со студенческими работами здесь
7
Как организовать логику работы двух CheckBox Создать программу тестирования, как организовать логику Пишу шашки на C#, как организовать логику игры Как организовать подобную логику страниц/рубрик Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |