پیش از این در مقالاتی تحت عناوین آیا میدانستید که برنامهنویسی دونفره میتواند شما را به برنامهنویس ماهرتری تبدیل کند؟ و نکاتی در مورد نحوۀ اجرای صحیح Pair Programming یا برنامهنویسی دونفره! به معرفی روش برنامهنویسی دونفره و مزایای آن پرداختیم اما در این مقاله قصد داریم برخی از تصورات نادرست در مورد این روش برنامهنویسی را مورد بحث و بررسی قرار دهیم.
اگر درگیر یک پروسهٔ اجایل باشید، حتماً باید دونفره کد بزنید!
این تصور کاملاً نادرست است. اجایل مفهوم گستردهای است که اصول آن در مانیفست توسعهٔنرمافزار اجایل بیان شده است. با اینکه در بسیاری از موارد برنامهنویسی دونفره عملاً به عنوان بخشی از روش اجایل انجام میشود، اما این مانیفست برنامهنویسی دونفره را از ملزومات روش اجایل نمیداند! در واقع، با اینکه Pair Programming بخشی از پروسهٔ اجایل نیست، اما در اغلب موارد با اجایل همراه است و همین موضوع گاهی سبب ایجاد این تصور نادرست میشود که در پروسهٔ اجایل حتماً باید از برنامهنویسی دونفره استفاده کرد.
XP شما را به برنامهنویسی دونفره وادار میکند!
Extreme Programming یا به اختصار XP یک متدلوژی توسعهٔ نرمافزار است که بر مبنای ارتقاء کیفیت نرمافزار بر اساس نیازهای مشتری پایهریزی شده است اما این تصور که در روش XP مجبور هستید تا دونفره کد بزنید هم تصور نادرستی است. هرچند که برنامهنویسی دونفره یکی از تمرینهای رایج در تیمهای توسعهٔ نرمافزار XP است و آنها تقریباً هر روز این تمرین را انجام میدهند، اما واقعیت این است که در تیمهای XP انجام دادن یا ندادن برنامهنویسی دونفره اهمیت ذاتی نداشته و مسئلهٔ مهم کارا و مؤثر بودن این تیمها است (عموماً در روش XP توصیه میشود برنامهنویسی دونفره را فقط امتحان کنید تا ببینید برای شما تأثیر و کارایی لازم را دارد یا خیر به طوری که اگر از اثربخشی لازم برخوردار نبود، میتوانید آن را کنار بگذراید.)
برنامهنویسی دونفره خستهکننده است!
بسیاری از دولوپرها پیش از روی آوردن به برنامهنویسی دونفره، فقط قصد داشتهاند تا این روش را امتحان کنند اما پس از تجربهٔ آن، دریافتهاند که واقعاً به آن علاقمندند. برخی افراد فکر میکنند که برنامهنویسی دونفره پیچیده و خستهکننده است و دقیقاً به همین دلیل از آن گریزانند؛ اما این واقعیت ندارد. ساعتها به صورت منفعلانه کنار دست کسی نشستن و فقط نگاه کردن، کدنویسی دونفره نیست. بنابراین حتماً قبل از شروع این روش، مطمئن شوید که اصول آن را به درستی آموختهاید.
برنامهنویسی دونفره بهرهوری دولوپرها را به نصف کاهش میدهد!
اگر تایپ کردن کدها دشوارترین بخش برنامهنویسی میبود، این تصور میتوانست کاملاً درست باشد اما بسیاری از کسانی که به برنامهنویسی دونفره روی آوردهاند معتقدند که کار دونفرهٔ دو دولوپر در مجموع مفیدتر از کار تکتک آنها به صورت مجزا است. درست است که در این روش هر فرد مدت زمان کمتری در حال کد زدن است، اما این به معنای اِتلاف وقت و کاهش بهرهوری نیست زیرا در این روش، دو عضو گروه تماممدت مشغول بررسی کدها و بحث در مورد آنها هستند و این موجب بهبود طراحی، کاهش خطاها و انتقال تجارب خواهد شد.
برنامهنویسی دونفره فقط در مورد کدهای پیچیده ارزشمند است!
درست است که افزایش دقت و کاهش خطاها از مزیتهای برنامهنویسی دونفرهاند، اما این بدان معنا نیست که در کدهای ساده استفاده از این روش هیچ مزیتی ندارد. Pair Programming میتواند تایپ کدهای ساده، تکراری و خستهکننده را به تجربهای جدید و متفاوت تبدیل کند. علاوه بر این، از آنجا که در برنامهنویسی دونفره اعضای گروه متناوباً نقش خود را با یکدیگر عوض میکنند، هیچیک از آنها دائماً در حال تایپ کردن نیست و این باعث کاهش خستگی آنها میشود.