Никита К.
1594 сообщения
#15 лет назад
В общем, заинтересовался я такой проблемой, как PHP-фреймворки.

При разработке небольших сайтов-визиток и т.п они, как я понял, не сильно помогут, но при программировании чего-то более масштабного - очень даже.

Понятно, что все фреймворки разом осилить нереально. Хочу узнать мнения пользователей этих монстров: Что лучше, удобнее.

Немного освоил Zend, но мне он не очень нравится из наличия огромного количества ненужных библиотек. Хочется чего-то по-легче.

Может кто-нибудь что-то подскажет? Чем пользовался, как ощущения? Сразу говорю: Интересуют only PHP-frameworks, т.к ни Ruby, ни Python не освоил еще)

P.S
И еще: Есть ли фреймворки без архитектуры MVC? Не нравится она мне))
Виталий О.
403 сообщения
#15 лет назад
Про визитки это вы глупость сказали. сам пробывал учить YII, но не понравился. выучил CodeIgniter, хороший, легкий, отличная документация(есть на русском), много видео-уроков
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("Anexroid"):
Немного освоил Zend, но мне он не очень нравится из наличия огромного количества ненужных библиотек. Хочется чего-то по-легче.


Вы их можете просто удалить. Никто не заставляет их использовать.
Единственный минус - это занимаемое ими место. Но проблемы на хостинге с лишними 30 мб ни у одного из заказчиков не было.


2. Зачем осиливать все? Это все таки не иностранные языки. И 1го хватит.

Цитата ("Anexroid"):
Есть ли фреймворки без архитектуры MVC?


Это база хорошего кода. как ни крути. Но отделение вида от кода и моделей - это практика хорошего тона. Я сам когда начинал с трудом это все отделял и было сложно. Но затем понимаешь все прелести такого подхода
Артем Л.
11416 сообщений
#15 лет назад
Я тоже все хочу заняться, штука полезная... Думаю что выбрать CodeIgniter или Yii
Никита К.
1594 сообщения
#15 лет назад
Цитата ("CreoShopCms"):
Вы их можете просто удалить. Никто не заставляет их использовать.
Единственный минус - это занимаемое ими место. Но проблемы на хостинге с лишними 30 мб ни у одного из заказчиков не было.

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

Цитата ("CreoShopCms"):
2. Зачем осиливать все? Это все таки не иностранные языки. И 1го хватит.

Вот и я о чем. Думаю какой выбрать

Цитата ("Hungry_Hunter"):
Думаю что выбрать CodeIgniter или Yii

А почему именно из них выбираете?
Евгений О.
2989 сообщений
#15 лет назад
Фреймворк надо выбирать не по размерам, а по функционалу . Например по CodeIgniter: "CodeIgniter поставляется с полным спектром библиотек, которые выполняют наиболее частые задачи при разработке, такие как доступ к базе данных, отправка почты, проверка данных формы, сохранение сессий, манипулирование изображениями, работа с XML-RPC и многое другое." Вот и смотрите есть там что-то нужное для конкретного сайта или нет.
И потом не следует забывать, что значительные куски в любом фреймворке это просто обертки для стандарных процедур или наборов процедур. Например, вам не охота писать обращения к таблице через фунции библиотеки mysql, а в каком нибудь фреймворке это выполняется 1 строкой. Но только для вас, внутри фреймворка все равно будут вызовы всех необходимых фунций библиотеки mysql.
Никита К.
1594 сообщения
#15 лет назад
Цитата ("neadekvat"):
Как более совершенная альтернатива CodeIgniter можно посоветовать Kohana

Знакомый мне всё тоже Kohana рекламирует))

Цитата ("elosoft"):
И потом не следует забывать, что значительные куски в любом фреймворке это просто обертки для стандарных процедур или наборов процедур.

Да это то понятно. По сути, большинство классов, размещенных в public и т.д - это просто обёртки для того, что можно сделать стандартными функциями. Просто кто-то это уже написал за Вас и дал Вам готовый код. А о фреймворках и говорить нечего.

Цитата ("neadekvat"):
Да что там говорить. Создал себе простую функцию, обертку для mysql_real_escape_string. Во-первых, сделал ее покороче (mres) и во-вторых, данные не только экранируются, но и помещаются в одинарные кавычки - и не надо думать о кавычках при написании запроса, тупо вставляешь переменные и все.

Тем же самым занимаюсь просто при помощи набора классов: Для работы с MySQL, с captcha, с XML, с GD и т.д.
Артем Л.
11416 сообщений
#15 лет назад
Цитата ("Anexroid"):
А почему именно из них выбираете?

Сложно сказать, я сам еще толком не знаю с чего начать, да и времени пока нет. Просто про эти два слышал больше положительных отзывов...
Евгений О.
2989 сообщений
#15 лет назад
Цитата ("Anexroid"):
Просто кто-то это уже написал за Вас и дал Вам готовый код.

Это не всегда хорошо. Если возникает необходимость в изменениях фреймворк может стать источником проблем. К тому же здесь работает золотое правило: во сколько выигрываем во времени разработки, во столько проигрываем в объеме кода.
Никита К.
1594 сообщения
#15 лет назад
Цитата ("elosoft"):
во сколько выигрываем во времени разработки, во столько проигрываем в объеме.

Не понял: Ведь по сути, разрабатываем быстрее, т.к пишем меньше кода. Ведь код, имеющийся в фреймворке - не в счет.
Евгений О.
2989 сообщений
#15 лет назад
Цитата ("Anexroid"):
Ведь код, имеющийся в фреймворке - не в счет.

Это почему же? Например Delphi for PHP для старта пустой страницы создает примерно 300 кБ кода. Потом он конечно не так быстро растет, но все же...
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("Hungry_Hunter"):
Я тоже все хочу заняться, штука полезная... Думаю что выбрать CodeIgniter или Yii


Не подумайте, что ставлю ту платформу, на который сам пишу выше других.. Просто опишу факты, почему я выбрал когда-то её (ZF)

1) Её написали создатели PHP. Не думаю, что кто-то лучше чем они смогут написать фреймвок для своего же языка
2) Популярность больше, чем у других
3) Достаточная база материалов для изучения
4) Большие перспективы, т.к. он активно развивается
5) Мощность.
6) Наличие удобной оболочки от Эклипс
Никита К.
1594 сообщения
#15 лет назад
elosoft, но ведь этот код:
1. Пишем не мы. Так что нам, в сущности, всё равно
2. Посетитель сайта, так же этого не ощущает - ему отдаётся лишь сгенерированный HTML
3. Сервер... Вот разве что сервер как то от этого страдает: Больше кода - больше времени на обработку.
Евгений О.
2989 сообщений
#15 лет назад
Цитата ("Anexroid"):
Так что нам, в сущности, всё равно

Ну если так берем любой и пользуемся.
Цитата ("Anexroid"):
Посетитель сайта, так же этого не ощущает - ему отдаётся лишь сгенерированный HTML

Чувсвует, чувствует. Время обработки скриптов пропоционально их объему.
Цитата ("Anexroid"):
Сервер... Вот разве что сервер как то от этого страдает

Да пусть страдает, жалко что ли . Другое дело вместо хостинга со 100 мБ потребуется например 300 мБ.
Никита К.
1594 сообщения
#15 лет назад
Цитата ("elosoft"):
Ну если так берем любой и пользуемся.

"Всё равно" я имел ввиду на код, который создаёт фреймворк в вашем примере.

Но ведь:
1. Различное кол-во библиотек у фреймворков. ZF в этом плане, конечно выигрывает, но беда в том, что их СЛИШКОМ много, они лишние, IMHO
2. Различная "степень удобности" для программиста. При использовании одного, код м.б. пишется легко и без затруднений, а другого - приходится сильно напрягаться, задумываясь "А тот лт я класс использую" или "Может лучше использовать не function1, а function2"

Цитата ("CreoShopCms"):
6) Наличие удобной оболочки от Эклипс

Это, конечно хорошо, но не нравится мне Eclipse, слишком уж тяжеловесный он. Я предпочитаю просто блокнот в стиле gedit и notepad++
Юрий В.
1013 сообщений
#15 лет назад
Цитата ("elosoft"):
Да пусть страдает, жалко что ли . Другое дело вместо хостинга со 100 мБ потребуется например 300 мБ.


Да вряд ли. Где Вы такой громадный фреймвок видели то? )

Цитата ("Anexroid"):
3. Сервер... Вот разве что сервер как то от этого страдает: Больше кода - больше времени на обработку.


Самое узкое место в таких случаях это открытие и закрытие файлов. А их реально тысячи. Поэтому прибегают к компиляции ядра + кэширование.
Никита К.
1594 сообщения
#15 лет назад
Цитата ("CreoShopCms"):
Самое узкое место в таких случаях это открытие и закрытие файлов. А их реально тысячи.

Вот поэтому и хочется чего то лёгонького, с необходимым, но не излишним набором функций и т.п.
Евгений О.
2989 сообщений
#15 лет назад
Цитата ("neadekvat"):
Тысячные секунды? Время обработки серьезно прибавляют сотни инклудов, например.

Не так давно здесь рвали и метали по поводу циклов for и foreach. Вы там вроде тоже учавствовали? Но теперь уже целые файлы скрпта не помеха ? Тем более, как Вы правильно заметили, все эти библиотеки состоят из большого количества файлов, многие из которых взаимосвязаны. А файловые операции одни из самых медленных.
Цитата ("neadekvat"):
Выигрывая во времени - мы проигрываем в памяти - это помню

А вот я такого не помню .
Никита К.
1594 сообщения
#15 лет назад
Почитал о CodeIgniter и Yii.
CodeIgniter понравился больше,чем Yii и ZF. И лишнего нет, и просто.)) Скорее всего на нём и остановлюсь... Надо еще о Kohana почитать

P.S
Размечтался, почитал о Kohana...
Кроме того, что это форк CI ничего вменяемого в рунете нет...

P.P.S
О CakePHP говорят, что сильно тормознутый... Пока что склоняюсь к CodeIgniter... Если конечно никто не подкинет русской документации о Kohana
Кирилл Е.
2817 сообщений
#15 лет назад
Цитата ("Anexroid"):
но при программировании чего-то более масштабного - очень даже


Чего такого масштабного программировать собрались?

Цитата ("Anexroid"):
При разработке небольших сайтов-визиток и т.п они, как я понял, не сильно помогут

На фрейм-ворке (не скажу каком) делаю всё, от визиток до порталов и магазинов. Взяв с фреймворка ядро - сделать можно что угодно, лень своё делать - есть куча готовых решений.

Копать нужно исходя с конкретной задачи, т.к. конкретной задачи нет - сделаете просто краткий обзор возможностей )