شیگرایی یکی از پرکاربردترین رویکردها در زمینهی برنامهنویسی است. به طور خلاصه، شیگرایی روشی است برای مدلسازی دادهها و عملیاتها به شکل مجموعهای از "شیء"ها. این شیها میتوانند هر چیزی از دنیای واقعی باشند، مانند انسان، ماشین یا حتی یک حساب بانکی. در این مقاله، اصول اصلی شیگرایی و نحوهی استفاده از آنها در برنامهنویسی سیشارپ را مورد بررسی قرار میدهیم.
1. کلاس و شیء
کلاس، قالب یا طرحوارهای است که مشخص میکند یک شیء چگونه باید باشد. در حالی که شیء نمونهی واقعی از یک کلاس است.
مثال:
فرض کنید یک کلاس به نام خودرو دارید. این کلاس میتواند ویژگیهایی مانند رنگ، برند و سرعت داشته باشد. حالا، یک شیء از کلاس خودرو میتواند یک مرسدس سفید با سرعت ۲۰۰ کیلومتر در ساعت باشد.
class خودرو
{
public string رنگ;
public string برند;
public int سرعت;
}
2. وراثت
وراثت به معنای ارتقاء و گسترش یک کلاس است.
مثال:
فرض کنید کلاسی به نام وانت داشته باشید که از کلاس خودرو ارث برده باشد. این به این معناست که وانت تمام ویژگیها و رفتارهای خودرو را دارا میشود، و همچنین میتواند ویژگیها و رفتارهای جدیدی داشته باشد.
class وانت : خودرو
{
public int ظرفیت_باربری;
}
3. پلیمورفیسم
پلیمورفیسم به این معنی است که یک متد یا تابع به چند شکل مختلف عمل کند.
مثال:
در کلاس خودرو، متدی به نام حرکت داشته باشید. در کلاس وانت، شما میتوانید همان متد را با یک رفتار متفاوت پیادهسازی کنید.
class خودرو
{
public virtual void حرکت()
{
Console.WriteLine("خودرو در حرکت است.");
}
}
class وانت : خودرو
{
public override void حرکت()
{
Console.WriteLine("وانت با بار در حرکت است.");
}
}
4. کپسولهسازی
کپسولهسازی به معنی پنهان کردن جزئیات پیادهسازی یک شیء است.
مثال:
شما میتوانید دسترسی به ویژگیهای کلاس خودرو را محدود کنید، به طوری که فقط از طریق متدها به آنها دسترسی پیدا کنید.
class خودرو
{
private string رنگ;
public string دریافت_رنگ()
{
return رنگ;
}
public void تنظیم_رنگ(string رنگ_جدید)
{
رنگ = رنگ_جدید;
}
}
مثال کاربردی در پروژههای واقعی:
1. یک نرمافزار فروشگاه آنلاین:
در اینجا، شیءهایی مانند محصول، سبدخرید و کاربر میتواند استفاده شوند.
2. یک سیستم مدیریت محتوا:
شیءهایی مانند مقاله، نویسنده و دیدگاه وجود دارد.
امیدوارم با خواندن این مقاله، شما با اصول اصلی شیگرایی آشنا شده باشید. اگر مایل به یادگیری حرفهای برنامهنویسی سیشارپ هستید، پیشنهاد میکنم در دورههای آموزش #C باگتو شرکت کنید. برنامهنویسی یک مهارت بسیار قدرتمند است و شما میتوانید با استفاده از آن، نرمافزارهای خیرهکننده بسازید.
برای افزودن دیدگاه خود، نیاز است ابتدا وارد حساب کاربریتان شوید