Наткнулся на Stackoverflow.com на интересный топик с вопросом о новом в программистском жаргоне. Предлагаю здесь подборку наиболее интересных выражений.
Разработка, управляемая страхом — когда менеджмент проекта только подливает масла в огонь и оказывает излишнее давление на разработчиков.
Названо после ежегодного уикэнда быстрой разработки имени Rob Busack.
Многослойный многоуровневый код
Контракт очень хорошо определен и документирован, но в реальности ничего не реализовано.
API упрощен до такой степени, что пользоваться им до отчаяния сложно.
Пусть пользователи будут тестировщиками, подайте им сырой продукт и примите порцию багов.
Египетские операторные скобки
if (a == b) {<br> printf("hello");<br>}<br><br>
Fear Driven Development
Разработка, управляемая страхом — когда менеджмент проекта только подливает масла в огонь и оказывает излишнее давление на разработчиков.
Hope Driven Development
Разработка, управляемая надеждой — разработка в длительном неспланированном цикле с надеждой, что все заработает в релизеRob Busack: Реальная модель водопада Waterfall Model.
Названо после ежегодного уикэнда быстрой разработки имени Rob Busack.
РеФАКторинг
реФАКторинг — получение полностью неподдерживаемого кода путем небольших изменений качественного и хорошо спроектированного кода.Код — Пахлава
Многослойный многоуровневый код
Нажимай сильнее /Неправильный палец/ правильно держи мышку
Реакция разработчика на утверждения тестировщиков о том, что что-то не работает при использовании одного из устройств ввода.Тестировщик: Модуль X не работает корректно
Разработчик: Покажите шаги тестирования
Тестировщик: Я коснулся его, затем… ой, подождите, сейчас все работает .
Разработчик: Каким пальцем вы касаетесь экрана?
Тестировщик: Указательный палец
Разработчик: Должно быть раньше вы использовали неправильный палец.
Тестировщик: Да… пожалуй..
Строковая типизация (Stringly typed vs strongly typed)
Использование строк в качестве параметров там, где можно найти более подходящие типыЕстественный отбор
Замена чужого кода собственным.frAGILE
frAGILE — выведение людей из себя путем неверного использования методологий AgileМенеджер проекта: Давайте использовать методологии Agile!Позже в проекте…
Разработчик: Окей. Я буду делать минимум для достижения необходимой бизнес-функциональности.
Менеджер проекта: Отлично!
Разработчик: Мы сможем сделать рефакторинг после того, как будут построены другие части системы. Сейчас это не очень важно.
Менеджер проекта: Хорошо. Мы не должны делать больше, чем нужно
Разработчик: Мы нуждаемся в рефакторинге, потому что код неподдерживаемый… Затем…
Менеджер проекта: Выбор отговорки для отказа от развертывания:В итоге: Разработчик страдает от увеличивающегося бессвязного кода-спагетти и никого это не заботит.
- Мы сможем сделать это немного позже
- Если все работает, зачем что-то менять?
- У нас нет времени на этот «рефакторинг»
- Я обещаю, что мы сделаем это позже
CTO: Agile это отвратительно! Никогда не будем использовать это! Модель водопада рулит!
Босс-билд
Создание специальной версии релиза продукта для запуска на компьютере «Босса». Например, Босс-билд может включать бесконечный список особых шрифтов, цветов, размеров и расположений элементов управления, меняющийся каждые несколько дней.Интерфейс Джеймса Бонда
Контракт очень хорошо определен и документирован, но в реальности ничего не реализовано.
Класстрофобия
Отказ от объектно-ориентированного подхода при очевидной необходимости и возможности его использования.Очень ориентированное программирование(ООП, Over Oriented Programming)
Использование пяти уровней классов, когда можно обойтись только однимПаттерн документирования «Буказоид»(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Корабль в бутылке
API упрощен до такой степени, что пользоваться им до отчаяния сложно.
Методология разработки Пинг-Понг
Пусть пользователи будут тестировщиками, подайте им сырой продукт и примите порцию багов.