نامگذاری در C#

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

همه متغیرهای C# باید با نام‌های منحصر به فرد شناسایی شوند.این اسامی منحصر به فرد را شناسه می نامند.

شناسه ها می توانند نام های کوتاه (مانند x و y) یا نام های توصیفی تر (age, sum, totalVolume) باشند.

توصیحه می شود برای ایجاد کد قابل فهم از نام های توصیفی استفاده کنید.

// این نام قابل فهمه
int minutesPerHour = 10;

// این هم خوبه ولی قابل فهم نیست
int m = 10;

قوانین پایه نام‌گذاری در C#

در C#، برای نام‌گذاری متغیرها، متدها، کلاس‌ها و سایر عناصر، قوانینی وجود دارد که باید رعایت شوند:

  • نام باید با یک حرف یا زیرخط (_) شروع شود. استفاده از اعداد در ابتدای نام غیرمجاز است.
  • از کاراکترهای خاص مانند @, #, $ و غیره نمی‌توان در نام‌ها استفاده کرد (به جز _).
  • فاصله (Space) در نام‌ها مجاز نیست.
  • نام‌ها به حروف کوچک و بزرگ حساس هستند (Case-Sensitive). به عنوان مثال، name و Name دو نام متفاوت هستند.
  • نمی‌توان از کلمات کلیدی زبان C# به عنوان نام استفاده کنید، مگر اینکه از پیشوند @ استفاده کنید.
int age;          // درست
int _age;         // درست
int 1age;         // نادرست، نباید با عدد شروع شود
int @class;       // درست، چون کلمه کلیدی است از @ استفاده شده

2. قوانین نام‌گذاری متغیرها و فیلدها

  • متغیرها و فیلدها باید با حرف کوچک شروع شوند و از سبک Camel Case  پیروی کنند. در این سبک، اولین حرف کوچک است و حروف اول کلمات بعدی بزرگ نوشته می‌شوند.

int userAge;
string firstName;
double totalSalary;

3. نام‌گذاری کلاس‌ها و ساختارها

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

public class CustomerDetails
{
    // کلاس‌ها باید با حروف بزرگ شروع شوند
}

public struct OrderInfo
{
    // ساختارها هم باید با حروف بزرگ شروع شوند
}

4. نام‌گذاری متد ها

  • متدها نیز باید از سبک Pascal Case پیروی کنند.

public void CalculateTotalAmount()
{
    //  نوشته شوند Pascal Case متدها باید با  
}

public int GetUserAge()
{
    // نام متدها باید توصیفی باشد
}

5. نام‌گذاری متغیر های محلی

  • متغیرهای محلی معمولاً با سبک Camel Case نوشته می‌شوند و باید توصیفی باشند تا هدف متغیر به خوبی مشخص شود.

int totalAmount;
string customerName;

6. نام‌گذاری ویژگی ها (Properties)

  • ویژگی ها (Properties) هم باید از سبک Pascal Case استفاده کنند.
public class Customer
{
    public string FirstName { get; set; }
    public int Age { get; set; }
}

7. نام‌گذاری ثابت‌ها (Constants)

  • برای ثابت‌ها (constants)، از سبک Pascal Case یا All Upper Case استفاده می‌شود و اغلب با کلمه کلیدی const تعریف می‌شوند.

const int MaxAttempts = 5;
const double Pi = 3.14159;

8. نام‌گذاری اینترفیس‌ها (Interfaces)

  • اینترفیس‌ها باید با حرف I شروع شوند و سپس از سبک Pascal Case استفاده کنند.

public interface ICustomerRepository
{
    void AddCustomer();
}

9. نام‌گذاری متغیرهای خصوصی

  • متغیرهای خصوصی معمولاً با یک زیرخط (_) شروع می‌شوند و از سبک Camel Case استفاده می‌کنند.

private int _totalAmount;
private string _customerName;

10. بهترین شیوه‌ها (Best Practices)

  • نام‌ها باید توصیفی و معنادار باشند. از نام‌های کوتاه مانند x یا temp استفاده نکنید مگر اینکه به طور موقت استفاده شود.
  • از مخفف‌ها استفاده نکنید مگر اینکه کاملاً رایج باشند. مثلاً از btn  برای button استفاده نکنید، مگر در مواردی که به وضوح مشخص باشد.
  • از نام‌های طولانی بیش از حد استفاده نکنید نام باید به اندازه کافی توصیفی باشد، اما نباید به قدری طولانی شود که کد را پیچیده کند.

مثال کامل از نام‌گذاری مناسب:

public class CustomerDetails
{
    private string _customerName;
    private int _age;

    public string CustomerName
    {
        get { return _customerName; }
        set { _customerName = value; }
    }

    public int Age
    {
        get { return _age; }
        set { _age = value; }
    }

    public void DisplayCustomerInfo()
    {
        Console.WriteLine($"Name: {CustomerName}, Age: {Age}");
    }
}

خلاصه درس

در این فصل قوانین نامگذاری در C#  آشنا شدیم و با نحوه نامگذاری آشنا شدیم

تمرین


مشاهده پاسخ
توسعه دهندگان
آناهیتا ملکی