bash.im ithappens.me zadolba.li
5979

Объектно-обрезиненное программирование

16 апреля 2011, 08:00

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

Стоп, какая нафиг кровать из обрезиненного металла? Кровать должна быть мягкой, удобной, уютной. Мягкие уютные кресла, мягкие уютные столы…

Опять фигня получается: какие мягкие столы?! Столы, кровать и ноутбук — это разные вещи с разными свойствами, и делают их по-разному.

Так какого же, спрашивается, хрена некоторые разработчики, один раз освоив некую концепцию программирования, начинают её применять где надо и не надо?

Им кто-то сказал, что ООП — это современно, и теперь вместо программки из пары функций они непременно построят класс со встроенными методами, конструктором, деструктором, встроят его в программу и напишут ту же пару функций для вызова методов класса и получения результатов.

Им кто-то сказал, что code reuse — это правильно, и теперь вместо процедуры из трёх строк на C они прилинкуют пару десятков мегабайт библиотек фреймворка, в которых есть та самая процедура.

Им сказали: «Google использует server-side JavaScript», — и теперь они с упорством будут переписывать всю логику под возможности нового инструмента. Авторитет!

Господа, сходите, что ли, в автосервис и посмотрите на количество разных инструментов, которыми пользуются специалисты. А не как вы: либо только молотком (молоток — это надёжно), либо только отвёрткой (отвёртка — тонкий инструмент).