<rmcreative>

RSS

Какой PHP фреймворк вы используете и почему?

23 марта 2011

На хабре появился довольно интересный опрос с обсуждением на горячую тему. Ответы немного удивили:

  • Yii на втором месте после Zend Framework. Думал, там будет Symfony или CodeIgniter.
  • Очень многие выбрали «самописный фреймворк». Дело, конечно, хорошее. Опыт наберётся быстро. Но для работодателя коммерчески невыгодно. Конечно, если задачи очень специфичны, вроде создания игр, то свой фреймворк может быть оправданным решением.
  • Подавляющее большинство «пишет на PHP, но не использует фреймворки». То ли лапшекодеров на хабре много, то ли все делают игры… не ясно.

Обсуждаем и голосуем

Комментарии RSS

  1. №4159
    mktums
    mktums 23.03.2011, 21:01:08

    Странно что нет поля "переехал на Django" =)

  2. №4160
    Sam
    Sam 23.03.2011, 21:10:46

    Почему? А «Другой, отпишу в комментах»?

  3. №4161
    Али
    Али 23.03.2011, 21:12:25

    Согласен с выше добавленным комментарием =)))

  4. №4162
    Timlar
    Timlar 23.03.2011, 23:19:35

    Я указал Yii :) Как истинный патриот :)

  5. №4164
    Максим
    Максим 24.03.2011, 0:38:05

    Про лапшекодеров понравилось ) Согласен с каждым пунктом.

  6. №4166
    s0ber
    s0ber 24.03.2011, 2:21:11

    Под фреймворком имеется ввиду набор классов и использование тех или иных шаблонов и паттернов программирования? :)

    А то получается что те, кто пишет, что не используют - действительно быдлокодеры)

  7. №4167
    mrix
    mrix 24.03.2011, 5:31:04

    Выбрал Yii, потому что в остальных не нравился принцип названия классов. Присмотрелся, оказалось, что действительно неплохой фрэймворк. Сейчас уверен, что сделал правильный выбор.

  8. №4168
    BOLVERIN
    BOLVERIN 24.03.2011, 5:36:51

    юзаю свой какбэ фреймворк. интересно, удобно + классная практика еще Yii юзал и мне он очень понравился а на хабре меня нету - не судьба похоливарить в камментах)

  9. №4169
    Владислав
    Владислав 24.03.2011, 8:15:13

    Для себя тоже Yii использую, а на работе у нас проект на Zend.

  10. №4170
    AmdY
    AmdY 24.03.2011, 11:07:00

    на хабре нерепрезентативная выборка, ресурс стал слишком уж непрограммерским, чтобы к голосованию относиться серьёзно. Удивительно, что CI оказался ниже Yii. Результаты только отражают порог входа во фреймворк,.

  11. №4171
    Макс
    Макс 24.03.2011, 12:35:38

    Я вообщем за фреймы для большинства сайтов, они экономят хорошо время. Нативный пых, без правильных рецептов, паттернов превратится в говнокод.

  12. №4173
    Sam
    Sam 24.03.2011, 13:55:48

    AmdY, да вот меня CI тоже удивил…

  13. №4174
    BOLVERIN
    BOLVERIN 24.03.2011, 13:59:35

    у CI вроде как спад последнее время. много матюков и миграций. по крайней мере у меня такое сложилось мнение

  14. №4175
    PitBult
    PitBult 24.03.2011, 14:36:33

    Однозначно Yii - лидер. По простоте и удобстве использования, генерации кода и админки, он - прелесть. Переехал на него с CI год назад и не жалею. Zend громоздкий и уступает шустрому Yii в некоторых важных для меня вещах.

  15. №4179
    Motorist
    Motorist 24.03.2011, 17:29:51

    ZF тяжелая неповоротливая машина. ДЛя высоко нагруженных проектов не подходит. Там даже сами разработчики на какой то конференции об этом говорили. В Yii мало шагов делают в сторону ajax.

  16. №4180
    Timlar
    Timlar 24.03.2011, 17:31:44

    В Yii мало шагов делают в сторону ajax.

    А в чем, собственно, проблема? По-моему, весь необходимый функционал имеется.

  17. №4181
    BOLVERIN
    BOLVERIN 24.03.2011, 17:36:00

    чем Yii не угодил любителю аджаксов? стырить либу из IPB и вперед - покорять вершины AJAX

  18. №4182
    Timlar
    Timlar 24.03.2011, 17:50:27

    Зачем что-то "тырить"? json_encode() еще никто не отменял :)

  19. №4183
    Motorist
    Motorist 24.03.2011, 17:50:49

    Да как то мало встроеных фишечек =) Да Вы на форуме посмотрите, сколько народу по этой теме вопросов поднимает. Особенно с валидацией, всякие костыли пишет и т.д.

  20. №4184
    Timlar
    Timlar 24.03.2011, 17:50:55

    ... в купе с jQuery.

  21. №4185
    BOLVERIN
    BOLVERIN 24.03.2011, 17:52:01

    с валидацией и я костыли писал, но в основном из-за того что невкурил толком Yii так как опыта было маловато

  22. №4186
    Timlar
    Timlar 24.03.2011, 17:53:16

    Все, что касается ajaxa, это уже больше к jQuery, нежели к Yii. ИМХО.

  23. №4187
    BOLVERIN
    BOLVERIN 24.03.2011, 17:54:51

    2 Timlar: это если подход "мухи отдельно - пирожки отдельно" но таким подходом часто пренебрегают

  24. №4188
    Motorist
    Motorist 24.03.2011, 17:56:00

    Ну так в Yii валидация идет в связке с моделью, как бы не хотелось бы дублировать...

  25. №4189
    BOLVERIN
    BOLVERIN 24.03.2011, 17:58:39

    а сваять обработчик дополнительно нельзя?

  26. №4190
    Timlar
    Timlar 24.03.2011, 17:59:27

    2 BOLVERIN: Это скорее зависит от сложности проекта. Если нужно сделать "на коленке" простенький сайтик, то естественно, подойдут решения "искаропки", а если требуется какой-то экзотический функционал, что в любом случае его нужно дописывать. Утверждение о мухах тут не уместно.

  27. №4191
    s0ber
    s0ber 24.03.2011, 18:02:17

    Омг, тут прогеры, или кто?) Смешно читать жалобы, которые выше пишут)

  28. №4192
    BOLVERIN
    BOLVERIN 24.03.2011, 18:04:08

    2 Timlar: э? а что мешает цепляться по id и классам к html-ю и на этом строить AJAX? а запросы слать на обработчики или я что-то не понимаю?

  29. №4193
    Timlar
    Timlar 24.03.2011, 18:12:10

    2 BOLVERIN: Кажется, мы говорим об одном и том же, только каждый со своей колокольни. :)

  30. №4194
    BOLVERIN
    BOLVERIN 24.03.2011, 18:12:58

    2 Timlar: вполне возможно)

  31. №4195
    Psih
    Psih 24.03.2011, 18:31:40

    Ну вообще в Yii валидация AJAX'овая легко строиться с rules модели. Просто нужно использовать CActiveForm + enableAjaxValidation = true и в action проверять - если AJAX запрос, то делать validate + end request, не доходя до сохранения данных модели.

    Всё прекрасно валидируется :)

  32. №4196
    Timlar
    Timlar 24.03.2011, 18:37:59

    2 Psih: Я как раз и говорил о том, что всё необходимое уже есть, всего лишь нужно разобраться, как с этим всем работать. Собственно, поэтому и задают вопросы на форуме. Возможно, стоит более детально осветить эту тему в руководстве.

  33. №4197
    Psih
    Psih 24.03.2011, 19:16:24

    Timlar Да, то что дока не очень хорошо всё это объясняет - есть такое. К сожалению своего времени не хватает что бы сильно чем то помочь :(

  34. №4198
    BOLVERIN
    BOLVERIN 24.03.2011, 19:49:26

    у Yii еще хорошие доки + комьюнити норм, а вот у коханы писец какой-то

  35. №4202
    Misha
    Misha 25.03.2011, 11:38:50

    А мне за CakePHP обидно(( как-то уж совсем тускло(( Тут конечно очевидно, что опрос на хабре показал явную публику среди программистов - лапшекодеры.

    п.с. И этот вывод не из-за Cake'а))) а всего лишь из-за - "Пишу на PHP, но не использую фреймворки."

    да-да, увы это так...

  36. №4203
    Sam
    Sam 25.03.2011, 12:03:32

    Misha, CakePHP изрядно попортил себе репутацию первыми версиями.

  37. №4208
    AmdY
    AmdY 25.03.2011, 14:38:56

    Misha, Cake как и Symfony - высокий порог, много договорённостей и правил. собственно, Symfony и забрала большинство разработчиков, которые могли бы писать и голосовать за CakePHP.

  38. №4214
    skiedr
    skiedr 26.03.2011, 12:35:38

    Удивило сравнительно небольшое количество использующих cakephp. Все же по удобству active record он даст фору yii.

  39. №4215
    Timlar
    Timlar 26.03.2011, 13:17:00

    2 skiedr: А можно на примере? Просто я с cakephp не работал, интересно.

  40. №4233
    Ekstazi
    Ekstazi 28.03.2011, 16:40:01

    2 skiedr, В корне не соглашусь. Юзал печенюшный AR, он значительно не понятней чем у yii + все через св-ва модели, что тоже не понравилось. Вообще yii лучше продуман чем cake.

  41. №4234
    BOLVERIN
    BOLVERIN 28.03.2011, 16:55:06

    насколько я помню у Yii свой родной AR. т.е. для работы именно с Yii он наиболее удобен и понятен

  42. №4235
    Sam
    Sam 28.03.2011, 19:37:52

    BOLVERIN, ну у CakePHP тоже свой AR.

  43. №4236
    BOLVERIN
    BOLVERIN 28.03.2011, 19:40:29

    2 Sam: не знал. я не интересовался этим фреймворком по той причине что были уж очень "хорошие" отзывы по поводу его безопасности) в КНУБА(универ киевский) даж рассматривали его на пример как делать нельзя)

  44. №4237
    Sam
    Sam 28.03.2011, 21:13:12

    Да, ляпов в нём было много во времена версии 1.1.

  45. №4238
    BOLVERIN
    BOLVERIN 28.03.2011, 21:21:30

    2 Sam: к сожалению я мало того что не участвовал в этом разборе, но и не знаю какую именно версию разбирали)) хотя сейчас вот активно интересуюсь архитектурой фреймворков так как занимаюсь своей небольшой cmf-кой и хорошие идеи не помешают) роутинг, например, спер из Yii - уж больно нравится :)

  46. №5581
    ainu
    ainu 04.11.2011, 18:17:34

    Yii тоже когда то был велсипедом. и CI тоже

  47. №5582
    Sam
    Sam 04.11.2011, 21:48:37

    Yii никогда велосипедом не был. Он вырос из Prado.

  48. №5830
    qwenchi
    qwenchi 05.02.2012, 23:22:18

    Люди почему не любят кейк? Мне его AR очень нравится

  49. №5831
    Sam
    Sam 06.02.2012, 0:39:26

    qwenchi, всё познаётся в сравнении…

  50. №5837
    SkieDr
    SkieDr 06.02.2012, 14:57:22

    Не любят, потому что посмотрели однажды на старую его версию сделали выводы и стали использовать что то другое. А ведь уже cake 2.1 скоро выйдет. Там и объектная модель будет.

  51. №8761
    Mr. PLutov
    Mr. PLutov 14.01.2014, 22:27:54

    ZF, о нем и пишу здесь: plutov.by/

  52. №10287
    M-A-X
    M-A-X 03.03.2016, 12:52:56

    Люди не используют фреймворки, потому что это жутко неудобно.

    Вот написал статью о фреймворках: blog.kpitv.net/article/frameworks-1/

  53. №10288
    Sam
    Sam 03.03.2016, 22:54:20

    M-A-X, вы не разобрались. Большинство аргументов не верны.

  54. №10291
    M-A-X
    M-A-X 04.03.2016, 13:14:33

    Ну да, ну да, особенно касательно неверного трактования МВЦ.

  55. №10300
    Sam
    Sam 06.03.2016, 0:46:08

    Трактование MVC в 2006 в версии 1.1 (именно тогда был написан тот документ, на который вы ссылаетесь) да, немного страдало. В 2.0 с этим всё нормально.

  56. №10302
    M-A-X
    M-A-X 06.03.2016, 16:45:47
    1. Я начинал программировать для веба в 2008 году. Хорошо, что начинал писать код сам, а не понядеялся на парней с растопыренными пальцами. Иногда читал произведения других парней о крутости ООП, и переписывал некоторые участки слепо на ООП. Выходила такая фиговина, что я не сразу понимал как оно работает. Я не против ООП, просто это не волшебная пилюля и не что-то необычное, как это приподносится. Всего должно быть в меру, по потребности, со знанием дела. А не так - только ООП, только МВЦ, только фреймворки.

    2. И что мне теперь переписывать весь код на Yii 2 (к примеру) из-за того, что авторы фреймворков поумнели? Если я сам могу создать каркас, который не уступает фреймворку, то зачем мне надеятся и зависеть от него?

    3. Мои модели все равно не такие, как в Yii2, они не такие жирные, чтоли :) В большинстве случаев, можно сказать, что у меня моделей и нету. Их функции прекрасно выполняются базовым классом сущностей БД :)

  57. №10303
    M-A-X
    M-A-X 06.03.2016, 16:53:31

    Но тут code.tutsplus.com/tutorials/how-to-program-with-yii2-exploring-mvc-forms-and-layouts--cms-22682 пишут об yii2: "In MVC practice, you build models "heavy" and controllers and views light." Объять необъятное :)

  58. №10304
    Sam
    Sam 07.03.2016, 14:38:05
    1. Согласен. ООП ради ООП смысла не имеет.
    2. Никто не заставляет. Я просто указал на тот факт, что есть разница между надёжностью своего кода, который используется в десятке проектов и, скорее всего, даже тестами не покрыт и кодом фреймворка, который используют в десятках тысяч проектов и который прилично покрыт тестами и постоянно поддерживается.

    На tuts+ нормально написано. Модельный слой должен быть толстым, а контроллеры и view тоньше.

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.