LINUX.ORG.RU

RoR или Django


0

2

Собственно хочу перейти с PHP на новый язык и одновременно заняться изучением фреймворка.
Кто что посоветует и почему?
Другие языки не рассматриваю.



Последнее исправление: analimous (всего исправлений: 3)
Ответ на: комментарий от true_admin

Для меня критерий годности фреймворка или библиотеки это кол-во и сложность костылей.

Странно, зачем себя мучить? Просто берешь чуть более low-level решение и радуешься.

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

зачем себя мучить?

1) дураком был, поддался тренду

2) было интересно изучить

3) на тот момент было интересное предложение по работе. Я подстраивался под требования работодателя. Но это другая история.

Просто берешь чуть более low-level решение и радуешься.

Так и делаю :). Но не сразу, потребовалось время. Да и смена технологий всегда требует времени на освоение.

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

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

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

dizza ★★★★★
()

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

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

http://pylonsproject.org/projects/pyramid/about

History

The code which exists today in Pyramid is not new. Between June, 2008 and November of 2010, it was known as repoze.bfg (see the BFG website for historical purposes).

When Pyramid was created in early December of 2010, a mass rename of code from repoze.bfg was performed and features were added to (and removed from) the resulting codebase to make it more useful for Pylons Framework 1.X users.

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

> Я с ROR помучился и сдружился с Sinatra. От Django меня сблевало и я открыл для себя Flask.

Угу, RoR - тормозной негибкий монстр. Что, впрочем, свойственно для любого большого фреймворка, претендующего на универсальность. Но для командной разработки его негибкость и раздутость как раз в плюс. Чем меньше у веб-кодеров возможности креативить, тем лучше. А когда нужно съехать с рельс и сделать что-то нестандартное, тут подключается тим-лид и ныряет с головой в не самое ароматное нутро RoR. Но это всё равно лучше, чем возиться с кодерами и ковырять/переписывать их креатив. В общем, большие фреймворки - для больших (не обязательно сложных) проектов. Люди делают ошибку, когда берут RoR или Django для своего сайта, а потом героически борются с их архитектурными ограниченями. Хотя можно было бы взять связку Sinatra+Sequel+Haml или другие батарейки по вкусу и горя не знать.

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

> Мне оба они не понравились

Хм, а можно чуток поподробнее? В RoR все так же прибито гвоздями, как и в Django? Читал, что по дизайну эти два фреймворка вроде как сильно отличаются.

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

А, еще хотелось бы, чтобы кто-нибудь провел некую параллель между RoR и каким-нибудь питоновским фреймворком (если такой вообще есть), сравнил бы встроенные туда батарейки с какими-нибудь джанговскими и проч, и проч. А то про питон здесь уже столько всего прозвучало, хотелось бы и о руби с рельсами почитать (:

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

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

dizza ★★★★★
()

Хочу перейти на PHP с какого-либо другого языка и одновременно с фреймворка. Какой быдлоязык посоветуете бросить, питон или руби, и почему? Другие языки не рассматриваю.

heisenberg ★★
()

RoR и только он.

RoR имеет принцип «договорённость прежде конфигурации», уже это одно делает его круче джанги. А если кто говорит про негибкость RoR -глупости. Не нравится Erb - прикрути одним махом HAML.

Сам перешёл на RoR и вспоминаю джангу как кошмарный сон.

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

RoR имеет принцип «договорённость прежде конфигурации»

А если кто говорит про негибкость RoR -глупости

Что-то у тебя параграфы не клеятся, дружок.

baverman ★★★
()

Рельсоразработчики юзают маки. Если ты линупсоед, тебе больше подойдёт джанго.

Apple-ch ★★
()

ТС не парь себе и человекам моск:
- влепи 2 виртуалки, на одной ror env, на другой django env (если не охота заморачиваться, скачай готовые образы для wmvare или исошки отседа - http://www.turnkeylinux.org/django и http://www.turnkeylinux.org/rails),
- прошарь статьи: лепим аналог twitter, digg, whatever на ror|django
- делаешь по статьям + по мере и возможностям добавляеш своего
- по результатам делаешь выбор для себя
- ...
- PROFIT!

PS ещё как вариант, если модных фреймворков захотелось, так заюзай поxапешный symfony

iMp ★★★
()

Вообщем, вопрос, наверно, решен. Аргументов в пользу Django я не вижу.
Смущает только популярность джанги среди русских работодателей.

analimous
() автор топика

Тут как бы RoR vs Django смешно сравнивать, если учитывать, что первое это Ruby, а второе Python. У Ruby нет шансов в сравнении с Python-ом, японская поделка и матерый, красивый язык с множеством syntax-sugar, отличной идеей выделения блоков отступами и своей философией, язык применяемый повсюду и на десктопе, и в системе. Ruby на его фоне нечто безликое, единственной заслугой которого можно назвать создание RoR. До недавнего времени вообще сильно тормозил и сливал во всех бенчах не то что Python-ну, а даже всяким пэ-ха-пэ.

p.s. а твиттер давно переписали на SCALA =)) настолько Ruby был безнадежен, что разработчикам твиттера проще было взять и все переписать с нуля.

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

