Обходной приём

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Обходной приём, workaround, паллиатив, на техническом жаргоне — «костыль» — относительно быстрое и простое решение проблемы, применяемое для срочного устранения её последствий, но не влияющее на причины её возникновения. Обходной приём обычно является временным, или неполным решением, не отвечающим требованиям к дальнейшему развитию системы, требующим в дальнейшем замены на окончательное, более полное. Очень часто обходные приёмы требуют творческого подхода и нестандартного мышления. Обходные решения применяются в разных областях человеческой деятельности, когда радикальное решение по какой-то причине не может быть применено вообще или требует слишком много времени для реализации.

Основной проблемой обходных приёмов является то, что их применение снижает мотивацию к радикальному решению проблемы и временный по своей сути «костыль» остаётся в качестве постоянного решения, сам по себе становясь источником дополнительных проблем. В технике реализация обходного приёма может стать причиной отказа системы в будущем[1]. К примеру, в компьютерном программировании обходные приёмы часто используются, чтобы обойти конкретную ошибку в библиотеке. Когда библиотека наконец-то будет исправлена, обходной приём, рассчитанный на ошибочное поведение библиотеки, может стать причиной сбоя в программе.

Причины применения обходных решений[править | править вики-текст]

  • Высокая стоимость подлинных решений
  • Отсутствие в нужный момент ресурсов, требуемых для реализации подлинного решения
  • Подлинное решение требует большого времени для разработки
  • Пока неясно, как реализовать подлинное решение, и что оно будет из себя представлять
  • Внедрение подлинного решения приведёт к потере совместимости с большим количеством существующих систем. Переоборудование же всех систем — дорогостоящее и долговременное занятие.

Примеры широко известных обходных решений[править | править вики-текст]

В программировании[править | править вики-текст]

  • Функция __doPostBack в ASP.NET. Существует потому, что у браузеров изначально не было возможности инициировать отправку страницы на сервер с помощью клиентского сценария (фактор — совместимость)
  • Спецификация XHTML 1.0 Transitional. Существует для совместимости с браузерами, поддерживающими старые спецификации HTML[2][3] (фактор — совместимость)

В технике[править | править вики-текст]

  • «Жучок» вместо предохранителя в электрощитке. Позволяет немедленно восстановить электроснабжение при отсутствии под рукой предохранителей, но может привести к пожару в случае перегрузки или короткого замыкания[4]. (фактор — ресурсы, иногда — время)
  • Системы кодирования цвета в аналоговом телевидении: NTSC, PAL, SECAM. Все они разрабатывались с учётом совместимости с большим количеством существовавших на момент их разработки чёрно-белых телевизоров и с существовавшим форматом телевизионного сигнала. Как результат — все эти системы имеют свои недостатки, самый главный из которых — меньшая чёткость цвета по сравнению с яркостной составляющей[5]. (фактор — совместимость)

В медицине[править | править вики-текст]

  • Применение жаропонижающих средств при вирусной инфекции. Они никак не воздействуют на причину заболевания, но устраняют или облегчают лихорадку, защищая внутренние органы в течение времени, необходимого иммунной системе для борьбы с вирусом (фактор — время).
  • Временная пломба на зубе, применяемая при лечении глубокого кариеса (первое посещение), лечении пульпита биологическим методом, после заполнения корневого канала. (фактор — время и стоимость временной пломбы по сравнению с полноценной)
  • Костыли — пока не срастётся перелом и больной будет в состоянии ходить без поддержки (фактор — время).

Примечания[править | править вики-текст]