Мне приходилось специально ставить шестой ИЕ, чтобы интернет банкинг нормально работал.
И я наверное попадал в статистику, которую подавали айтишники на стол руководству при обосновании, что не нужно ничего делать, ведь смотрите сколько у нас пользователей ие6.
Это правда года три назад было, на позапрошлой работе. Тогда действительно пользователей шестерки было еще достаточно много.
Про Concern полезный раздел, я про него сам узнал только с месяц назад.
Но все же DRY заключается не в размазывании кода по модулям.
Если имеем два класса с одинаковым кодом, то да, можно и модули применить.
Хотя даже в этом случае вижу минимум два варианта отDRYить классы:
* унаследовать от одного класса, все общее перенести туда
* общее вынести в модуль и инклюдить его
Если сайт большой, то скорее всего, что перевод на rails 3 будет заключаться в переписывании (проект, над которым сейчас работаю, как раз пошел по этому пути)
Хм, сейчас у них написано «We recommend Ruby 1.8.7 or Ruby 1.9.2 for use with Rails». Когда rails 3 вышел, было написано, что поддерживаются обе версии, но предпочтение 1.8.7.
Видимо, когда вышел Ruby 1.9.2-p136, рекомендацию сменили.
А мне все понятно. Один из руководителей решил оторваться годик в Тайланде, заодно собрав компанию, вроде как и отдыхаешь, и работаешь, и команда под присмотром.
у них и в адсенсе такой же маразм. Из-за одного сайта заблочили акк, и теперь я никогда в жизни (так написано в условиях) не имею право пользоваться адсенсом :)
Ну и rescue воткнуть на всякий
Мне приходилось специально ставить шестой ИЕ, чтобы интернет банкинг нормально работал.
И я наверное попадал в статистику, которую подавали айтишники на стол руководству при обосновании, что не нужно ничего делать, ведь смотрите сколько у нас пользователей ие6.
Это правда года три назад было, на позапрошлой работе. Тогда действительно пользователей шестерки было еще достаточно много.
Но все же DRY заключается не в размазывании кода по модулям.
Если имеем два класса с одинаковым кодом, то да, можно и модули применить.
Хотя даже в этом случае вижу минимум два варианта отDRYить классы:
* унаследовать от одного класса, все общее перенести туда
* общее вынести в модуль и инклюдить его
Если имеется метод, внутри которого без комментариев не разобраться — его нужно рефакторить.
Лично мой подход такой: если код должен вернуть больше одного тега в результате — нужен партиал.
Кстати, замеряли производительность до и после?
И как у вас обстоят дела с тестами?
Видимо, когда вышел Ruby 1.9.2-p136, рекомендацию сменили.
Кроме того, для Rails 3.0 рекомендуется все же использовать 1.8.7.
Кроме того, скаффолдинг плохо решает такие вещи, как вложенные ресурсы, неймспейсы, сингл ресурсы и тп.
Мне ближе подход, когда я генерирую минимальный функционал и дописываю его, чем допиливаю скаффолд.