LINUX.ORG.RU

Yii2 vs Django LTS Fight!

 , , ,


0

3

Сабж.

В связи с тем, что недавно релизнулась 1.11 версия Джанго смотрел в Сети сравнение возможностей обоих фреймворков.

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

Но тут как бы PHP7 пришел и порядок навел, говорят... )))

Хотелось бы услышать ваши Pro en Contra из первых уст.

★★★★★

Ответ на: комментарий от anonymous

Вот так лучше видна горка былой популярности

А вот так видно, что популярность стабильная. https://trends.google.com/trends/explore?date=all&q=symfony,laravel,yii2

Причём мне лично не очень понятно на чём основан такой хайп на laravel. Тот же Yii2 вид сбоку, только более кривой и без батареек/виджетов в коробке.

no-such-file ★★★★★ ()

PHP7 пришел и порядок навел

Что, уже навели порядок в именах функций из стандартной библиотеки?

Turbid ★★★★★ ()
Ответ на: комментарий от no-such-file

А так даже чтобы if/else написать нужно выёживаться

Хочешь сказать в python нет тернарной формы if/else?

Turbid ★★★★★ ()
Ответ на: комментарий от irr123

Здесь просто функция возвращает функцию, так же работает декоратор и замыкание.

Это понятно. Я просто не допер как этот код запустить без IDLE )))

Питоном плотно не занимался.

Twissel ★★★★★ ()
Ответ на: комментарий от Wizard_

pip + virtualenv вполне годны, единственный
минус, что нужно активировать/деактивировать
venv-окружения.

А вот php и composer в этом плане не настолько удобны,
нативные расширения приходится ставить через
пакетный менеждер дистрибутива.

theanonymous ()
Ответ на: комментарий от Turbid

Стандартная библиотека в пхп никогда не будет
«нормальной», это факт с которым надо смириться
и жить (если так сильно припекает, то можно использовать
обёртки), например, как пробелы и табы в питоне,
end в руби и т.п.

theanonymous ()
Ответ на: комментарий от no-such-file

популярность стабильная.

Видно же что низкая.

anonymous ()
Ответ на: комментарий от theanonymous

pip + virtualenv вполне годны

С pip + virtualenv возни гораздо больше, чем с npm, и оно менее универсально. Для деплоя это решение мало годно, т.к. перед помещением в гит нужно убирать абсолютные пути и проверять совместимость питона и прочего окружения. По этим причинам для массового распространения это не годится вообще.

Wizard_ ★★★★★ ()
Ответ на: комментарий от Wizard_

С pip + virtualenv возни гораздо больше, чем с npm, и оно менее универсально.

Чем оно менее универсально?

Для деплоя это решение мало годно,

Это решение годно для деплоя в полностью автоматическом режиме.

перед помещением в гит нужно убирать абсолютные пути

А pip и virtualenv тут при чём? Используй os.path, Люк!

и проверять совместимость питона и прочего окружения.

И опять же, ты не знаешь, как работает virtualenv. Внутри его окружения свой питон, с чем он должен быть совместим?

По этим причинам для массового распространения это не годится вообще.

То, что ты перечислил — вообще не причины.

ivn86 ()
Ответ на: комментарий от Twissel

Он вроде теперь платный, не?

Там такая история. Его сделал фейсбук, но потом бросил, т.к. они щас пилят HVMM и Hack. Поэтому он слегка протух и не умеет в php7. Хитрые людишки подновили его и запилили Tideways. Фишка в том, что сам профайлер остался бесплатный, платный только их сервис. Поэтому можно смело ставить https://github.com/tideways/php-profiler-extension и любой свободный гуй, даже тот-же XHGui. Если пых7 не нужен можно и старичком XHProf обойтись, он тоже на гитхабе валяется.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

ОК, спасибо)

Вот этого я так и не понял, то ли они весь его сделали платным, то ли только доступ к их сервису. Разъяснил.

Twissel ★★★★★ ()
Ответ на: комментарий от ivn86

А pip и virtualenv тут при чём? Используй os.path, Люк!

Ты не понял. Чтобы отвязать от абсолютных путей, надо сперва сделать virtualenv -relocatable, но это ещё не всё, потом вручную надо править скрипт activate. Ты вообще этой связкой pip + virtualenv пользовался? Вот я пользовался.

Внутри его окружения свой питон, с чем он должен быть совместим?

В этом всё и дело. Внутри окружения virtualenv в такой схеме оказываются динамически (sic!) слинкованные бинарники. Если попробовать запустить такой проект на системе, где нет этих библиотек, либо другая операционная система (например, Windows), либо другая аппаратная платформа (попробуй запустить проект x86_64 на x86- или arm-процессоре), то ничего не выйдет.

В то же время, в инфраструктуре npm достаточно указать нужные библиотеки, интерпретаторы и их версии. Всё это автоматически подтянется у любого, кто будет использовать этот проект. Очень удобно и переносимо.

По этим причинам для массового распространения это не годится вообще.

Wizard_ ★★★★★ ()
Ответ на: комментарий от Wizard_

В то же время, в инфраструктуре npm достаточно указать нужные библиотеки, интерпретаторы и их версии.

pip install -r requirements.txt

Не за что.

anonymous ()
Ответ на: комментарий от theanonymous

Питон тоже нормальный, но ему не хватает аналога phar/jar.

ээээээээ... youtube-dl с офсайта скачать попробуй

buratino ★★★★★ ()
Ответ на: комментарий от Wizard_

Чтобы отвязать от абсолютных путей, надо сперва сделать virtualenv -relocatable

Т.е. ты virtualenv с пакетом внутри таскаешь? Не надо так делать.

Ну и pip install -r уже выше анонимус написал.

pi11 ★★★★★ ()
Последнее исправление: pi11 (всего исправлений: 1)
Ответ на: комментарий от Wizard_

А как надо?

Ну лично я делаю так -

virtualenv ve
source ve
pip install -r requirements
и все работает

pi11 ★★★★★ ()
Ответ на: комментарий от Wizard_

перед помещением в гит нужно убирать абсолютные пути

Используй os.path, Люк!

Ты не понял. Чтобы отвязать от абсолютных путей, надо сперва сделать virtualenv -relocatable, но это ещё не всё, потом вручную надо править скрипт activate

Действительно не понял. Ты выкладываешь virtualenv в гит? А потом качаешь его на другой платформе и оно, зараза такая, не работает?

И почему ты акцентируешь внимание на связке pip+venv против npm? npm умеет выполнять функции виртуального окружения и ставить разные версии интерпретаторов на одной системе? pip самодостаточен и в отсутствии venv будет ставить все пакеты глобально. Присоединяюсь к вопросу об установке системных зависимостей через npm.

ivn86 ()

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

Многим не нравятся некоторые абстракции, которые предлагает фреймворк (бихевиоры, глобальный сервис локатор, виджеты). Но это обычно люди, которые считают, что фреймворк за них делает код классным и должен бить тебя по рукам на каждом шагу (они обычно на Symfony программируют). Со стабильностью, функциональностью и сложностью изучения в Yii все нормально, а это главное.

nguseff ()
Ответ на: комментарий от nguseff

В противовес за Django можно сказать, что у него такая офигенная документация, что в код вам лезть и не потребуется.

pi11 ★★★★★ ()

Читаю тред и тихо охреневаю. Ну ок, сравнивать джангу и yii в общем-то корректно - они оба веб фреймворки.

Но на полном серьезе писать что что-то хорошо / плохо по признакам быстрее / спецов больше? Ок, на пыхе больше спецов. Вот прям реально охренеть насколько больше. Но из них добрые 90% это верстальщики умеющие вордпресс развернуть. Какой от этого толк если проект, например, крупный и со сложным функционалом, пусть и типовым? Пилите вы, значит, большой интернет магаз на симфони, паттерн на паттерне и паттерном погоняет. Начинаете искать человека, пишущего на PHP. Приходит такой кадр и на все ваши умные вопросы про принципы ООП и чем фасад от синглтона отличается стабильно отвечает МУУУУУ. Ну я, эта, меню правил на http://www.rodnoykolhoz.ru .

А производительность? Ок, будет код контроллера отрабатывать на 50ms быстрее. Но большинство затыков-то обычно либо в io, либо в базе. И от языка не зависят никак. Какая нахрен разница сколько попугаев показывают бенчмарки? )

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

Хотя для веба - именно для веба - он люто удобный, да. Симфони с теплотой вспоминаю

anonymous ()
Ответ на: комментарий от no-such-file

непроизвольно компульсивно запостил

Deleted ()
Ответ на: комментарий от Goury

кодил с 1992 года

кодил с 1992 года на асм,с,с++,java,pascal,php 5.2-7.2,sh и т.д., но пайтон избегал в силу того, что синтаксис не тот, костыли какие-то там свои... в общем, «нет времени». И тут потребовалось накатать бота для ВК под заказ, полез в мануалы, да так там и остался. Короче, если можно влюбиться (слегка), то я уже там. Пайтон (в его сегодняшей форме и с библами) это то что надо измученному нарзаном погромисту. Подписываюсь под каждым вашим словом. (что не делает пых или жабу хуже или лучше — прим. для сирых и убогих оппонентов)

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.