> Так-же как AcriveRecord делает тривиальными вполне себе сложные
> запросы. Он делает простыми запросы на которые приходится 90% всех
> случаев использования и прямой доступ к драйверу если нужно что-то
> специфичное.
ActiveRecord делает тривиальными тривиальные запросы, которые в силу
говорливого SQL-я выглядят достаточно громоздко, хотя от этого не
перестают быть тривиальными.
Если запрос на SQL действительно сложный, то ActiveRecord не спасает.
Причём тут IoC я не понимаю.
> Так-же и тут, большая часть всех зависимостей сводится к таким вещам
> как: загрузить зависимости, загрузить код, загрузить конфиг, собрать и
> связать с другим приложением. Micon разрешает такие случаи
> автоматически.
Вот в чём проблема то в рельсах загрузить код? Даже require писать уже
не надо: автолоадер стал достаточно предсказуемым и очень удобным.
Загрузить конфиг проще простого: Config = YAML.load(Rails.root +
"/config/app-" + Rails.env + ".yml")
Зачем мне тут дополнительный уровень косвенности?
> Зачем делают рефакторинг и удаление ненужного и лишнего кода? Чтобы
> упростить систему.
>
Покажи код, который ты считаешь сложным и как ты его упростишь? Я не
увидел пока этого в примерах.
> Скажем так, этого почти не бывает в рельсах, точнее я не видел,
Во-первых <<я не видел>> -- это хорошая поправка. На деле возникают проблемы.
Вот делали мы биллинг. Думаешь это очень просто так задизайнить
систему приёма платежей так, что бы её можно было выдрать из одного
приложения и вставить в другое? Хрен там. Я вообще не уверен в том,
что это возможно сделать и причина тому в том, что действительно
разнообразная бизнес-логика делает механизм обобщенного наследования
кода неприемлемо сложным.
Т.е. условного говоря написать обобщенный фреймворк на все случаи
жизни становится хуже, чем копипастить какие-то куски каждый раз.
> наоборот, когда все модули системы инициилизируются по одному и тому-
> же сценарию - все становится проще, знаешь куда идти и где искать, чем
> когда каждый модуль имеет свой собственную уникальную инициализацию.
Куда идти то? Написан какой-то абстрактный вызов какого-то модуля,
который неизвестно где определится.
Куда мне смотреть следующей строчкой?
> это как посмотреть, когда этот object->invoke('setWidth', ...) всего в
> одном экземпляре, а конструкций типа object->setXxx() сотни
> разбросанных по всей системе - то что это спорный вопрос что проще.
Явные вызовы легче отследить.
>
> П.С.
> кстати, если вам что-то показалось непонятным или странным в
> документации - дайте знать пожалуйста,
>
Непонятно, какая проблема решается.
--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru
Комментариев нет:
Отправить комментарий