برنامه‌نویسی دونفره (Pair Programming)

  • یوسف مهرداد

ارتباط و تعامل بین افراد یکی از ارزشهای متدهای چابک است. بسیاری از اقدامات (Practice) این متدها نیز بر این اساس، پایه‌گذاری شده است.
ارتباط و تعامل یکی از مهم‌ترین چالشهایی است که در پذیرش و استقرار متدهای چابک در تیمها، با آن روبرو خواهید شد.

برنامه‌نویسی دونفر یا Pair Programming از جمله اقداماتی است که این چالش در آن پررنگ است. در این اقدام، یک نفر نقش راننده (driver) و نفر دوم، نقش هدایتگر(navigator) را بر عهده می‌گیرد. صفحه کلید در اختیار راننده است که کد را می‌نویسد و وظیفه نفر دوم بازنگری، پایش طراحی و پیدا کردن خطاها است.

بروکس در دهه ۱۹۵۰، کونستانتین در دهه ۱۹۹۰ و فارسر در OOPSLA سال ۹۴ به آن اشاره کرده‌اند. اما شهرت آن به سال ۱۹۹۹ با کتاب XP Explained از کنت بک و سایرین برمی‌گردد.

نکته جالب توجه این است که این تکنیک می‌تواند در تیم‌های غیرچابک نیز اجرا گردد.

به تازگی مقاله‌ای در وال استریت جورنال چاپ شده است که به نکات جالبی از مؤفقیت، شکست و دردسرهای این تکنیک اشاره کرده است. همچنین خاطراتی از کنت بک و کانینگهام را در انجام برنامه‌نویسی دو نفره در خود دارد. این مقاله تأکیدی است بر این که در کنار کارایی فوق‌العاده این اقدام، به‌کارگیری آن ساده نخواهد بود، حتی در شرکتهای آمریکایی.

موقع خواندن مقاله وقتی به جمله زیر رسیدم، نتوانستم جلوی خنده‌ام را بگیرم:

“People who have been pairing a while, they’ll start acting like old married couples,” said Marc Phillips.

مقاله را می‌توانید اینجا مطالعه کنید.
گزیده:

“A good programmer is someone who looks both ways before crossing a one-way street. “
Anonymous

https://bibalan.com/?p=556
یوسف مهرداد

یوسف مهرداد


کانال تلگرام

نظرات (3)

wave
  • ...

    ۸ شهریور ۱۳۹۱ در ۰۰:۰۰

    سلام

    پاسخ
  • من

    ۹ شهریور ۱۳۹۱ در ۰۰:۰۰

    سلام
    وبلاگ زیبایی دارید
    قلم تون خیلی دلنشینه خصوصا خاطرات و یادداشت های شخصی تون
    قدر قلمتون رو بدونید
    اینم بگم که از یکی از دوستان تون خیلی ناراحتم خدا از این جور آدما نگذره واقعا دلمو شکوند میبینم روزی رو که خدا عدالت رو بر قرار می کنه
    ——————-
    سلام
    سپاسگزارم.
    واقعاً متأسفم.
    شاد و تندرست و امیدوار به آینده باشید.
    مهرداد

    پاسخ
  • محسن عابدی

    ۱۸ شهریور ۱۳۹۱ در ۰۰:۰۰

    استاد من هرچی فکر می کنم نمی دونم چه طور می شه این روش برنامه نویسی را انجام داد!!!؟؟خیلی پیش اومده که وقتی به یک باگ می خورم که سر در نمی آورم با همکارم نقش راننده را داشته باشم اما چه طور می شه طی کل دوره ی نوشتن یک فرم این نقش ها را داشت !!؟؟ تجربه های زیادی دارم که دو نفری یک خطا را بر طرف کنیم که هیچ یک از آن آگاه نباشیم اما این وضعیت برای مدت طولانی نمی تونه ادامه پیدا کنه !! ولی برای همون جمله ی خنده دار هم که شده بهتره یک همکار با اون خصوصیت پیدا کنم !!!! 😛

    —————–
    سلام آقای مهندس،
    در مورد جمله آخر شما، نظری ندارم، چون خیلی تخصصی است. 😉
    در این تکنیک، روشهایی برای حل مسأله‌ای که فرمودید، وجود دارد.
    توصیه می‌کنم منابع آن را مطالعه فرمایید.
    اگر سعادت دیدار پیدا کردم، پیشنهادهایم را خدمت شما عرض خواهم کرد.
    شاد و تندرست باشید
    مهرداد

    پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

برای خروج از جستجو کلید ESC را بفشارید