خوانایی کد: نوشتن برنامهای که انسان هم میفهمد
دو ویژگی اصلی کد خوانا
برای اینکه کد شما خوانا باشد، باید دو کار اساسی انجام دهید: نخست، متغیرها و دستورها را طوری نامگذاری کنید که هرکس با دیدن نامشان، منظور شما را بفهمد. دوم، کد را به بخشهای کوچک و مرتب تقسیم کنید تا چشم و مغز بتوانند راحت روی یک قسمت تمرکز کنند.
مثال روزمره فرض کنید دستور پخت یک غذا را با عنوان «مراحل» بنویسید، بدون اینکه مشخص کنید هر مرحله مربوط به چه چیزی است. در مقابل، اگر دستور را به «خرد کردن سبزی»، «آمادهسازی گوشت» و «پخت نهایی» تقسیم کنید، هرکسی راحتتر آن را دنبال میکند. کد هم دقیقاً به همین شکل عمل میکند.
| نوع کد | ویژگیها | نتیجه برای برنامهنویس |
|---|---|---|
| کد ناخوانا | نامهای بیمعنی، تو رفتگی نامنظم، تکرار زیاد | سردرگمی، خطای بیشتر، اتلاف وقت |
| کد خوانا | نامهای گویا، فاصلهگذاری مناسب، بخشبندی مشخص | درک سریع، اشکالزدایی آسان، همکاری راحتتر |
خوانایی در زندگی مدرسهای
فرض کنید معلم ریاضی از شما میخواهد راهحل یک مسئله را برای دانشآموز کلاس پایینتر توضیح دهید. در اینجا مجبورید از کلمات ساده، گامهای روشن و مثالهای آشنا استفاده کنید. برنامهنویسی هم دقیقاً مشابه این است. وقتی کدی مینویسید، در واقع دارید با برنامهنویسان دیگر (یا خودتان در آینده) حرف میزنید.
مثال دیگر فرض کنید برای یک پروژهٔ گروهی، هرکس بخشی از کد را مینویسد. اگر کد شما خوانا نباشد، دوستتان مجبور میشود ساعتها وقت بگذارد تا بفهمد شما چه کردهاید. اما اگر کد شما شبیه یک دستورالعمل گامبهگام باشد، همه اعضای گروه بهسرعت متوجه میشوند و میتوانند روی کار خود تمرکز کنند.
سه پرسش چالشی دربارهٔ خوانایی
پرسش ۱: آیا کد کوتاهتر همیشه خواناتر است؟
نه لزوماً. گاهی یک کد بلندتر با نامهای واضح و توضیحات ساده، بسیار خواناتر از یک کد خیلی کوتاه ولی مبهم است. مثل این میماند که یک جملهٔ کوتاه اما گیجکننده بنویسید، در مقابل یک جملهٔ بلندتر اما روانتر.
پرسش ۲: نظر شخصی من مهم است یا استانداردهای گروه؟
در پروژههای گروهی، رعایت یک سبک واحد از همه چیز مهمتر است. اگر هرکس به سلیقهٔ خودش کد بنویسد، خوانایی به شدت کم میشود. بنابراین بهتر است از ابتدا دربارهٔ یک روش مشترک با همگروهیها توافق کنید.
پرسش ۳: آیا توضیح دادن (کامنت) جای خوانایی را میگیرد؟
کامنتها مفید هستند، اما نمیتوانند جای کد نامرتب را پر کنند. اگر کدتان خودش گویا باشد، به کامنت کمتری نیاز دارید. کامنت باید دلیل یک تصمیم را توضیح دهد، نه اینکه کار کد را دوباره بگوید.
نکتهٔ پایانی
خوانایی یک مهارت است، نه یک قانون خشک. با تمرین و توجه به مخاطب (که میتواند خود شما در ماههای آینده باشد)، میتوانید کدهایی بنویسید که هم برای کامپیوتر قابل اجرا باشد و هم برای انسان قابل درک. به یاد داشته باشید که ما برنامه مینویسیم تا مشکل انسانها را حل کنیم، پس مهم است که انسانها بتوانند آن را بخوانند و درک کنند.