لطفا جاواسکریپت مرورگر خود را فعال سازید!

نحوه فعال سازی در کروم
  1. ابتدا باید اینکارو بگنید
  2. بعدش اونکارو
نحوه فعال سازی در فایرفاکس
  1. ابتدا باید اینکارو بگنید
  2. بعدش اونکارو
نکاتی در مورد نحوۀ اجرای صحیح Pair Programming یا برنامه‌نویسی دونفره!

نکاتی در مورد نحوۀ اجرای صحیح Pair Programming یا برنامه‌نویسی دونفره!

Pair Programming یا «برنامه‌نویسی دونفره» یکی از روش‌های برنامه‌نویسی است که در آن ۲ نفر به صورت هم‌زمان و با استفاده از تنها یک کیبورد در کنار یکدیگر کد می‌زنند! یکی از این ۲ نفر که تایپ کدها را انجام می‌دهد اصطلاحاً Driver یا «سکان‌دار» و دیگری که بر خط‌به‌خط کدهای نوشته شده توسط سکان‌دار نظارت می‌کند، ارورها را بررسی نموده و در مورد طرح کلی برنامه فکر می‌کند، Observer یا «ناظر» نامیده می‌شود.

پیش از این، در مقاله‌‌ای تحت عنوان آیا می‌دانستید که برنامه‌نویسی دونفره می‌تواند شما را به برنامه‌نویس ماهرتری تبدیل کند؟ به بررسی مزایای این سبک برنامه‌نویسی پرداختیم؛ روی‌هم‌رفته، برخی از مزایای این روش عبارتند از ارتقاء کیفیت کدها (طراحی ساده‌تر و قوی‌تر و باگ‌های کمتر)‌، روحیۀ بالاتر، به اشتراک گذاشتن دانش با سایر اعضای تیم برنامه‌نویسی، مدیریت زمان و افزایش بهره‌وری. در ادامه، نگاهی خواهیم داشت به ۷ نکته در روش برنامه‌نویسی دونفره که رعایت آن‌ها به‌منظور افزایش بهره‌وری، ضروری است.

1. قبل از این‌که پشت میز بنشینید، برنامۀ کار خود را تعیین کنید.
کار و یا تمرینی که می‌خواهید انجام دهید باید طوری برنامه‌ریزی شده باشد که در بازۀ زمانی ۱ تا ۲ ساعت قابل انجام باشد؛ داشتن برنامۀ قبلی می‌تواند به پیشبرد اهداف شما کمک کند که در غیر این‌صورت، برنامه‌نویسی دو‌نفره بیش از آن‌که مفید باشد، به تلف شدن وقت طرفین خواهد انجامید!

2. هدف خود را به بخش‌های کوچک‌تر تقسیم کنید.
برای هر بازۀ چند دقیقه‌ای، هدف کوچکی در نظر گرفته و با هم‌تیمی خود بر سر انجام هر یک از این اهداف کوچک به‌توافق برسید؛ این کار باعث می‌شود که هر کدام از شما بدانید که هر لحظه قرار است چه کاری انجام دهید.

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

هنگامی که نقش ناظر را دارید، هم‌زمان که هم‌تیمی شما در حال کد زدن است، کدها را بخوانید. کار شما کنترل کدها است؛ بنابراین حواس خود را کاملاً جمع کنید و اجازه ندهید که چیزی از چشم شما دور بماند.

هم‌زمان در مورد باگ‌های احتمالی، راه‌های ساده‌سازی کدها، ارتقاء طراحی و ... هم فکر کنید. خطاها و ناخوانایی‌هایی که در کدها می‌بینید را به ذهن سپرده و یا یادداشت نمایید. صبر کنید تا هم‌تیمی شما کار خود را به پایان برساند و سپس نظرات و ایده‌های خود را مطرح کنید.

هنگام نظارت بر کدها، دائماً به هم‌تیمی خود نگویید که چه بنویسد و چگونه بنویسد! اجازه دهید که خود او به طور خلاقانه به حل مسئله بپردازد، نه این‌که در تمام مدت مشغول تایپ کردن دستورات شما باشد.

4. زیاد گوش کنید.
پس از این‌که کار سکان‌دار در دستیابی به یکی از اهداف کوچک تعیین شده به اتمام رسید، ایده‌های خود را مطرح کنید، در مورد روش‌های جایگزین برای حل مسئله تبادل نظر نموده و داده‌های ورودی که احتمال می‌دهید در کد نوشته شده پوشش داده نمی‌شوند را به بحث بگذارید. در صورت امکان، نام‌های بهتر و مناسب‌تری برای متغیرها، متدها، کلاس‌ها و ... پیشنهاد دهید.

