Отладка резиновой утки
В обеспечения разработке программного отладка резиновой уткой (или «резиновой уткой» ) — это метод отладки кода путем формулирования проблемы в устной или письменной форме на естественном языке . Название является отсылкой к истории из книги «Программист-прагматик» , в которой программист носил с собой резиновую утку и отлаживал свой код, заставляя себя объяснять его утке, строка за строкой. [1] Для этой техники существует множество других терминов, часто связанных с различными (обычно) неодушевленными предметами или домашними животными, такими как собака или кошка. плюшевые мишки . Также широко используются [2] Когда в дело вовлечены люди, это называется конфессиональным программированием. [3]
Подход
[ редактировать ]Многие программисты имели опыт объяснения проблемы кому-то другому, возможно, даже тому, кто ничего не знает о программировании, а затем в процессе объяснения проблемы находили решение. При описании того, что должен делать код, и наблюдении за тем, что он на самом деле делает, любое несоответствие между этими двумя понятиями становится очевидным. [4] В более общем смысле, преподавание предмета требует его оценки с разных точек зрения и может обеспечить более глубокое понимание . [5] Используя неодушевленный предмет, программист может попытаться выполнить это, не прерывая никого другого, и с лучшими результатами, чем те, которые наблюдались при простом мышлении вслух без аудитории. [6] Этот подход преподается на курсах информатики и разработки программного обеспечения. [7] [8]
В популярной культуре
[ редактировать ]1 апреля 2018 года Stack Exchange представила на своих веб-сайтах аватар резиновой уточки в качестве новой «функции» под названием Quack Overflow в качестве первоапрельской шутки. Утка появилась в правом нижнем углу области просмотра браузера и попыталась помочь посетителям, выслушивая их проблемы и предлагая решения. Однако утка просто издала кряканье , видимо, подумав и набрав. В нем упоминалось, что резиновое пригибание является мощным методом решения проблем. [9]
См. также
[ редактировать ]- Обзор кода
- Парное программирование
- Сократовский метод
- Кабинетная проверка
- Утиный тест
- Утка печатает
- Обзор программного обеспечения
- Эффект Эврики § Ага! Эффект и научное открытие
- Протокол «Думайте вслух»
- Указывая и вызывая
- Роджерианский метод
- Куклы беспокойства
- Обучение через обучение
- Удвоение тела
Ссылки
[ редактировать ]- ^ Хант, Эндрю; Томас, Дэвид (1999). Программист-прагматик: от подмастерья к мастеру . Эддисон Уэсли. ISBN 978-0201616224 . п. 95, сноска.
- ^ Отладка, Резиновая Утка. «Отладка резиновой утки» . Rubberduckdebugging.com . Проверено 14 сентября 2023 г.
- ^ Пригибание, Резина. «Резиновое ныряние» . Резиновая уточка . Проверено 4 апреля 2024 г.
- ^ Бейкер, С. Дж., Вклад собаки, вырезанной из картона, в надежность и удобство обслуживания программного обеспечения .
- ^ Хейс, Дэвид (25 июня 2014 г.). «Психология, лежащая в основе эффективности отладки резиновой уткой» . Нажмите «Вверх» через Интернет-архив . Архивировано из оригинала 9 июля 2014 года . Проверено 10 сентября 2021 г.
- ^ Берд, Ник; Джозеф, Брианна; Гонгора, Габриэла; Сирота, Мирослав (2023). «Расскажите нам, что вы на самом деле думаете: анализ протокола мышления вслух вербального теста на когнитивную рефлексию» . Журнал разведки . 11 (4): 76. doi : 10.3390/jintelligence11040076 . ПМЦ 10146599 . ПМИД 37103261 .
- ^ Эттвуд, Джефф (2012). «Решение проблем с резиновой уткой» . codinghorror.com .
- ^ Малан, Дэвид (2020). «Отладка резиновой утки в CS50 IDE» . заметные новости .
- ^ «Stack Exchange захвачен резиновой уткой!» . Обмен метастеками . 31 марта 2018 года . Проверено 1 апреля 2018 г.