Даже на форуме рельс народ обсуждает как же сильно их рельсы сливают по производительносте джанге. http://railsforum.com/viewtopic.php?id=18547 Хотя темка старая, сейчас с этим несколько лучше, но и джанга на месте не стояла, в будущих версиях еще сделают кэш шаблонов, и тем самым уберут один из ключевых тормозов джанги.

Ну и на stackoverflow уже миллион раз обсосали вопрос: http://stackoverflow.com/questions/91846/rails-or-django-or-something-else

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

Факты, цифры, статистика: http://www.ohloh.net/languages/compare?l0=ruby&l1=python&measure=cont...

Мне мало интересна статистика популярности языков, куда важнее популярность инструментов(фреймворков), если уж на то пошло.

http://railsforum.com/viewtopic.php?id=18547 Хотя темка старая, сейчас с этим несколько лучше, но и джанга на месте не стояла, в будущих версиях еще сделают кэш шаблонов, и тем самым уберут один из ключевых тормозов джанги.

Старая - это мягко сказано. За это время в руби и в рельсах много чего изменилось в плане производительности.
Я сильно сомневаюсь, что эти фреймворки кардинально различаются по производительности. А в таком случае я не думаю что это такой важный критерий.
Stackoverflow видел, но в основном все сводится «попробуй оба и выбери» или совсем не объективным высказываниям приверженцев каждой из платформ.
А тут я еще ссылочку нашел http://it-giki.ru/post/16.html

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

Так в самом деле, иного пути нет, надо пощупать и решить. Тут речь больше идет о вкусовщине, чем о реальных приемуществах.

Но показательно то, что пришли ruby-сты и посоветовали только RoR, а пришли python-щики и стали обсуждать другие фреймворки на пайтоне. На нем есть из чего выбрать, много других хороших решений, если именно django по какой-то причине не подходит.

Универсальных стредств просто не бывает, важно иметь кругозор.

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

> Аргументов в пользу Django я не вижу

В пользу RoR аргументов тут тоже не прозвучало. Это еще один тред о фреймворках, в котором рубисты как обычно ничего, кроме «RoR конечно же», так ничего и не сказали.

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

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

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

но больше огорчили в джанге костыли, как например.

Какие там костыли? Чем не устраивает просто отдельная модель для профиля?

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

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

Ну так никто и не сказал о преимуществах Django. Точнее есть одно, допустим она работает быстрее. Что еще?

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

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

а зачем всё это лепить в одну таблицу?

авторизация и низкоуровневые операции — это одна таблица

а расширенная информация о пользователе — вторая таблица

логика на лицо :-) .. таким образом — profiles для пользователей помоему вполне элегантно

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

Каким боков first_name, last_name относится к «низкоуровневым операциям»?
Целая таблица если мне нужно всего лишь добавить поле?
Где логика?

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

> Целая таблица если мне нужно всего лишь добавить поле?

ну добавьте побольше :-) :-D

user_id_68054 ★★★★★
()

Все сказки про тормоза Ruby родом из середины прошлого десятилетия и касаются только Ruby 1.8. Ruby 1.9 рулит и педалит, и в отличии от третьего петуна не похерил полностью совместимость написанных хелловордов. Если вообще абстрагироваться от темы топика, и сравнить качество исходного кода интерпретаротов петуна и руби, то от первого хочется блевать. Можете кидать в меня помидоры.

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

фреймворк продвинутее языка? ну ну

Разница довольно размыта. Давай из питона выкинем стандартную библиотеку. Или из Си. Что получится? Ты пишешь код, используя какой-то набор абстракций. Тебе не все равно встроено это в язык или является надстройкой в виде либы? Разница особенно стирается, если либа написана с использованием метапрограммирования. Кажись где-то в SICP было утверждение, что любая библиотека становиться как бы частью языка.

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

я имел ввиду что RoR!=Ruby, так же и RoR>Python не может быть
Должно было быть «RoR попродвинутее Django будет.»

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