آموزش ویژگی ها در سی شارپ به زبان ساده

رتبه: 0 ار 0 رای sssss
سی شارپ
نویسنده: میلاد حیدری زمان مطالعه 4 دقیقه
Banner Image

ویژگی ها به شما امکان می دهد تا دسترسی به متغیرهای کلاس را کنترل کنید، و روش پیشنهادی برای دسترسی به متغیرها از خارج، در یک زبان برنامه نویسی شیء گرا مانند سی شارپ است. در فصلی که درباره ی کلاس ها صحبت کردیم، برای اولین بار شاهد استفاده از یک ویژگی بودیم که مفهوم واقعاً ساده ای داشت. یک ویژگی بسیار شبیه به ترکیبی از یک متغیر و یک متد است – نمی تواند هیچ پارامتری را اتخاذ کند، اما شما می توانید قبل از اختصاص آن به متغیر بازگشتی ما، مقدار را پردازش کنید.

ویژگی‌ها (Properties) در سی‌شارپ یکی از مفاهیم کلیدی برای مدیریت دسترسی به داده‌های کلاس‌ها هستند. ویژگی‌ها امکان تعریف دسترسی‌های کنترل‌شده به فیلدهای خصوصی یک کلاس را فراهم می‌کنند و به شکل‌گیری کدهای خوانا و امن کمک می‌کنند. در ادامه به معرفی ویژگی‌ها، نحوه استفاده و انواع مختلف آن‌ها می‌پردازیم.

 تعریف ویژگی‌ها

ویژگی‌ها به صورت جفتی از متدهای get و set تعریف می‌شوند. متد `get` برای بازیابی مقدار ویژگی و متد `set` برای تنظیم مقدار ویژگی استفاده می‌شود. ویژگی‌ها مانند فیلدها استفاده می‌شوند، اما در واقع به عنوان متدهایی عمل می‌کنند که دسترسی کنترل‌شده به داده‌ها را فراهم می‌کنند.

 مثال ساده از ویژگی

class Person

{

    private string name;

 

    public string Name

    {

        get { return name; }

        set { name = value; }

    }

}

در این مثال، ویژگی `Name` امکان دسترسی به فیلد خصوصی `name` را فراهم می‌کند.

 ویژگی‌های خودکار (Auto-Implemented Properties)

سی‌شارپ ویژگی‌های خودکار را معرفی کرده است که به شما اجازه می‌دهد ویژگی‌ها را بدون نیاز به تعریف فیلدهای خصوصی به صورت مختصر تعریف کنید. در این حالت، کامپایلر به طور خودکار فیلدهای پشتیبان (backing fields) را ایجاد می‌کند.

class Person

{

    public string Name { get; set; }

    public int Age { get; set; }

}

 ویژگی‌های فقط خواندنی و فقط نوشتنی

ویژگی‌های فقط خواندنی دارای متد `get` و بدون متد `set` هستند، بنابراین مقدار آن‌ها فقط قابل خواندن است و نمی‌توان آن را تغییر داد. ویژگی‌های فقط نوشتنی برعکس، دارای متد `set` و بدون متد `get` هستند.

 ویژگی فقط خواندنی

class Person

{

    private string name;

 

    public Person(string name)

    {

        this.name = name;

    }

 

    public string Name

    {

        get { return name; }

    }

}

 

ویژگی فقط نوشتنی

class Person

{

    private string name;

 

    public string Name

    {

        set { name = value; }

    }

}

 ویژگی‌های محاسباتی (Computed Properties)

ویژگی‌های محاسباتی می‌توانند مقداری را بر اساس محاسبات و منطق ارائه دهند و به داده‌ها دسترسی نداشته باشند. این ویژگی‌ها اغلب برای ترکیب یا تبدیل داده‌های چندین فیلد استفاده می‌شوند.

class Rectangle

{

    public double Width { get; set; }

    public double Height { get; set; }

 

    public double Area

    {

        get { return Width * Height; }

    }

}

ویژگی‌های استاتیک (Static Properties)

ویژگی‌های استاتیک به کلاس تعلق دارند و نه به نمونه‌های آن. این ویژگی‌ها می‌توانند بدون ایجاد نمونه‌ای از کلاس فراخوانی شوند.

class Configuration

{

    private static string appName;

 

    public static string AppName

    {

        get { return appName; }

        set { appName = value; }

    }

}

اعتبارسنجی در ویژگی‌ها

ویژگی‌ها می‌توانند شامل منطق اعتبارسنجی باشند تا از تنظیم مقادیر نامعتبر جلوگیری کنند. این کار با استفاده از بلوک `set` انجام می‌شود.

class Person

{

    private int age;

 

    public int Age

    {

        get { return age; }

        set

        {

            if (value < 0 || value > 120)

                throw new ArgumentOutOfRangeException("Age must be between 0 and 120");

            age = value;

        }

    }

}

 استفاده از `prop` و `propfull` در ویژوال استودیو

در ویژوال استودیو، می‌توانید از کلمات کلیدی `prop` و `propfull` برای تولید سریع ویژگی‌ها استفاده کنید:

`prop`: برای ایجاد ویژگی خودکار:

  prop [tab][tab]

  خروجی:

  public int MyProperty { get; set; }

propfull`: برای ایجاد ویژگی با فیلد پشتیبان:

  propfull [tab][tab]

  خروجی:

  private int myVar;

  public int MyProperty

  {

      get { return myVar; }

      set { myVar = value; }

  }

 نتیجه‌گیری

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

profile name
میلاد حیدری

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

مطالب پیشنهادی برای شما

محصولات مرتبط

مشاهده همه
آموزش برنامه نویسی سی پلاس پلاس
آموزش برنامه نویسی سی پلاس پلاس
قیمت محصول 230,000 تومان 250,000
ادامه مطلب

دیدگاهتان را بنویسید

1 2 3 4 5

0 نظر درباره «آموزش ویژگی ها در سی شارپ به زبان ساده»

    هنوز نظری برای این بخش ثبت نشده است
مشاهده همه نظرات
سبد خرید
سبد خرید شما خالی است
× جهت نصب روی دکمه زیر در گوشی کلیک نمائید
آی او اس
سپس در مرحله بعد برروی دکمه "Add To Home Screen" کلیک نمائید