Она разделена в реализации, но логически оно связано: меня «заставляют» делать выбор как будет отображаться форма в том месте, где мне на это наплевать. Вот именно, что во вью должно решаться отобразить select, radio или checkbox; textarea или input: «я не хочу ничего решать, я хочу string»!
Да, например, с точки зрения данных choice, radio, checkbox, etc — это все одно и тоже, это коллекция/массив значений. И типы различают лишь внешнее представление. Тоже самое со всеми текстовыми полями.
Очень странно это услышать от меня: но в данном случае я с вами согласен — имхо, с формами перемудрили, попытавшись запихнуть в них сразу всю функциональность. (Зачем мешать логику мапинга данных и их отображения я до сих пор не пойму)
«Проблемы» реально спорные.
1) Про зависимости в целом верно. Неплохо было бы разделить бандл и саму реализацию. Это проблема многих йоханесовских бандлов.
2) Подозреваю, что проблема с null и частичным обновлением как раз тесно связаны: в виде юзкейза обнуления nullable поля.
Однако с точки зрения библиотеки сериализации это 2 разных вопроса и, имхо, первое должно быть реализовано в каком-то виде (мало ли какие юзкейзы могут быть). Однако, это поведение должно быть опциональным и настраиваемым, что указанный PR не выполнял (что мешало написать нормальный — хз).
Что касается «частичного» обновления — это в общем стандартный вопрос наличия метода типа «merge». И вопрос нужен ли он в самой библиотеке сериализации или нет тоже хороший. Но, что-то PR я не вижу на эту функциональность…
Я понял, поэтому и отметил, что как пример — хорошо. А как готовый результат можно использовать то, что уже написано, чтобы люди не кинулись копипастить себе в код =)
АОП интересная тема. Года 2 назад увлекался этой идеей в рамках PHP. Из современного:
1) Недавно вышел экстеншен для aop
2) Для PHP есть очень неплохой sf2 бандл (который в общем-то и отдельно можно попробовать использовать )
3) Аннотации все таки лучше использовать в DoctrineStyle
А разве размер ЗП вообще может быть коммерческой тайной? многие фирмы конечно вносят это в договор, но по-моему это не совсем законно. И попадает ли размер ЗП под «конфиденциальные данные»? То есть мне кажется, что работник вправе говорить сколько он получает, а вот никто другой не имеет права разглашать эти данные. Юристы что скажут?
1) Про зависимости в целом верно. Неплохо было бы разделить бандл и саму реализацию. Это проблема многих йоханесовских бандлов.
2) Подозреваю, что проблема с null и частичным обновлением как раз тесно связаны: в виде юзкейза обнуления nullable поля.
Однако с точки зрения библиотеки сериализации это 2 разных вопроса и, имхо, первое должно быть реализовано в каком-то виде (мало ли какие юзкейзы могут быть). Однако, это поведение должно быть опциональным и настраиваемым, что указанный PR не выполнял (что мешало написать нормальный — хз).
Что касается «частичного» обновления — это в общем стандартный вопрос наличия метода типа «merge». И вопрос нужен ли он в самой библиотеке сериализации или нет тоже хороший. Но, что-то PR я не вижу на эту функциональность…
Позабавило «Рассказать друзьям» =)
раз
два
1) Недавно вышел экстеншен для aop
2) Для PHP есть очень неплохой sf2 бандл (который в общем-то и отдельно можно попробовать использовать )
3) Аннотации все таки лучше использовать в DoctrineStyle