بازبینی کد چیست؟

بازبینی کد همان‌طور که از اسمش پیداست ارسال یک کد نوشته شده توسط یک برنامه‌نویس به برنامه‌نویسی دیگری جهت بررسی آن و پیدا کردن ایرادات احتمالی است.

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

اگر لوک اسکای واکر برنامه‌نویس بود و یودا می‌خواست نصیحتش کند حتماً می‌گفت: «کد رو بازبینی کن لوک!»

روش انجام Code Review خیلی مهم نیست، می‌توانید source را zip کنید و با ایمیل بفرستید یا مثلاً در TFS خیلی راحت از محیط Visual Studio‌ برای شخص مورد نظر درخواست Code Review ارسال کنید. مهم این است که Code Review واقعاً انجام شود، یعنی واقعاً برای بازبینی کد وقت گذاشته شود و صرفاً یک درخواست تشریفاتی نباشد.

چرا خوب است کدها را بازبینی کنیم؟

دلایل مختلفی را می‌توان برای لزوم Code Review برشمرد. این دلایل دو جنبه دارند، یک جنبه آن بحث آماری قضیه است که مثلاً Code Review در عمل چقدر می‌تواند تفاوت ایجاد کند. مثلاً اشاره شده یک برنامه 500 هزار خطی از IBM در 11 مرحله بازبینی کد شد و علاوه بر اینکه زودتر از موعد مقرر عرضه شد، حدود 1 درصد از ایرادات پیش‌بینی شده برای چنین حجمی از کد را در بر داشت! این مورد و سایر شواهد مرتبط با مزیت‌های کمی Code Review را به نقل از کتاب Code Complete را در این نوشته از جف آتوود می‌توانید مطالعه کنید. اما جنبه دیگر اهمیت و مزیت‌های بازبینی کد در تفاوتی است که در رفتار اعضای تیم ایجاد می‌کند.

مهمترین مزیت‌های یک پروسه بازبینی کد برای یک تیم نرم‌افزاری به شرح زیر است:

اگر تجربه خوبی از Code Review دارید می‌توانید آن را در بخش نظرات با دیگران به اشتراک بگذارید.