همچنین، دانش خود را در اختیار هم تیمی‌تان قرار دهید و همواره سعی کنید شنوندۀ خوبی باشید و به حرف‌های هم تیمی خود نیز گوش کنید. قطعاً او نیز حرف‌ها و ایده‌هایی برای مطرح کردن دارا است. معمولاً در این گفتگو، طرح سوالاتی از این دست می‌تواند به پیشبرد اهداف شما کمک کند:
- فکر می‌کنی این کد معتبره؟
- به نظرت درسته؟
- بعدش چه کار کنیم؟
- اجازه بده من درستش کنم (گاهی‌اوقات بهتر است به جای این‌که ایدۀ خود را با کلمات توضیح دهید، کدی را که در ذهن دارید مستقیماً تایپ نمایید.)

5. سعی کنید لحظه‌به‌لحظه با هم‌تیمی خود همگام شوید.
چه سکان‌دار باشید و چه ناظر، لازم است بدانید که هم‌تیمی شما از انجام یک کار خاص چه هدفی را دنبال می‌کند. اگر متوجه شدید که با طرف مقابل همگام نیستید و یکی از شما هدف کار در دست انجام را نمی‌داند، سعی کنید هرچه سریع‌تر با یکدیگر هماهنگ، همگام و به‌اصطلاح تنظیم فرمان شوید.

اگر امکان آن وجود دارد، قبل از شروع هر بخش از کار با هم‌تیمی خود در مورد آن گفتگو کنید. حتی گاهی بهتر است برای توجیه کردن او نسبت هدف، سؤالی را مطرح نمایید، مثلاً بپرسید «به نظرت همین‌جا باید تست رو بنویسم؟». گاهی هم نیازی به گفتگو نیست و همین که کد را بنویسید هدف شما خودبه‌خود آشکار می‌شود. سعی کنید در حین کدنویسی، به اشارات کوتاه بسنده نموده و از گفتگوهای طولانی‌تر از ۱ دقیقه خودداری کنید.

اگر هم‌تیمی شما نظر شما را در مورد موضوعی جویا شد، مثلاً پرسید «فکر کنم این متد باید حذف شه، موافقی؟»، به سرعت و با کلمات بله و نه به سوال او پاسخ دهید اما توضیحات اضافی را به بعد از تکمیل کد موکول کنید.

مشکلی نیست اگر گاهی کیبورد را در اختیار ناظر قرار دهید تا به‌جای ارائهٔ توضیحات طولانی، قطعه کد مورد نظر خود را تایپ نموده و سپس به نقش نظارتی خود برگردد. درواقع، می‌توانید در یک لحظه نقش سکان‌دار و ناظر را جابه‌جا نموده و اجازه دهید هم‌تیمی شما این بخش از مسئله را حل کند.

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

7. حداقل هر ۳۰ دقیقه نقش‌ خود را عوض کنید.
عوض کردن نقش‌ها باعث می‌شود تا هر ۲ عضو تیم هم به جزئیات و هم به طرح کلی برنامه دقت کرده و بر آن اشراف پیدا کنند. هم کد زدن طولانی مدت و هم ناظر بودن بیش از ۳۰ دقیقه می‌تواند سبب خستگی و کاهش تمرکز شود. عوض کردن نقش‌ها حال‌و‌هوای شما را تغییر داده و نیرویی تازه‌ای به شما می‌بخشد.

در این مقاله، 7 نکتۀ مهم در مورد روش Pair Programming مطرح شد که رعایت آن‌ها می‌تواند به اجرای هرچه بهتر این رویکرد کدنویسی کمک کند و نتیجۀ آن نیز پیشرفت هرچه سریع‌تر مهارت‌های هر ۲ عضو تیم خواهد بود.

نظر شما چیست؟ آیا تاکنون از روش‌ کدنویسی دونفره استفاده نموده‌اید؟ آیا توصیه‌های دیگری دارید که بتواند کارایی این روش برنامه‌نویسی را افزایش دهد؟ دیدگاه‌ها و تجربیات خود را با ما و سایر کاربران سکان آکادمی به اشتراک بگذارید.

منبع


رائفه خلیلی