کدنویسی خوانا

یکی از معیارهای مهم در ارزیابی یک برنامه میزان خوانایی آن است. رعایت موارد زیر می‌تواند در ایجاد یک کد خوانا بسیار مؤثر باشد.

فاصله‌گذاری

  • علائم سجاوندی مانند ویرگول، نقطه‌ویرگول و دونقطه بدون فاصله از کلمه‌ی پیشین خود نوشته می‌شوند، ولی بعد از آن‌ها باید یک فاصله‌ قرار گیرد. مانند: label: 1, 3
  • در دو طرف تمامی عملگرها باید یک فاصله‌ی خالی قرار گیرد. مانند: a = 25 + pi / 2
  • پرانتزها، آکولادها و کروشه‌ها بدون فاصله از عبارات داخل خود نوشته می‌شوند، ولی با عبارات اطراف خود یک فاصله دارند. مانند: b = (2 + (a - 4)) * 5
    تبصره: بین نام یک تابع و پرانتز بازی که بعد از آن قرار می‌گیرد، نباید فاصله‌ای باشد. مانند: sin(abs(x))

فرورفتگی

  • دستورات درون هر بلوک دستوری باید مقداری فرورفته‌تر نوشته شوند. میزان این فرورفتگی چهار فاصله‌ی خالی توصیه می‌شود. این فرورفتگی باید برای تمامی دستوراتی که در یک بلوک قرار دارند یکسان باشد.
  • در زبان‌هایی مانند سی که از علامت‌های آکولاد باز و بسته برای نشان دادن شروع و پایان یک بلوک استفاده می‌شود، آکولاد باز در خط پیش از بلوک، و آکولاد بسته در یک خط مستقل پس از بلوک و هم‌تراز سطر پیش از بلوک قرار می‌گیرد. مانند:
if (a > 0) {
    a = 4 * a;
    printf(a);
}

خطوط خالی

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

نام‌گذاری

  • استفاده از نام‌های معنی‌دار یکی از روش‌های مؤثر افزایش خوانایی کد است. به طور مثال، اگر متغیری برای نگه‌داری ارقام یک عدد دارید، بهتر است به جای نام‌های ساده‌ای مانند n و x، از نام معنی‌دارتر digits استفاده کنید.
  • برای نام‌گذاری متغیرها و توابع از حروف کوچک انگلیسی استفاده کنید. مانند: num و counter.
  • برای نام‌گذاری ثابت‌ها از حروف بزرگ انگلیسی استفاده کنید. مانند: PI و DIGITS.
  • برای نام‌گذاری کلاس‌ها از حروف کوچک با اولین حرف بزرگ استفاده کنید. مانند: Point و Stack.
  • برای جدا کردن قسمت‌های مختلف یک نام از _ استفاده کنید. مانند: my_counter و NUM_DIGITS.