یک برنامه‌ریزی درست برای بازبینی کد
ﺯﻣﺎﻥ ﻣﻄﺎﻟﻌﻪ: 5 دقیقه

یک برنامه‌ریزی درست برای بازبینی کد

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

تایید کردن کد به معنای اتلاف وقت نیست

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

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

گاهی اوقات می‌توانید از افراد خارج از پروژه نیز برای بازبینی کدها کمک بگیرید. ما با این روش به راهکارهای جایگزینی برای حل مشکلات خود دست پیدا خواهیم کرد.

بازبینی کد هم برای کدنویس و هم برای فرد تاییدکننده، به زمان احتیاج دارد

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

قبل از اقدام به بازبینی کد، باید به درستی برای آن آماده شوید 

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

پروسه بازبینی کد، تماماً در مورد کامنت نوشتن است

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

فرآیند بازبینی کد، بدون ابزارهای اختصاصی انجام نمی‌شود

این ابزارها به شما امکان ارسال نظرات و دنبال کردن فرآیند تایید را خواهند داد. ابزارهای زیادی وجود دارد که به شما امکان اتوماتیک کردن بسیاری از المان‌های بازبینی کد را می‌دهد. با این کار روند بازبینی کد هم برای بازرس و هم برای شخصی که ارزیابی شده، دلپذیرتر خواهد شد. می‌توانید از ابزارهای ساخت شرکت یا پلتفرم‌هایی مثل Collaborator یا GitLab استفاده کنید.

پلتفرم‌های بازبینی کد باید سریع باشند و به شما امکان دنبال کردن فرآیند تایید را بدهند. بازرسان و نویسنده باید جدا از بخش کامنت‌ها، بتوانند به روش‌های دیگری نیز ارتباط برقرار کنند. آن‌ها می‌توانند در ابزار انتخابی و یا در برنامه‌های مخصوصی مثل Hangouts، Skype یا Slack با یکدیگر صحبت کنند.

نتیجه‌گیری

پروسه بازبینی کد یک راهکار اساسی برای حل تمام مشکلات در توسعه نرم‌افزار نیست. شاید نتواند جایگرین پرسش و پاسخ (QA) شود و تمام خطاها را شناسایی کند، اما می‌تواند به توسعه‌دهندگان در فهم بهتر کدها کمک کند. با این کار می‌توانید به متدهای درست کدنویسی پی ببرید و خطاهای جزئی را در روند آنالیز کدهای استاتیک شناسایی کنید.

منبع

چه امتیازی برای این مقاله میدهید؟

خیلی بد
بد
متوسط
خوب
عالی
5 از 1 رای

/@Pemi.razmi
علیرضا داداشی
دانشجوی مهندسی پزشکی

دیدگاه و پرسش

برای ارسال دیدگاه لازم است وارد شده یا ثبت‌نام کنید ورود یا ثبت‌نام

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

علیرضا داداشی

دانشجوی مهندسی پزشکی