Koc
Новичок
Сабж. Я наверно слишком привередлив.
Термины, сокращения:
фв - framework
сф2 - Symfony2
зф, зф2 - Zend Framework, Zend Framework 2
С первого дня весны я перехожу на другую работу, где мне нужно будет переписать один проектец. Проектец не то, что бы слишком крупный, но с нуля такого я еще не писал + в последствии на его движок нужно будет перенести еще пару-тройку других сайтов.
Если разрабатываем заново, то логично использовать 5.3 и какой-нить фв. Из фреймворков под 5.3 на сегодняшний момент только сф2 в более-менее вменяемом состоянии. Собственно говоря а что кроме нее? ЗФ2? - доков ваще нету. Литиум? - так он только разрабатывается.
Что меня стремает в сф2 и что не нравится:
1) Request:
1.1) $request->query; $request->post // query, post - паблик свойства. Какого черта это паблик? Я геттер хочу
1.2) то, что сессию можно получить из реквеста. В моем понимании сессия - это самостоятельный компонент, который зависит от реквеста (получение кук или ?SID) и использует респонс (посылка куков).
1.2.1) Вообще сессии в сф2 какие-то слабые. Мне не нужны сессии из зф, но хотя-бы неймспейсы можно было добавить, а?
1.2.2) Ну и я может хочу для сериализации сессий igbinary использовать. А тут нету интерфейса сериалайзера
1.3) Получение base_path, base_url и прочих - это жуть. Код взят из зф, довольно паршиво смотрится. Имхо это можно более красиво переписать
2) Routing: слабо, очень слабо. Он вообще тупо ничего не умеет. Мне нужно что-то наподобие зф-ного.
3) Security: не хватает документации, не могу сообразить как отдельно заюзать.
4) Forms: вроде прикольно, но зависит от Request, что в принципе логично, но мне не подходит
5) Translator как-то не нравится. Что именно не так - сказать затрудняюсь, но иначе я его интерфейс вижу. Взять хотя бы такое дело (plural translation):
Это что, получается, я должен помнить plural-forms когда пишу код? А если дефолтный язык у нас русский, и тут не 2 формы а 3?
6) Кеширование. Это что еще за бубуйня? То есть делать субзапросы к вебсерверу типа быстрее чем из нормального кеша доставать данные? Вот тему тут у вас нашел по этому поводу http://phpclub.ru/talk/threads/Библиотеку-для-парсинга-ssi.66183/
А в целом конечно очень прикольно. Организация конфигурации, бандлов - яд. Бандл добавляет свои комманды в cli-tasks, профайлеру и логгеру отсылает данные.
Как же мне быть, господа? Что я знаю точно, так это то, что буду использовать Console, DI, EventDispatcher и Доктрину2. Хотя в последней мне не хватает Named Scopes. Ну и роутинг скорее всего свой перепишу, собственно говоря он тут уже проскакивал в теме о вакансии на TDD. А с остальным как быть? Реквест хочу свой. А если свой - то формы уйдут.
Термины, сокращения:
фв - framework
сф2 - Symfony2
зф, зф2 - Zend Framework, Zend Framework 2
С первого дня весны я перехожу на другую работу, где мне нужно будет переписать один проектец. Проектец не то, что бы слишком крупный, но с нуля такого я еще не писал + в последствии на его движок нужно будет перенести еще пару-тройку других сайтов.
Если разрабатываем заново, то логично использовать 5.3 и какой-нить фв. Из фреймворков под 5.3 на сегодняшний момент только сф2 в более-менее вменяемом состоянии. Собственно говоря а что кроме нее? ЗФ2? - доков ваще нету. Литиум? - так он только разрабатывается.
Что меня стремает в сф2 и что не нравится:
1) Request:
1.1) $request->query; $request->post // query, post - паблик свойства. Какого черта это паблик? Я геттер хочу
1.2) то, что сессию можно получить из реквеста. В моем понимании сессия - это самостоятельный компонент, который зависит от реквеста (получение кук или ?SID) и использует респонс (посылка куков).
1.2.1) Вообще сессии в сф2 какие-то слабые. Мне не нужны сессии из зф, но хотя-бы неймспейсы можно было добавить, а?
1.2.2) Ну и я может хочу для сериализации сессий igbinary использовать. А тут нету интерфейса сериалайзера
1.3) Получение base_path, base_url и прочих - это жуть. Код взят из зф, довольно паршиво смотрится. Имхо это можно более красиво переписать
2) Routing: слабо, очень слабо. Он вообще тупо ничего не умеет. Мне нужно что-то наподобие зф-ного.
3) Security: не хватает документации, не могу сообразить как отдельно заюзать.
4) Forms: вроде прикольно, но зависит от Request, что в принципе логично, но мне не подходит
5) Translator как-то не нравится. Что именно не так - сказать затрудняюсь, но иначе я его интерфейс вижу. Взять хотя бы такое дело (plural translation):
Код:
'{0} There is no apples|{1} There is one apple|]1,Inf[ There are {{ count }} apples'
6) Кеширование. Это что еще за бубуйня? То есть делать субзапросы к вебсерверу типа быстрее чем из нормального кеша доставать данные? Вот тему тут у вас нашел по этому поводу http://phpclub.ru/talk/threads/Библиотеку-для-парсинга-ssi.66183/
А в целом конечно очень прикольно. Организация конфигурации, бандлов - яд. Бандл добавляет свои комманды в cli-tasks, профайлеру и логгеру отсылает данные.
Как же мне быть, господа? Что я знаю точно, так это то, что буду использовать Console, DI, EventDispatcher и Доктрину2. Хотя в последней мне не хватает Named Scopes. Ну и роутинг скорее всего свой перепишу, собственно говоря он тут уже проскакивал в теме о вакансии на TDD. А с остальным как быть? Реквест хочу свой. А если свой - то формы уйдут.