Rubbereendontfouting

In sagteware-ingenieurswese is rubbereendontfouting (of die rubbereendontfoutingsmetode) 'n metode om kode te ontfout deur 'n probleem in gesproke of geskrewe natuurlike taal te artikuleer. Die naam is 'n verwysing na 'n storie in die boek The Pragmatic Programmer waarin 'n programmeerder 'n rubbereend ronddra en sy kode ontfout deur homself te dwing om dit reël vir reël aan die eend te verduidelik. bl. 95, voetnota. Baie ander terme bestaan vir hierdie tegniek, wat dikwels verskillende (gewoonlik) lewelose voorwerpe of troeteldiere soos 'n hond of 'n kat behels. Teddiebere word ook algemeen gebruik. Wanneer mense betrokke is, staan dit bekend as konfessionele programmering.

Benadering
Baie programmeerders het die ervaring gehad om 'n probleem aan iemand anders te verduidelik, moontlik selfs aan iemand wat niks van programmering weet nie, en dan die oplossing te vind in die proses om die probleem te verduidelik. Deur te beskryf wat die kode veronderstel is om te doen en waar te neem wat dit werklik doen, word enige teenstrydigheid tussen hierdie twee duidelik.. Meer algemeen dwing die onderrig van 'n vak die evaluering daarvan vanuit verskillende perspektiewe af en kan dit 'n dieper begrip verskaf. Deur 'n lewelose voorwerp te gebruik, kan die programmeerder probeer om dit te bewerkstellig sonder om iemand anders te onderbreek, en met beter resultate as wat waargeneem is deur bloot hardop te dink sonder 'n gehoor. Hierdie benadering is in rekenaarwetenskap en sagteware-ingenieurswese-kursusse geleer.

In populêre kultuur
Op 1 April 2018 het Stack Exchange 'n rubbereend-avatar op hul webwerwe bekendgestel as 'n nuwe "funksie" genaamd Quack Overflow as 'n Gekkedag-grap. Die eend het in die onderste regterhoek van die blaaier-kykpoort verskyn en probeer om besoekers te help deur na hul probleme te luister en met oplossings te reageer. Die eend het egter bloot 'n kwakgeluid voortgebring nadat hy glo gedink en getik het. Dit verwys na rubbereendontfouting as 'n kragtige metode om probleme op te los.

 Verwysings 

Kategorie:Rekenaars
Kategorie:Rekenaarprogrammering