С фреймворком или без

12
L
На сайте с 13.10.2010
Offline
27
1214

Собираюсь сейчас писать большой медийный проект на php, рассчитанный на большую посещаемость и как-то неожиданно встал вопрос - использовать какой-либо фреймворк или нет. Дело в том, что я обычно использую чистый php и с фреймворками никогда не работал. В теории я конечно же знаю их преимущества, прошелся немного по документации и форумам. Думаю, что если и буду использовать фреймворк то Kohana, либо Zend.

А на чем вы пишете большие проекты? И в чем преимущества ваших подходов?

D
На сайте с 09.07.2011
Offline
28
#1
Loken:
А на чем вы пишете большие проекты? И в чем преимущества ваших подходов?

Symfony2 - скорость разработки и гибкие подходы, которые позволяют легко вносить изменение, ну и разумеется использование самый передовых технологий: контейнер сервисов, твиг, доктрина и т.д...

minor
На сайте с 04.10.2010
Offline
70
#2

Zend, Symfony, Yii фавориты на данный момент, надеюсь в будущем останется только 1=)

PHP experience 2 year, comprehend seo
Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#3

Для Yii насколько знаю куча-куча всяких плюшек, и вроде бы самое большое сообщество. Но еще считают классом ниже(условно!) чем Zend, Symfony.

Ну и смотря какой у Вас будет функционал и какая посещаемость. Для кого-то 10к - достижение, а для д.Васи 300к - обычное явление дней обыденных:)

Подпись))
W
На сайте с 29.04.2012
Offline
4
whi
#4
Милованов Ю.С:
и вроде бы самое большое сообщество.

думаю, вы несколько заблуждаетесь, ибо это мнение о самом большом сообществе, скорее-всего было вами услышано от какого-то Yii-сообщника (так как вы сами сказали, что с фреймвёрками не работали), который, как и полагается, свято верит в то, что он не одинок ;)

Если проект действительно хай-лоад, посмотрите на что-то вроде fatfree + twig можете прикрутить (хотя, если верить этому, то возможно стоит попробовать smarty в его новой инкарнации (v > 3.x ), но я его просто не люблю, поэтому про его улучшенную производительность ничего не могу сказать)

Но на практике, думаю, вам вполне подойдёт любой, из вышеперечисленных в теме движков, ибо, имхо, не такой хайлоад ;). Лично я, возможно бы заюзал Zend + centurion или kohana + gleez для бэкенда, так как мы с вами прекрасно понимаем, что в действительно в хайлоад проектах, движок играет далеко не первостепенную роль, и любой хайлоад располагает необходимым финансированием для приобретений правильного железа, облачных технологий и само-собой, подразумевает грамотный баланс и использование оп-код кэшируюших акселераторов ;)

Ayavryk
На сайте с 11.10.2003
Offline
209
#5
whi:
мнение о самом большом сообществе, скорее-всего было вами услышано от какого-то Yii-сообщника

http://yiiframework.ru/forum/ - 3027 пользователей с 2009

http://code-igniter.ru/forum/ - 2619 пользователей с 2008

http://zendframework.ru/forum/ - 2579 пользователей с 2008 (здесь же форум по Syphony)

Тынгыр, мынгыр, комсомол (http://erum.ru). Ехари, ехари, (жалобно) аяврик. /народная тунгусская песня/
IL
На сайте с 20.04.2007
Offline
435
#6

Ayavryk, а .com сообщества?

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
W
На сайте с 29.04.2012
Offline
4
whi
#7

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

Ayavryk
На сайте с 11.10.2003
Offline
209
#8
ivan-lev:
Ayavryk, а .com сообщества?

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

whi:
ну и что?

А ничего, вы сказали, я опроверг :)

Но все это офтопик. Вы верно заметили, что для высоконагруженных проектов выбор фреймворка дело не первостепенное. По крайней мере в тех проектах где участвовал (не в качестве программиста) с нагрузкой 200К-2000К хостов на php как правило было что-то собственное включая шаблонизаторы и ORM.

