Размышления о Rails vs Django

12 3
K
На сайте с 23.03.2011
Offline
69
3607

Я ознакомился Rails и Django. И могу сказать:

1. Предполагаю, что Django будет работать быстрее. Вот есть видео: https://youtu.be/qMmI8qigObc?t=947 См. с 15:47. Сотрудники яндекса считают, что джанго - самый быстрый фреймворк на интерпретируемых языках. С другой стороны, Яндекс - это всегда сервисы. Кроме сервисов есть еще и информационные сайты, которые внутри себя сильно ничего не вычисляют: они просто достают контент из базы данных и презентуют пользователю. Самое медленное звено - это БД. А тут уже что ты на Java, что ты на Ruby - все едино. Плюс кеширование. В общем, думаю, для статейника Рельсы и Джанго без разницы особой по быстродействию. Все равно все в кэшатине, кстати. Но проверить слова яндексовцев о том, какую нагрузку может выдержать тот или иной фреймворк при заданных ограничениях по железу, у меня квалификации не хватает на сегодня.

2. Книжек по Джанго одна и то старая. По Рельсам реально есть свежий материал больше. И официальный тьюториал у Рельсов лучше, мне кажется. Сообщество Рельсов поживее будет. В общем, тут Рельсы выигрывают.

3. Цикл релизов. У Джанго с выходом Django 1.8 почил Django 1.6. Это с февраля 13-го по апрель 15-го. У Рельсов же в ноябре 15-го вышел 4.2.5 и на форумах пишут - вот, он вышел, а мы-то только-только успели привыкнуть к 4.1. Т.е. условно с апреля 2014 по ноябрь 2015. Читаю про это дело на форумах. Народ говорит примерно следующее: проект на Джанго поддерживать легче, на Рельсах - более трудоемко. Но, вот, мы на Рельсах обновляемся, да, нелегеко, но при этом проект-то становится лучше. Так что, дескать, не все так и плохо.

4. В Джанго больше понравилась обработка URL и вызов соответствующей функции. Задаешь регулярное выражение, оно сопоставляется с URL в запросе - очень элегантно. Получая запрос с адреса с www и без, можно обойтись без переадресации средствами веб-сервера. Кроме того, с первого знакомства с Джанго говорят о красивых и человеко-понятных URL. Дескать, нам в URL не надо всякой фигни типа параметров гет-запроса. Хочешь параметр, будь добр красиво все оформить.

В Рельсах же как дошел до необходимости размещения списка на нескольких страницах, стал применять гем Willpaginate. И сразу в URL полезли параметры гет-запроса. Я их не смог победить. Может быть, можно какой-то другой гем взять, но я пока не справился. В общем, работа с URL больше понравилась в Джанго.

5. Продуманность Рельсов - по ощущениям - выше. Просто такие ощущения. Они субъективны.

Вывод: Рельсы, кажется, выглядят привлекательнее.

Т.к. практичесакого опыта нет, был бы признателен за комментарии ко всем вышеперечисленным размышлениям.

А также есть вопрос: вот вышла Rails 5.0.0.beta2. Что это означает на практике? Это значит, что через месяца четыре выйдет релиз, а когда бодрствующие веб-мастера задумаются о переводе своих проектов на этот релиз? Т.е. когда ориентировочно обновятся популярные гемы и т.п. Мне бы сориентироваться просто по циклу обновления.

Заранее спасибо за ответы.

S
На сайте с 24.02.2016
Offline
0
#1

Привет возьми лучше рейлс, для пагинации лучше брать kaminari. Субьективно конечно но мне пайтон как язык не очень нравится, у руби намного продуманней сам синтаксис и всякие фишки типа "1.day.ago / 3.times {|x|}" по скорости особых проблем нет если нужен нагруженный сервис то пишем на яве ложем в базу результат, а на рельсах отдается в веб.

По апдейтам не парься на 5 рельсы перейдут не все многое что сейчас в продакшене еще на 3-х работает, поэтому начинай учить с 4-х.

Sly32
На сайте с 29.03.2012
Offline
302
#2

Рельсы более энергоемки, недаром, тот же Твиттер ушел на Питон.

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

Недавно вышла Джанго 1.9, правда еще не переходил, пока работаю с 1.8.4

Мне просто сразу посоветовали Джангу,рельсами стал не заморачиваться.

Все строго, логично , мой выбор - Джанго.

K
На сайте с 23.03.2011
Offline
69
#3
Sly32:

Мне просто сразу посоветовали Джангу,рельсами стал не заморачиваться.
Все строго, логично , мой выбор - Джанго.

Так ты же не заморачивался рельсами. Как ты можешь судить? Что значит энергоемки? Медленнее работает? Так я написал, почему это без разницы. А для более детального анализа у меня не хватает мозгов. Это надо брать сервер, обстреливать его запросами. И смотреть.

У Джанго есть еще один недостаток: Питон-то мне так и не полюбился. Это пофигу, в принципе. Но все-таки. За быстродействие можно простить.

S
На сайте с 23.05.2004
Offline
316
#4

Два фреймворка на двух совершенно разных языках. Достаточно не понятно, как сравнивать.

Та же пагинация в django так же будет выглядеть как /product/?page=2 . При желании можно запросто сделать и как /product/2/ , все от программиста зависит.

