Изобретая колесо

редактировать

К изобретать колесо - это дублировать базовый метод, который уже был создан или оптимизирован другими.

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

Содержание
  • 1 Использование
  • 2 При разработке программного обеспечения
  • 3 Связанные фразы
  • 4 См. Также
  • 5 Ссылки
Использование

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

«Изобретая колесо заново» может быть ироническим клише - неясно, когда на самом деле было изобретено колесо. Современное «изобретение» колеса на самом деле может быть «переизобретением» старинного изобретения. Кроме того, регулярно разрабатывается и продается множество различных колес с усовершенствованием существующих колес (например, многие типы доступных шин). Метафора подчеркивает понимание существующих решений, но не обязательно соглашаться на них.

В разработке программного обеспечения

В разработке программного обеспечения часто необходимо изобретать колесо, чтобы обойти несовместимости лицензирования программного обеспечения или существующие технические ограничения. в частях или модулях, предоставленных третьими сторонами. Примером может быть реализация быстрой сортировки для сценария, написанного на JavaScript и предназначенного для встраивания в веб-страницу. Алгоритм быстрой сортировки хорошо известен и легко доступен в библиотеках для разработчиков программного обеспечения, пишущих приложения общего назначения на C ++ или Java, но некоторые реализации Javascript не предоставляют этого конкретный алгоритм. Следовательно, если разработчик хочет надежно использовать быструю сортировку на своей веб-странице, он должен «заново изобрести колесо», заново реализовав алгоритм. Они могли бы скопировать его с другой веб-страницы, но тогда они могли бы столкнуться с авторским правом и проблемами лицензирования программного обеспечения. Новое изобретение колеса в этом случае обеспечивает недостающую функциональность, а также позволяет избежать проблем с авторским правом.

Кроме того, новички в языке (и особенно новички в программировании) часто будут пытаться вручную написать множество функций, для которых более надежный и оптимизированный эквивалент уже существует в стандартной библиотеке или другие легкодоступные библиотеки. Хотя это может быть полезно в качестве обучающего упражнения, если делать это по незнанию, результат часто оказывается менее читаемым, менее надежным и менее оптимизированным программным обеспечением, которое требует больше времени для написания, тестирования, обслуживания и отладки.

Связанные фразы

Переосмысление квадратного колеса - это практика излишней инженерии артефактов, которые обеспечивают функциональность, уже предоставляемую существующими стандартными артефактами (изобретение колеса заново), и приводят к худшему результату, чем стандартное (квадратное колесо ). Это анти-шаблон, который возникает, когда инженер не знает или презирает стандартное решение или не понимает проблему или стандартное решение в достаточной степени, чтобы избежать проблем, преодолеваемых стандартом. В основном это проблема неопытных инженеров, или эффект второй системы.

Многие проблемы содержат тонкости, которые были давно решены в основных разработках (например, важность гладкости обода колеса). Любой, кто начинает с нуля, игнорируя предшествующий уровень техники, естественно столкнется с этими проблемами заново, и для получения удовлетворительного результата ему придется потратить время на разработку решений для них (скорее всего, те же решения, которые уже хорошо известны.). Однако, когда изобретение колеса рассматривается как подзадача более крупного инженерного проекта, а не как самостоятельный проект с целью создания лучшего колеса, инженер часто не рассчитывает тратить на это много времени. В результате используется недоработанная, плохо работающая версия колеса, когда использование стандартного колеса было бы быстрее и проще и дало бы лучшие результаты.

Предупреждение колеса предполагает откладывание задачи, если ожидается, что она будет выполнена позже. Например, «Мы не хотим изобрести колесо» при обсуждении решения проблемы, когда известно, что решение разрабатывается в другом месте. Это не обязательно уничижительно.

Новое определение колеса - это практика придумывания новых и часто заумных способов описания вещей, когда существующий способ описания их был совершенно адекватен.

См. Также
Ссылки
  • Кемпер, Стив, История гения, инноваций и великих амбиций, HarperCollins, ISBN 0-06-076138-5
  • Хершок, Питер Д., Буддийский ответ на информационная эпоха, State University of New York Press, ISBN 0-7914-4232-2
Посмотрите изобретайте велосипед в Викисловаре, бесплатный словарь.
Последняя правка сделана 2021-06-03 12:11:58
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте