بهترین شیوه‌ها

سبک کدنویسی حرفه‌ای: نام‌گذاری، تورفتگی، تفکیک رویه‌ها و خوانایی.

کد یک بار نوشته، صد بار خوانده می‌شود!

کد خوب کدی است که شش ماه بعد خودتان (یا همکارتان) بفهمیدش. این قانون طلایی است.

۱. نام‌گذاری معنادار

{ ❌ بد }
var x, y, z: integer;
procedure DoStuff(a: integer);

{ ✅ خوب }
var
  studentCount, totalScore, averageScore: integer;
procedure PrintReportCard(studentId: integer);
موردسبکمثال
متغیرcamelCase یا snake_casetotalCount، total_count
رویه/تابعفعل + مفعولCalculateSum، PrintReport
ثابتحروف بزرگMAX_STUDENTS، TaxRate
نوع سفارشیپیشوند TTScore، TDay
booleanIs/Has/CanisValid، hasPermission

۲. تورفتگی و فاصله

{ ❌ بد — همه در یک خط! }
if x>0 then begin writeln('pos'); if x>100 then writeln('big'); end;

{ ✅ خوب — خوانا }
if x > 0 then
begin
  writeln('pos');
  if x > 100 then
    writeln('big');
end;

۳. رویه‌های کوچک و تک‌منظوره

{ ❌ بد — یک رویه، ده کار }
procedure DoEverything;
begin
  { خواندن + اعتبارسنجی + محاسبه + چاپ + ذخیره... ۲۰۰ خط! }
end;

{ ✅ خوب — هر کار، یک رویه }
procedure ReadInput;
function ValidateData: boolean;
function CalculateResult: real;
procedure PrintReport;
قانون: اگر رویه‌ای از یک صفحه (۴۰-۵۰ خط) بزرگ‌تر شد، احتمالاً باید به چند رویه تقسیم شود!

۴. ثابت به جای عدد جادویی

{ ❌ }
if score > 20 then ...
for i := 1 to 30 do ...

{ ✅ }
const
  MaxScore = 20;
  ClassSize = 30;
if score > MaxScore then ...
for i := 1 to ClassSize do ...

۵. کامنت — نه کم، نه زیاد

{ ❌ کامنت بی‌فایده }
i := i + 1;   { یکی به i اضافه کن }

{ ✅ کامنت مفید }
{ شمارنده خطاها — برای گزارش نهایی }
errorCount := errorCount + 1;

۶. از var سراسری کم استفاده کنید

یادآوری از مبحث دامنه: هر متغیر در کوچک‌ترین دامنه ممکن. سراسری فقط برای واقعاً مشترک‌ها.

۷. اول فکر کن، بعد بنویس!

  1. مسئله را با چند جمله توضیح دهید
  2. به رویه‌ها/توابع تقسیم کنید
  3. هر بخش را جداگانه بنویسید و تست کنید
  4. در آخر ترکیب کنید

چک‌لیست کد حرفه‌ای

خلاصه

کد خوب = خوانا + سازمان‌یافته + قابل‌تعمیم. سبک خوب را از همین امروز شروع کنید — بعداً عادت می‌شود!

این مبحث بخشی از دوره آموزش کامل پاسکال است.

ابزارهای مرتبط