Пользователь
0,0
рейтинг
10 марта 2015 в 21:55

Управление → Если бы паттерны были программистами

Никогда не думали, а что если паттерны ООП спроецировать на работу программистов?

Singleton-разработчик
Разработчик с bus-factor=1. Как правило, один из «старожилов» проекта, который приложил руку ко многим компонентам и только он знает как эти части работают вместе. Практически «невыпиливаемый» из проекта, либо без него все начинает «работать как-то не так». По любому вопросу «как оно работает» всегда отвечает «да мне проще самому запилить» и запиливает.

Registry-разработчик
Также как и singleton это разработчик-старожил, однако, в отличии от него, не знает деталей реализации, но знает что компонент в принципе существует. Зачастую, служит «живым справочником» и на любой вопрос о коде может посоветовать где посмотреть как это делается.

Factory-разработчик
Разработчик в веб-студии. На вход зачастую получает несколько параметров, вроде готовой верстки и пары картинок, а на выход выдает сайт-визитку или очередной интернет-магазин. Как правило, со временем стремится сократить число параметров на входе чтобы увеличить скорость работы, а то и вовсе автоматизировать процесс.

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

Proxy-разработчик
Тот же adapter-разработчик, только без привнесения «дополнительной полезности». Встречается с менеджерами, заводит с их слов тикеты, которые потом тупо переназначает на других разработчиков. При этом всячески старается продемонстрировать свою незаменимость в этом процессе обеим сторонам.

Observer-разработчик
Регулярно мониторит все коммиты master-бранча и делает их ревью даже если это не входит в его область ответственности. Если что-то по ревью ему не нравится, то любит запускать event’ы по рефакторингу и задачам на доработку.

(Single-)Strategy-разработчик
Включаясь в любой новый проект или задачу старается реализовать все по заранее выработанному на других проектах алгоритму. Даже если для этого нужно притянуть зависимости из других компонентов, как правило, оправдывая это тем, что «так правильно, я так много раз делал и все работало».

Facade-разработчик
Ответственный представитель команды, как правило, тим-лид. Всегда может взять на себя все организационные вопросы по работе всей команды в целом.

LazyInitialization-разработчик
Приступает к реализации задачи только когда кто-нибудь запросит ее статус. Категорически не признает работу по issue-трекеру через беклог.

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

God-object-разработчик
Единственный разработчик на проекте с самого его начала. Степень god-овости растет по мере отсутствия на проекте системы контроля версий, документации и роста «зоопарка».

Visitor-разработчик
Имеет общее представление о том как правильно писать код, и старается его донести до других разработчиков в их компонентах. Может залезть к вам в код, изменить отступы и переносы, добавить DOC-комменты, и даже переименовать «правильно» классы и методы и на этом будет считать свою миссию выполненной.

ChainOfResponsibility-разработчик
Прежде чем запилить задачу, начинает методично заваливать вопросами всех, кто по его мнению может помочь ему с ней, начиная от тим-лида, кончая сидящим рядом коллегой. Как только «очередной в цепочке» начинает говорить «Да задолбал, возьми уже и сам разберись», переключается на следующего и так до тех пор, пока кто-либо не распишет все до деталей, либо не закончатся коллеги.

Желаю вам в работе побольше хороших паттернов-коллег.
Евгений @evgenyl
карма
176,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Управление

Комментарии (11)

  • +1
    LOL. Это не перевод? По-английски такого нету?
    • +27
      Нет. Мое творчество.
      • +1
        Очень здорово. Тоже хотел спросить про перевод.
        Желаю всем быть Builder-разработчиками.
  • +3
    Никогда не думали, а что если паттерны ООП спроецировать на работу программистов?

    Представил себя в команде, состоящей из таких паттернов программистов. Почти всем захотелось по голове настучать за такое поведение.
    • +1
      Visitor-стучатель
      • +1
        Тонко. Искренне надеюсь, что нет
  • +2
    Весело, и похоже на правду.

    Получается, что только Singleton, Factory, Strategy, LazyInitialization, и GodObject (хоть как-то) работают, а остальные — так, планктонствуют.
  • +2
    А Decorator-разработчик — это такой член команды, который ходит по разработчикам команды и говорит: «Блин, ну добавь тут вот это. Тебе трудно чтоли? Это же одну секунду!»
  • 0
    Есть ошибки:
    «он знает эти части работают вместе»
    «обоим сторонам»
    «Отвественный»
    • 0
      один из «старожилОВ» проекта
  • 0
    Кто как, а я узнал себя в этом списке.
    Вот как это было
    «Я уже позабыл, в какой недуг я погрузился раньше всего, — знаю только, что это был какой-то ужасный бич рода человеческого, — и не успел я добраться до середины перечня «ранних симптомов», как стало очевидно, что у меня именно эта болезнь.

    Несколько минут я сидел, как громом пораженный, потом с безразличием отчаяния принялся переворачивать страницы дальше. Я добрался до холеры, прочел о ее признаках и установил, что у меня холера, что она мучает меня уже несколько месяцев, а я об этом и не подозревал. Мне стало любопытно: чем я еще болен? Я перешел к пляске святого Витта и выяснил, как и следовало ожидать, что ею я тоже страдаю; тут я заинтересовался этим медицинским феноменом и решил разобраться в нем досконально. Я начал прямо по алфавиту. Прочитал об анемии — и убедился, что она у меня есть и что обострение должно наступить недели через две. Брайтовой болезнью, как я с облегчением установил, я страдал лишь в легкой форме, и, будь у меня она одна, я мог бы надеяться прожить еще несколько лет. Воспаление легких оказалось у меня с серьезными осложнениями, а грудная жаба была, судя по всему, врожденной. Так я добросовестно перебрал все буквы алфавита, и единственная болезнь, которой я у себя не обнаружил, была родильная горячка».

    Джером К. Джером

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.