دیباگ کردن با روش اردک پلاستیکی(Rubber Duck)

همچنین میتونید این پست رو در وبلاگ من بخونید.به عنوان یک برنامه نویسی مطمئناَ توی موقعیتی قرار گرفتین که برنامه‌ای که نوشتین اون شکلی که لازمه کار نمیکنه.که علتش میتونه یک اشتباه تایپی باشه، حواستون نبوده یا اطلاع کافی درمورد اینکه اون تکنولوژی یا اون بخش چطوری کار میکنه نداشتید.و وقتی که کدی که نوشتین کار نکنه از زمین و زمان طلب کارید و تنها کاری که میتونید بکیند اینکه باگ رو پیدا کنید و مشکلش رو حل کنید. باگ هایی که به وجود میان دلیلش اینکه باید با کامپیوتر به زبان خودش دقیق و با جزئیات کامل صحبت کنید.یکی از روش هایی که میشه باهاش باگ ها رو پیدا کنید و خیلی ها ازش استفاده می کنن روش Rubber Duck یا اردک پلاستیکی هستش.توی این پست میخوام درمورد روش دیباگ Rubber Duck صحبت کنیم که چیه و چطوری کار میکنه. و از این به بعد بهش روش اردک پلاستیکی میگیم.چرا برنامه نویسا از روش اردک پلاستیکی استفاده می کنن؟خیلیا که یه اردک پلاستیکی روی میز برنامه نویسا میبینن و فکر میکنن که فقط یک قسمتی از دکوره یا یه اسباب بازی سادست.در واقعیت اون اردک ساده که به اسم Rubber Duck می شناسنش یه ابزاره که به برنامه نویسا برای حل مسائل کمک میکنه. برنامه نویسا باگ ها و مشکلاتی که باهاش بر میخورن رو برای اردک پلاستیکی توضیح میدن که بهشون به شکل معجزه آسایی کمک میکنه که باگ رو پیدا کنن یا مشکل رو حل کنید.دلیل این کار اینکه وقتی شما یک مشکل و مسئله ای رو برای کسی دیگه ای توضیح میدید درک بهتری از اون مسئله پیدا می کنید. و بهتون اجازه میده که مسئله رو از دید دیگه ای ببینید و متوجه چیزایی که بار اول متوجهشون نشدید بشید.برای درک بهتر اینکه این روش چطوری کار میکنه این پست رو تا انتها بخونید.روش Rubber Duck چیه و چطوری استفاده میشهروش اردک پلاستیکی معروفیتش رو از یه داستان توی کتاب The Pragmatic Programmer که سال 1999 منتشر شد میگیره.داستان روایتی رو به تصویر میکشه که یه برنامه نویس یه اردک پلاستیکی رو همیشه همراه خودش داشت و هر بار که کدهاش به مشکل میخوره کدهاش رو خط به خط براش توضیح میده.صحبت کردن با یه اردک بی جون ممکنه در نگاه اول خیلی احمقانه به نظر برسه، ولی در بین برنامه نویسا این روش خیلی محبوبه چون واقعا کار میکنه.در روش اردک پلاستیکی شما علاوه بر اینکه کد ها رو خط به خط برای اردک توضیح میدیم، براش توضیح میدیم که چه کاری میخوایم انجام بدیم و هدفمون از اینکار چیه و میخوایم به چه هدفی برسیم. وقتی که همه چیز درمورد کد رو برای اردک پلاستیکیمون توضیح میدیم، احتمال اینکه باگ رو پیدا کنیم خیلی زیاده.خیلی وقتا هست خارج از دنیای برنامه نویسی که وقتی به مشکلی برمیخوریم، تصمیم میگیریم که اون مشکل رو برای دوستمون توضیح بدیم، و راه حلش رو قبل از تموم کردن صحبتمون پیدا می کنیم. همین موضوع رو با اردک پلاستیکی هم داریم.با توضیح دادن برای یه اردک پلاستیکی لازم نیست مزاحم کسی بشید، و حتما لازم نیست که اردک پلاستیکی باشه میتونه حیون خونگیتون یا یه جسم بی جون دیگه باشه.تئوری Rubber Duck چیست؟ایده ی پشت روش اردک پلاستیکی اینکه وقتی برنامه نویس به یه مشکلی یا باگی برمیخوره، کد هاش رو خط به خط برای یه اردک پلاستیکی توضیح بده.به این فکر کنید وقتی که یه کپشن برای پست اینستاگرامتون یا تویتی که میخواید بزنید رو یبار با صدای بلند بخونید، اینکار باعث میشه که غلط املایی یا گرامری که دارید رو پیدا کنید و تصحیحش کنید. همین موقعیت هم با توضیح دادن کدتون به اردک پلاستیکی صدق میکنه.وقتی که دارید کدهاتون رو به اردک پلاستیکی توضیح میدید راه حل مشکل همونجا خودش رو نشون میده.کلام آخربرای حل مشکلات و یادگرفتن به شکل موثر، باید درموردش با یکی حرف بزنید و برای یکی آموزشش بدی. و چه چیزی بهتر از یه جسم پلاستیکی بی جون که هر چقدرم باهاش درمورد مشکلات کدتون حرف بزنید نمیخواد کله تون رو بکنه.