Bugün öğrendim ki: Rubberducking, programcıların kodlarındaki hataları bulmak için kullandıkları bir tekniktir. Kodlarını bir ördeğe veya başka bir cansız nesneye yüksek sesle açıklamak, konuşurken sorunları tespit etmelerine yardımcı olabilir.

Kod hata ayıklama yöntemi

Kauçuk ördek hata ayıklama (veya kauçuk ördek yöntemi), yazılım mühendisliğinde bir hata ayıklama tekniğidir. Bir programcı, hataları ve yanlış anlamaları ortaya çıkarmak için kodunu adım adım, doğal dilde - yüksek sesle veya yazılı olarak - açıklar.

Adı, Pragmatik Programcı kitabındaki bir hikayeye göndermedir. Kodunu satır satır ona açıklayan bir geliştiricinin kauçuk bir ördekle taşıdığı bir hikaye anlatır.[1] Uygulamanın varyasyonları diğer nesneleri veya hatta evcil hayvanları kullanır; peluş ayılar özellikle yaygındır.[2][3]

Yaklaşım

[düzenle]

Programcılar, bir sorunu başkasına, programlama bilgisi olmayan kişilere bile açıkladıkları sırada genellikle çözümleri keşfederler. Kodu açıklamak ve gerçekte yaptığıyla karşılaştırmak, tutarsızlıkları ortaya çıkarır.[4] Bir konuyu açıklamak ayrıca programcının ona yeni bakış açılarından bakmasını sağlar ve daha derin bir anlayış sağlayabilir.[5]

Çözümünü cansız bir nesneye (örneğin bir kauçuk ördeğe) açıklayan programcı, başkalarını rahatsız etmek zorunda değildir. Ayrıca, izleyici olmadan yüksek sesle düşünmekten daha iyi çalışır.[6] Bu yaklaşım, bilgisayar bilimi ve yazılım mühendisliği derslerinde öğretilmiştir.[7][8]

Popüler kültürde

[düzenle]

1 Nisan 2018'de Stack Exchange, "Quack Overflow" adlı bir 1 Nisan şakası başlattı. Ekranın sağ alt köşesinde bir kauçuk ördek avatarı belirdi, kullanıcı sorunlarını dinledi ve çözümler yazıyormuş gibi yaptı, ancak sadece basit bir "vak" sesi ile yanıt verdi. Sorunları çözmek için güçlü bir yöntem olarak kauçuk ördek yöntemine gönderme yaptı.[9]

Ayrıca bakınız

[düzenle]

Bilgisayar programlama portalı

Kod incelemesi

Çift programlama

Sokratik yöntem

Masa başı kontrolü

Ördek testi

Ördek yazımı

Yazılım incelemesi

Eureka etkisi § Aha! etkisi ve bilimsel keşif

Yüksek sesle düşünme protokolü

İşaret etme ve çağırma

Rogerian yöntemi

Endişe bebekleri

Öğreterek öğrenme

Vücut eşleştirme

Referanslar

[düzenle]