nayjest

Его сообщения

или забить

Точно удалить?

    • шедевр! согласен. только боязно потом.

    • Не, совсем не понравился. Хорошая идея, слабая реализация. И не треш, и не туда тоже. Очень в канадском стиле…

    • Пользуюсь Zend, думаю факт того, что его делают сами разработчики php, говорит о многом :)

    • :D PHP и MVC в одном предложении :). Вообще под PHP бессмысленно делать нормальный framework, так как при каждом запросе нужно грузить все нужные классы. Так что чем больше классов, тем больше тормозов.

    • показать ещё 36
    • @ino4kin факт того, что его делают сами разработчики php -- это и есть причина его популярности. А объективно: я нахожу yii более интуитивным, лаконичным, простым для понимания, мне нравится его внутренняя организация, кроме того говорят, что он шустрее, да и во всем остальном yii не хуже Zend'а

    • @Setti При чём тут autoload? Она просто позволяет не писать require. Классы же всё так же грузятся и инициализируются при каждом обращении к сайту (просто теперь PHP сам знает откуда грузить класс по его имени).

    • @ai Это не так. Файл класса таким образом грузится только при попытке обращения к члену данного класса. В противном случае файл класса не подгружается и экземпляр класса не создается. Например, пока в программе не вызывается url::redirect() , класс url в памяти не существует и его файл тоже.

    • @Setti Само собой, но все нужные классы всё равно грузятся. И чем более модульное приложение, тем больше классов грузятся. Все абстрактные классы и т. д. И что самое ужасное — это принципиально неисправимое ограничение PHP — интерпретатор просто не хранит состояния между обращениями.

    • @Setti Все настройки, все подключения при каждом запросе должны снова загружаться. Файлы перевода снова и снова парситься и т. д.

    • @ai Потому и грузяться, потому что нужны :) Ок, я понял, что имеется в виду. Можно на "ты"? Дай, пожалуйста, ссылку почитать, как это происходит у Ruby

    • * грузятся

    • @Setti В Ruby on Rails (Ruby — это просто язык) весь сайт загружается и весит отдельными процессами, с которыми веб-сервер общается. В итоге для инициализация происходит только один раз и можно даже делать небольшие кеши сохраняя данные просто в переменные класса.

    • @Setti Собственно отдельные процессы на сайт есть у всех остальных веб-технологий — Python, JavaEE, ASP.Net, Node.JS и т. д.

    • @ai что-то мне подсказывает, что выбор между подобным подходом и кешированием - вопрос личных предпочтений

    • @Setti Не совсем, кеширование HTML идущих на выдачу — это совсем другое. В Ruby on Rails оно тоже используется.

    • @Setti Возможность запускать сайт в виде независимого процесса переходит в другой плюс — для разработки не нужен ни ДеНВеР, ни Apache — Ruby on Rails идёт с простеньким веб-сервером, достаточным для тестирования. Так что на машине разработчика тебе только нужен интерпретатор Ruby.

    • @Setti И ещё один вытекающий плюс — все нужные расширения (в том числе с C-кодом) ты можешь положить в папку проекта и не зависит от хостера у которого может не быть нужных расширений или они будут старых версий (я из-за битого gd на хостинге очень много проблем получил).

    • @ai ты меня заинтериговал, поэтому читаю docs.djangoproject.com :-P К Ruby (и к Ruby on Rails, соответственно) у меня идеологическое :)

    • @Setti :D Django — тоже неплохой framework :)

    • @Setti все равно Kohana - любимый framework. В планах еще связать ее с Doctrine под какой-нибудь новый проект. А под highload если что-то когда-то понадобится, предпочитаю нанять профессионалов именно в сфере разработки под нагрузку. Сам не хочу подобной деятельностью заниматься.

    • kohana имхо лучшая

    • Kohana вообще не понравился, как-то там все плохо с документацией, Zend пугает монструозностью своей, пока тоже пользуюсь yii, сбежал бы на python+django но с хостингами трудновато )

    • в зенде я люблю, просто обожаю даже, формы в связке с валидаторами и фильтрами, зенд хорош еще и тем что из него можно юзать только нужные библиотеки, например взять из него реализацию lucene и юзать в своем проекте

    • @ai у пхп можно байткод, пропарсеного интерпретатором скрипта, кешировать, что очень сильно поднимает его скорость работы

    • @gemozlobin Байткод конечно поднимает скорость, но проблему он не решает. Всё так же нужно загружать в память классы, всё так же нужно _каждый_ раз читать настройки и настраивать классы.

    • мне yii очень нравится =)

    • Будут еще конструктивные мысли (не по поводу убожества php, а по поводу фреймворков)?

    • @nayjest ИМХО - на из php-фреймворков самый быстрый и удобный Yii(ИМХО), а вообще если это позволяет проэкт и/или время, лучше.... не использовать их, а псиать с нуля все.Да-да-да!Именно так!CMS, которую я написал с нуля сам, и потом 2 месяца почуть-чуть вылизывал, будет работать быстрее, чем на любом фреймворке.Фреймворк - универсальный инструмент, но даже в швейцарском ножике иногда ненужны большинство фич

    • @Codcore я всегда считал что именно цмс это униврсальный инчтрумент. А фреймворк это скорее идеология плюс куча библиотек для стандартных ситуаций

    • @ai конфиги тоже можно кешировать. :) но и недостатки пхп оборачиваются преимуществами, проблем с утечками памяти не бывает практически никогда, да и заморачиваться о подготовке кода к обработке следующего запроса ненадо, отдельного языка для шаблонов тоже не надо — в шаблонах можно юзать тот же пхп (можно даже с альтернативным синтаксисом)

    • @gemozlobin Хоть отдельный умный ответ, на мою критику :). Но всё равно статистика ZF говорит что 70 % времени идёт на загрузку дерева классов :(. Плюс у PHP большие идеологические проблемы. Язык сильно замусорен старыми вещами (2 000 функция в глобальном пространстве, плюс идиотские названия типа strstr()), ужасным по современным меркам синтаксисом (сколько раз приходилось тратить лишнее время заметив, что забыл поставить ; , хотя интерпретатор должен сам догадаться по \n) и т. д.

    • @ai насчет названия функций согласен, по глобальному пространству подвижки вроде есть, в пять три появились намеспэйсы. Синтаксис это вкусовщина, я привык к точке запятой и всегда ее ставлю даже когда пишу на js, а в питоне наоборот раздражает ее ненужность. З.Ы. буть человеком сделай стрелочку вверх для мобильной версии

    • @gemozlobin А куда стрелочку поставить?

    • @ai может рядом с комментировать, нравиться и ссылкой на шоут под каждым постом?

    • @Codcore А-ха-ха! Я уже лет 6 как пользуюсь собственной самописной CMS и вот некоторое время назад пришло осознание того, что некоторые вещи в том же Yii сделаны значительно удобнее и в общем, фреймворки действительно упрощают жизнь, особенно когда в команде разработчиков прибывает. Теперь переписываю свою CMS под Yii framework :)

    • @gemozlobin Вы правы отчасти.Если сравнивать, то CMS - это готовый кирпичный дом, а framework - фундамент + кирпичи, цемент, окна, двери, доски.А теперь представьте, что с этого дома надо сделать другой, 2-х этажный, с мансардой, большим парадным входом и вместительной гостинной.Безусловно, можно пересобрать фундамент, усилить несущие стены, и т.д. и т.п.Головная боль.А вот имея все необходимые материалы+знание+план можно качественно реализовать задуманное.CMS как раз узконаправленный инструмент, а копаясь в ее коде и изменяя его под себя, подключая всякие модули, система теряет стройность и целостность, стает неустойчивой.Например, я знаю модули к той же Joomla, которые стоят у многих, и они забирают около 40% времени генерации страницы, и это для того, чтобы добавить какую-то мелкую "финтифлюшку", некоторые вообще добавляют дыр в безопасности.Я не против CMS, просто каждую из них надо использоать по предназначению, и неделать из ДЛЕ Интернет-магазин с корзиной и кучами дополнений для обеспечения необходимой функциональности.CMS узконаправлены, каждая решает определенную задачу.А вот framework - универсальный инструмент, с его помощью можно собрать "дом" любой сложности и масштабности.

    • @nayjest да, но при написании сверхмасштабных и сверхпосещаемых проектах, ни о каких фреймворках речи и не может быть.Тогда уже важен каждая сэкономленная милисекунда времени, каждый байт ОЗУ, нужно гарантировать устойчивость к DDoS(я имею ввиду естественные, такие как нагрузка пользователями)/Framework - это компроммис между удобством и функциональностью с одной стороны, и скоростью - с другой

    • @Codcore Хм.... А может хватит изобретать велосипеды?

    • @Piom это не велосипеды, а самостоятельные решения, в которые вложены душа и время.Приятно видеть как работает ПОЛНОСТЬЮ мной написанное приложение, вплоть до последней строчки; при этом я молчу о полученном опыте, который при работе с фреймворками не приобрести.Я еще раз повторяюсь, фреймворки не зло, они предназначены для решения рутинных задач, но для истинного кодера целью является кодинг как искусство, а не как инструмент решения задач, если Вы понимаете о чем Я.Все конечно ИМХО =)

Наверх ↑