C# - Properties

C# - الخصائص (Properties)

الخصائص (Properties) هي طريقة للوصول إلى الحقول (fields) في الكلاس بطريقة آمنة ومُنظمة. وتُستخدم كوسيط بين الحقل والكود الخارجي.


🔧 لماذا نستخدم الخصائص بدلًا من الحقول المباشرة؟

  • التحكم في من يمكنه القراءة أو التعديل.
  • إضافة منطق عند الحصول أو تعيين القيم.
  • تطبيق مبادئ الكبسلة (Encapsulation).

📌 مثال عملي - Property بسيطة:


class Person
{
    private string name; // حقل خاص

    public string Name   // خاصية عامة
    {
        get { return name; }
        set { name = value; }
    }
}

class Program
{
    static void Main()
    {
        Person p = new Person();
        p.Name = "محمود"; // تعيين القيمة
        Console.WriteLine(p.Name); // قراءة القيمة
    }
}

⚡ Auto-Implemented Properties

إذا لم تكن بحاجة لمنطق مخصص في get و set، يمكنك استخدام الخصائص المختصرة.


class Car
{
    public string Brand { get; set; } // خاصية تلقائية
}

🎯 ملاحظات:

  • يمكنك جعل get فقط للقراءة، أو set فقط للكتابة.
  • يمكنك إضافة منطق مخصص داخل get أو set (مثل التحقق من القيم).
  • تُستخدم الخصائص بكثرة في تطبيقات WPF و ASP.NET و Entity Framework.

تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework