Наткнулся на Stackoverflow.com на интересный топик с вопросом о новом в программистском жаргоне. Предлагаю здесь подборку наиболее интересных выражений.![](https://habrastorage.org/r/w780q1/storage/habraeffect/5c/a7/5ca76ad3f387324adf6a5f84c18c22f8.jpg)
![](http://www.codinghorror.com/blog/images/coding-horror-official-logo-small.png)
Разработка, управляемая страхом — когда менеджмент проекта только подливает масла в огонь и оказывает излишнее давление на разработчиков.
![](https://habrastorage.org/r/w1560/storage/habraeffect/97/3d/973decd5a4254b8ebfd710829443b17e.png)
Названо после ежегодного уикэнда быстрой разработки имени Rob Busack.
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/ede/ef4/680/edeef468058092d937803ab15143c1ff.jpg)
Многослойный многоуровневый код
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/a08/fbf/ee2/a08fbfee246f25e487216c4cca56a1d8.jpg)
![](https://habrastorage.org/r/w780q1/storage/habraeffect/1d/5b/1d5b6dec67e26e4bcbca198824845927.jpg)
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/e1b/c16/ae7/e1bc16ae757cbf863f193af9a6067a23.jpg)
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/d8a/6b5/474/d8a6b54741c3a337b6392b8cd445c34f.jpg)
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/408/da8/8a5/408da88a51136f95362c9d0622167e53.jpg)
![](http://www.corgi.co.uk/_images/assets/product-directory/category-thumbnail/007.jpg)
Контракт очень хорошо определен и документирован, но в реальности ничего не реализовано.
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/7cc/7a3/06f/7cc7a306f0e4afab7ff2ac8de4936b33.jpg)
![](https://habrastorage.org/r/w1560/getpro/habr/comment_images/adb/22d/878/adb22d8785be6c518bab8a5412cabfd3.png)
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/cbb/f88/535/cbbf88535600e32bb90d575adbf6b4cf.jpg)
API упрощен до такой степени, что пользоваться им до отчаяния сложно.
![](http://blog.makezine.com/pong-1.jpg)
Пусть пользователи будут тестировщиками, подайте им сырой продукт и примите порцию багов.
![](https://habrastorage.org/r/w780q1/getpro/habr/post_images/26e/272/796/26e2727963563a512a4c18415a81fe9f.jpg)
Египетские операторные скобки
if (a == b) {<br> printf("hello");<br>}<br><br>
![](https://habrastorage.org/storage/habraeffect/5c/a7/5ca76ad3f387324adf6a5f84c18c22f8.jpg)
Fear Driven Development
![](http://www.codinghorror.com/blog/images/coding-horror-official-logo-small.png)
Разработка, управляемая страхом — когда менеджмент проекта только подливает масла в огонь и оказывает излишнее давление на разработчиков.
Hope Driven Development
Разработка, управляемая надеждой — разработка в длительном неспланированном цикле с надеждой, что все заработает в релизеRob Busack: Реальная модель водопада Waterfall Model.
![](https://habrastorage.org/storage/habraeffect/97/3d/973decd5a4254b8ebfd710829443b17e.png)
Названо после ежегодного уикэнда быстрой разработки имени Rob Busack.
РеФАКторинг
реФАКторинг — получение полностью неподдерживаемого кода путем небольших изменений качественного и хорошо спроектированного кода.Код — Пахлава
![](https://habrastorage.org/getpro/habr/post_images/ede/ef4/680/edeef468058092d937803ab15143c1ff.jpg)
Многослойный многоуровневый код
Нажимай сильнее /Неправильный палец/ правильно держи мышку
Реакция разработчика на утверждения тестировщиков о том, что что-то не работает при использовании одного из устройств ввода.![](https://habrastorage.org/getpro/habr/post_images/a08/fbf/ee2/a08fbfee246f25e487216c4cca56a1d8.jpg)
Тестировщик: Модуль X не работает корректно
Разработчик: Покажите шаги тестирования
Тестировщик: Я коснулся его, затем… ой, подождите, сейчас все работает .
Разработчик: Каким пальцем вы касаетесь экрана?
Тестировщик: Указательный палец
Разработчик: Должно быть раньше вы использовали неправильный палец.
Тестировщик: Да… пожалуй..
Строковая типизация (Stringly typed vs strongly typed)
Использование строк в качестве параметров там, где можно найти более подходящие типы![](https://habrastorage.org/storage/habraeffect/1d/5b/1d5b6dec67e26e4bcbca198824845927.jpg)
Естественный отбор
Замена чужого кода собственным.![](https://habrastorage.org/getpro/habr/post_images/e1b/c16/ae7/e1bc16ae757cbf863f193af9a6067a23.jpg)
frAGILE
frAGILE — выведение людей из себя путем неверного использования методологий Agile![](https://habrastorage.org/getpro/habr/post_images/d8a/6b5/474/d8a6b54741c3a337b6392b8cd445c34f.jpg)
Менеджер проекта: Давайте использовать методологии Agile!Позже в проекте…
Разработчик: Окей. Я буду делать минимум для достижения необходимой бизнес-функциональности.
Менеджер проекта: Отлично!
Разработчик: Мы сможем сделать рефакторинг после того, как будут построены другие части системы. Сейчас это не очень важно.
Менеджер проекта: Хорошо. Мы не должны делать больше, чем нужно
Разработчик: Мы нуждаемся в рефакторинге, потому что код неподдерживаемый… Затем…
Менеджер проекта: Выбор отговорки для отказа от развертывания:В итоге: Разработчик страдает от увеличивающегося бессвязного кода-спагетти и никого это не заботит.
- Мы сможем сделать это немного позже
- Если все работает, зачем что-то менять?
- У нас нет времени на этот «рефакторинг»
- Я обещаю, что мы сделаем это позже
CTO: Agile это отвратительно! Никогда не будем использовать это! Модель водопада рулит!
Босс-билд
Создание специальной версии релиза продукта для запуска на компьютере «Босса». Например, Босс-билд может включать бесконечный список особых шрифтов, цветов, размеров и расположений элементов управления, меняющийся каждые несколько дней.![](https://habrastorage.org/getpro/habr/post_images/408/da8/8a5/408da88a51136f95362c9d0622167e53.jpg)
Интерфейс Джеймса Бонда
![](http://www.corgi.co.uk/_images/assets/product-directory/category-thumbnail/007.jpg)
Контракт очень хорошо определен и документирован, но в реальности ничего не реализовано.
Класстрофобия
Отказ от объектно-ориентированного подхода при очевидной необходимости и возможности его использования.Очень ориентированное программирование(ООП, Over Oriented Programming)
Использование пяти уровней классов, когда можно обойтись только одним![](https://habrastorage.org/getpro/habr/post_images/7cc/7a3/06f/7cc7a306f0e4afab7ff2ac8de4936b33.jpg)
Паттерн документирования «Буказоид»(Bukazoid documentation pattern)
Все описание бесполезно и не отвечает ни на один из возникающих вопросов к коду. Вместо буказоидов можно использовать любое несуществующее слово, в русском языке, похоже, больше всего подходят бутявки./**<br> * Bukazoid manager is a manager to manage bukazoids.<br> */<br>public class BukazoidManager extends SomeOtherClass {<br>...<br>}<br><br>
Метод Перкова
The Perkov Method — стиль программирования, основанный на комментариях в виде псевдо-кода и допущении, что кто-то, кто будет делать обзоры кода реализует недостающую функциональность. В финальной стадии комментарии могут быть в 4 раза подробнее, чем это необходимо в реализации.Пример: обычная реализация Hello World:class Program <br>{ <br> static int Main(string[] args) <br> { <br> Console.WriteLine("Hello World"); <br> } <br>}<br><br>
Реализация по методу Перкова:class Program <br>{ <br> static int Main(string[] args) <br> { <br> // at this point the program really should be outputting text to the <br> // console. we must take into account 78 character maximum line length<br> // and ensure that we use Environment.NewLine for line endings. <br> // ideally should provide multi-region language support and UTF-8 / <br> // UTF-16 encoding. <br> } <br>}<br><br>
Маркетинговые байты
Байты, измеряемые как множители 1000![](https://habrastorage.org/getpro/habr/comment_images/adb/22d/878/adb22d8785be6c518bab8a5412cabfd3.png)
Корабль в бутылке
![](https://habrastorage.org/getpro/habr/post_images/cbb/f88/535/cbbf88535600e32bb90d575adbf6b4cf.jpg)
API упрощен до такой степени, что пользоваться им до отчаяния сложно.
Методология разработки Пинг-Понг
![](http://blog.makezine.com/pong-1.jpg)
Пусть пользователи будут тестировщиками, подайте им сырой продукт и примите порцию багов.
Дарвиновское программирование/Экспериментальное программирование
Изменение кода(как правило, случайное) без понимания смысла изменений, пока он не заработает. Например, замена инкремента на декремент.![](https://habrastorage.org/getpro/habr/post_images/26e/272/796/26e2727963563a512a4c18415a81fe9f.jpg)