Kifsif:
Это значит, что через месяца четыре выйдет релиз, а когда бодрствующие веб-мастера задумаются о переводе своих проектов на этот релиз?

С новым проектом и задумаются. Смысл старые просто так переводить ?

Тут скорее вопрос в другом , Django - это Python, а ROR - Ruby . Под питон имхо куда больше всяких библиотек написано, да область применения шире. Т..е джангу можно гораздо экстримальнее нашпиговать функциональностью.

Это просто подпись.
K
На сайте с 23.03.2011
Offline
69
#5
Stek:
Два фреймворка на двух совершенно разных языках.

Языки оба интерпретируемые, оба широко используются для веб-разработки. Это же не специальные языки какие-то, типа языка 1С. В общем, между этими двумя языками принципиальных различий нет. Трудоемкость освоения у этих языков тоже примерно одинаковая. Да и освоил я на определенном уровне оба эти языка. И еще несколько других. Языки-то все более-менее похожи: ну, что там, условие, цикл, область видимости и т.п. А вот различие фреймворков как таковых более существенны: трудоемкость их изучения гораздо выше, чем самих языков.

Stek:

Та же пагинация в django так же будет выглядеть как /product/?page=2 . При желании можно запросто сделать и как /product/2/ , все от программиста зависит.

Вот это мне надо переварить немного. Спасибо.

Stek:

С новым проектом и задумаются. Смысл старые просто так переводить ?

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

А то что рельсы - Питон и на нем много всего. Мы как бы сейчас говорим о вебе в достаточно поверхностном его варианте: простой информационный сайт. Ну, что там может понадобится. Календарь сделать какой специальный и т.п. Зачем для этого тонны библиотек для научных расчетов, для чего-то там еще. Тоже не аргумент, мне кажется.

Sly32
На сайте с 29.03.2012
Offline
302
#6
Stek:
Два фреймворка на двух совершенно разных языках. Достаточно не понятно, как сравнивать.

Та же пагинация в django так же будет выглядеть как /product/?page=2 . При желании можно запросто сделать и как /product/2/ , все от программиста зависит.

за последний вариант мне дали по рукам и сказали никогда так в джанге не делать)) Единственное, где используется вид гет-запросов в джанге - пагинация.

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

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

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

А главный аргумент - В гугле не дураки сидят) А там что? а там Питон.

volos_86
На сайте с 23.07.2011
Offline
48
#7

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

Цикл поддержки ЛТС-релизов Джанго более длительный.

Проще установка и последующая миграция на другие серверы.

Бери Джанго

Представитель: hostpro.ua (http://hostpro.ua) (напишите мне ()) На рынке хостинга 15 лет
K
На сайте с 23.03.2011
Offline
69
#8
Sly32:

А главный аргумент - В гугле не дураки сидят) А там что? а там Питон.

Для меня это тоже было аргументом, когда начинал изучать Джанго. А потом посмотрел - а работы-то в России и нет на Джанго. Поглядел, а на Рельсах, вроде, как бы есть.

Давай, думаю, Рельсы посмотрю.

А Рельсы дураки написали? Вот давай не будем о гугле с фейсбуками. Потому что разные весовые категории.

Мы можем только домысливать, что им нужно. Масштабируемость и т.п. Я думаю, они там, под капотом, многое на плюсах переваривают. Всякие сортировки, да парсинг xml.

Так что сомнительно, сомнительно. Еще раз - речь о простом сайте. Я когда Джангу брал - смотрю: о! самое то. Для новостного сайта, Яндекс рекомендует как самый быстрый фреймворк, ну, что еще надо. И Питон, опять же. Я еще, грешным делом, люблю курсы на Курсере брать и т.п. А там Питон. Ну, думаю, все сходится.

А работы-то нет. Ну, не публикуются вакансии. В буржуинстве - да, есть.

Но в буржуинстве-то на рельсах работы поболее будет. Там, по-твоему, одни дураки.

А как Гвидо ушел из Гугля, вот не факт, что там будет питон в почете. Ты что, Гугль не знаешь. Они сегодня одно делают, делают. Завтра - раз, и обрубили. С концами. Просто похерили. Возьмут, да и забудут про Питон, и спонсировать его не будут. Очень даже легко.

Сомнительный аргумент, в общем.

---------- Добавлено 24.02.2016 в 11:54 ----------

volos_86:
Питон как по мне меньше сервер нагружает.
Цикл поддержки ЛТС-релизов Джанго более длительный.
Проще установка и последующая миграция на другие серверы.
Бери Джанго

Заманчиво звучит. Там еще плюсы есть. Явное лучше неявного - этот принцип мне очень подходит.

Ты скажи, а как с работой-то на Джанго?

Меньше или примерно одинаково с Рельсами?

volos_86
На сайте с 23.07.2011
Offline
48
#9

Kifsif,

Kifsif:
Ты скажи, а как с работой-то на Джанго?

Меньше или примерно одинаково с Рельсами?

В каком смысле? Как разработчика или хостера? :)

S
На сайте с 23.05.2004
Offline
316
#10
Kifsif:
Смысл переводить - бывают дыры в безопасности, например. Не хочется сидеть на старом софте. Не хочется накапливать технический долг. Т.е. если проект живет, все равно когда-то его обновлять придется.

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

12 3

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