۰۲۱۶۶۴۱۳۷۵۴

برنامه نویسی شی گرا چیست؟

شی گرایی چیست؟

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

 

کلاس(class)

در برنامه نویسی شی گرا مفهوم کلاس به دسته ها یا گروه ها اشاره دارد. برای مثال چنانچه ما از واژه درختان ، اتومبیل ها ، حیوانات، دانشجو ها و یا اساتید استفاده کنیم، منظورمان یک دسته و یا گروه از افراد یا اشیا است و نه  یک مورد و یا فرد.

 

شی(object)

چنانچه ما به مورد خاصی از آن گروه یا دسته(کلاس) اشاره کنیم، با مفهومی به نام شی (object) مواجه میشویم ، برای مثال ما یک کلاس به اسم ماشین داریم و شی ای بهه اسم پراید از کلاس ماشین ایجاد می کنیم. هر شی یک سری ویژگی یا خصوصیت دارد که ما به آن صفت (property) می گوییم. از سوی دیگر هر شی تعدادی رفتار و یا اعمال دارد که در برنامه نویسی شی گرا به آن ها اصطلاحا متد (method) گفته می شود.

 

بسته بندی (encapsulation)

بسته بندی که گاهی به آن پنهان سازی اطلاعات هم می گویند مفهوم مهمی در کار کردن با اشیا است. درواقع بسته بندی به معنای ترکیب صفات و متد ها و پنهان کردن جزئیات از دید کاربران شی است.

 

انتزاع (abstraction)

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

 

وراثت( inheritance )
وراثت در ++C یعنی از روی یک کلاس موجود (کلاس اصلی یا والد) ، کلاس جدیدی (کلاس فرزند) ساخته شود، به گونه ای که صفات و متدهای خاص خودش را نیز داشته باشد. مزیت استفاده از وراثت در ++C استفاده از کدهای مشترک و صرفه جویی در زمان و کدنویسی است.

 

چند ریختی (polymorphism)

ترجمه ی poly به معنای ((چندین )) است و morph هم به معنای ((شکل)) است که روی هم رفته میتوان آن را به چند شکلی ترجمه کرد.توانایی ظاهر شدن یک شی در چندین قالب را پولیمرفیسم میگویند. مثل اثر انگشت ما انسان ها ، همه ی ما اثر انگشت دارییم اما با دیگری متفاوت است.

 

 

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

ارسال دیدگاه به عنوان یک کاربر مهمان.

مقالات مرتبط

فرم دریافت مشاوره رایگان