Pull to refresh
160
1.2
Кирилл Мокевнин @toxicmt

Программист & Предприниматель

Send message
В rails используется ActiveRecord, соответственно связи сущностей описаны в самих моделях (которые один в один мапятся на таблицы). Я правильно понял вопрос?
mongoid.org/

Многие плагины его уже поддерживают.
Насчет метапрограммирования я конечно утрировал, но нужно понимать что php очень простой язык и его действительно легко отлаживать если мы говорим про проекты на рельсах и на zf одного уровня. У меня есть опыт поддержки проектов со многими десятками тысяч строк кода и как я уже писал на zf это было в целом проще, но ruby дает больше возможностей для отладки, например, консоль.
>> Согласен, это хорошая фича. Однако, что мешает сделать так же (ставить кастомные плагины) для джанги?

Вопрос в том что это делает в ядре джанги? Так же как и комментарии. Но на самом деле ответ известен, достаточно посмотреть из чего появилась джанга.

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

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

Я этого не утверждал).

>> Это утверждение подкреплено какими-нибудь фактами? В рельсах, например, админку надо писать каждый раз — это уже означает, что кода должно быть больше.

github.com/fesplugas/typus
github.com/sferik/rails_admin

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

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

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

А лично я считаю что админку в принципе нельзя автоматизировать, но можно хотя бы упросить генерацию.
В смысле из перла в руби взято много разного, конечно разного у них больше чем общего).
Вы себе даже не представлете насколько ruby это перл. Посмотрите хотя бы библиотеки которые идут с языком, они один в один перловые.
>> Речь в статье именно об этом — рельсы проще, гораздо проще поддерживать, нежели ZF

Страшное заблуждение. Поддерживать рельсы в больших проектах намного сложнее из-за многих вещей. Особенно доставляет когда пытаешься грепом найти метод, а его, прости господи, не существует. Метапрограммирование, чё.
К сожалению это все теория, на практике, особенно в больших командах это не так. Иначе бы не придумывали мерить покрытие.
я использую ree-2011.03. Тобишь последний.
И это учитывая что никаких оптимизаций я не делал и все работает на руби 1.8.7. Вот переведу на 1.9.2 тогда вообще полетим).
Кстати последнее время я все чаще слышу вот про это github.com/defunkt/unicorn
Все стало заметно шустрее.
habrahabr.ru/blogs/ror/75304/

А вообще поиск в гугле выдал целую кучу предложений.
Лично для меня обновление пакетов на сервере в автоматическом режиме не приемлемо в любом виде. И врядли в этом есть острая необходимость у вас, но как говорится хозяин барин.
Для управления сервером есть вот такой инструмент habrahabr.ru/company/scalaxy/blog/87302/
Вьюхи тестятся прекрасно с любым инструментом, я же говорил о покрытии и rcov это не может.
И еще перемещение ветки одним запросом.

Information

Rating
1,506-th
Location
Miami Beach, Florida, США
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Chief Technology Officer (CTO)
Lead