IL
На сайте с 20.04.2007
Offline
435
#9
Ayavryk:
Там форумы нестандартные сложно сравнивать.

Я к тому, что оценка в некотором роде не совсем корректная..

Ayavryk:
По крайней мере в тех проектах где участвовал (не в качестве программиста) с нагрузкой 200К-2000К хостов на php как правило было что-то собственное включая шаблонизаторы и ORM.

Тут дело такое, что нагрузка "из ниоткуда", как правило не берётся.. и на первых порах (на этапе проектирования и реализации базовой функциональности) не всегда можно утверждать, что проект выстрелит (не в том смысле, что на сайт вообще будут заходить, а в том, что дело дойдёт до меганагрузок)..

Как раз логически и подошли к ответу на вопрос..

Loken:
И в чем преимущества ваших подходов?

В чём преимущество фреймворка?

В том, что вполне рабочий прототип, как правило, быстрее и удобнее реализовать используя некоторый каркас (не обязательно полноценный "фреймворк".. это может быть набор классов/библиотек.. тот же ORM, шаблонизатор и тд.)

* естественно, это не повод делать "как попало", но и не особо заморачиваться преждевременной оптимизацией и углубляться в проектирование и реализацию вспомогательных неприоритетных функций

Просто фреймворк для большинства возникающих задач (различного уровня и сложности - пользователи, ACL, работа с БД, с кэшем /различные бэкенды/, обработка исключений, логирование , валидация форм и т.д.) может предложить готовое (или почти готовое) решение. С гораздо меньшим объёмом кода (вспомнить тот же JQuery - write less, do more). Плюс не только (или не столько) в объёме, сколько в том, что улучшается "читабельность" - можно сосредоточиться на "основном", а не на реализации отдельных моментов.

И, как правило, компоненты/классы гибко настраиваемые и готовые к взаимодействию между собой (_кэширование_ результата запроса к _БД_, логирование исключений)...

В случае "удачного" выбора фреймворка и правильного проектирования приложения не исключён вариант, что при увеличении нагрузки (где-то тут были трёхзначныеК цифры) не потребуется переезжать, а достаточно будет, к примеру, вынести БД на отдельную машины и переписать некоторые участки с ORM на "чистый" SQL.. чего-нибудь кэшировать.. В общем, обойтись без глобальных изменений.

Loken:
В теории я конечно же знаю их преимущества, прошелся немного по документации и форумам. Думаю, что если и буду использовать фреймворк то Kohana, либо Zend.

Как правило, чтобы более-менее разобраться в сколько-нибудь серьёзном фреймворке, понимать "что делаешь" и почему "именно так" (а что, можно ещё как-то о_О ?), просто прочитать доки - маловато... Особенно, если раньше не приходилось "общаться".

После пары-тройки проектов (возможно, не особо масштабных, но и не "хеловорлд") начинаешь входить во вкус и ощущать значительный прирост по скорости /если повезёт - огромное удовольствие от процесса../

L
На сайте с 13.10.2010
Offline
27
#10
Ayavryk:
Там форумы нестандартные сложно сравнивать. Но для меня наличие большого русскоязычного комьюнити и русской документации несомненный плюс. Компактный CI можно было поднимать и на англ., особенно когда другого ничего не было. Но монструозный Zend на который русской документации до сих пор нет как-то не очень хочется. Но тем кто учил англ в новейшие времена наверное должно быть пофиг. наверное.

По-мойму наличие русскоязычного комьюнити это весьма условный плюс. Я как-то пару лет общался по вопросам программирования на русскоязычных форумах (хоть и знал инглиш), потом перешел на англоязычные и просто офигел от того простора информации и доброжелательности пользователей, поэтому сейчас общаюсь по техническим вопросам преимущественно там. Хотя Yii заценю, спасибо).

А Zend вроде как считается самым популярным?

Было бы интересно узнать мнение о Kohana, а то мне его позавчера рекламировал знакомый программист.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий