Веб-платформа для разработки веб-приложений RAD. в кратчайшие сроки (Yii против Django)

#python #django #frameworks #yii #rad

#python #django #фреймворки #yii #rad

Вопрос:

Я погуглил и не нашел ничего особо интересного, прямо сейчас я и моя команда знаем / частично знаем (Codeigniter, Yii), а также Django (Python Framework), теперь, после работы с codeigniter в течение последнего 1 года, мы заметили, что мы не настолько эффективны, и нам все еще приходится повторно кодировать большую часть материала (система комментариев, загрузка изображений, рейтинг, голосование и т.д.) (вы можете назвать это прогрессивным улучшением).

Теперь мы начали разработку в Yii, и это превосходно, мы испытываем это, но я обнаружил, что люблю Python больше, чем PHP, но из-за крайних сроков и нехватки времени я не могу попросить свою команду перейти на него сейчас. Итак, что я пытаюсь сделать, это убедить себя в том, какой фреймворк из этих 3 (Codeigniter, Yii, Django) обеспечит нам самые быстрые сроки доставки?

Мое личное мнение таково, что Yii и Django в чем-то равны, но из-за доступности большого количества пакетов Django Packages, мы сможем разрабатывать все быстрее и быстрее, хотя у Yii тоже есть свои расширения Yii Extensions, но на данный момент их не так много, и лишь немногие из них очень стабильны, в то время как в других все еще есть ошибки (возможно, все это связано с моим более высоким знанием PHP и фреймворков PHP, чем фреймворков Python и Django), так что , Я был бы рад, если бы кто-нибудь, у кого есть некоторый практический опыт перехода с PHP на фреймворки на основе Python, мог пролить некоторый свет на это!

Редактировать: я ищу практический ответ от программиста, который разработал обе платформы Django vs. Yii (или, по крайней мере, играл с ними), и он / она может подтвердить, что время разработки для типичного CMS / портала / обзорного веб-сайта / клона Digg … тип веб-приложения занимает меньше времени в одном, чем в другом, поскольку время — это то, о чем я беспокоюсь, изучение языка / функций / преимуществ не так важно, масштабируемость тоже зависит от надлежащей оптимизации БД и других архитектурных изменений, также я хотел бы подчеркнуть, что я не рассматриваю Ruby on Rails, поскольку я не хочу изучать ruby только для фреймворка, скорее меня интересует Django против Yii с точки зрения кратчайшего времени выхода на рынок, учитывая все остальные факторы (рабочая сила / набор навыков / дизайн БД), пожалуйста, помогите, я думал об этом уже неделю!

Ответ №1:

Вивек, это один из тех вопросов, на которые трудно дать ответ лучше, чем «это зависит». Лично я считаю, что язык и его экосистема являются очень важным фактором при выборе, возможно, в большей степени, чем конкретный фреймворк.

Почему так? Как вы упомянули, вы обнаружили, что вам пришлось писать много кода с нуля, хотя вы думали, что фреймворк обеспечит это. Это основной факт нашей программной жизни — независимо от фреймворка / библиотеки, в конечном итоге мы собираемся написать какую-то собственную функциональность, потому что:

  • Либо он отсутствует
  • Или он недостаточно хорош для наших нужд по тысячам возможных причин

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

Вот почему важна основа, а основой в вашем случае является PHP и его экосистема против Python и его экосистема. Оба языка содержат огромное количество доступного библиотечного кода, но с каким из языков вам приятнее работать? Какой из них вы и ваши коллеги-разработчики знаете лучше всего? Для какого языка вам будет проще нанять новых разработчиков (если применимо)?


P.S. Я не очень разбираюсь в PHP, но для Python / Django, помимо пакетов Django, есть также Pinax.

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

1. Спасибо за ваш ввод Eli, я увидел Pinax, и это еще больше подтолкнуло меня к пути django. Ваш ответ довольно практичен, но, к сожалению, он все еще не дает точного ответа на мой вопрос 🙂

Ответ №2:

Никогда не использовал Yii и Code Igniter, но я пришел из CakePHP, и теперь я работаю над Django, и мне это нравится. Я могу сказать, что в Python более высокая культура тестирования, а в Django есть превосходные документы. Если вы поищете Yii и Django на github, вы найдете 191 против 6176 проектов.

ИМХО Python на порядки лучше, чем PHP, а средний код Python лучше, чем средний код PHP.

Я думаю, ваш выбор должен быть между Django и Rails или Sinatra. Сообщество Python больше, чем сообщество Ruby, вместо этого существует больше проектов Rails и разработчиков, чем Django.