دنیای بازیسازی فارسدا

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

دنیای بازیسازی فارسدا

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

دنیای بازیسازی فارسدا

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

طبقه بندی موضوعی
بایگانی

آموزش مقدماتی یونیتی-قسمت یازدهم

آموزش مقدماتی یونیتی


قسمت یازدهم : برنامه نویسی سی شارپ 7 - برنامه نویسی شی گراء


نویسنده : محمدهادی ربانی نژاد


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

کد ما به شکل زیره :

تصویر اسکریپت ماشین حساب


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

این قسمت مربوط به Object Oriented Programming یا به اختصار (OOP) هستش. OOP یا برنامه نویسی شی گراء امروزه مورد توجه غالب برنامه نویسا شده. اما سوال اینجاست که OOP چیه ؟*

یه وسیله ی نقلیه یه سری خصوصیات ، ویژگی و رفتار های خاص داره. با این تعاریف یه شرکت می تونه یه وسیله ی نقلیه درست کنه. برنامه نویسی شی گراء هم همینطوره. یعنی می تونیم با تعریف ویژگی ها و رفتار ها یه شی بسازیم.

یه زبان برنامه نویسی زمانی شی گراست که شامل موارد زیره :

Class : کلاس قالب یه شی رو مشخص می کنه و شامل data و code هاییه که مشخصات کلاس رو تشکیل میدن. با این مشخصات میشه یه Object ساخت.

Object : آبجکت بیان کننده ی چیزیه که در دنیای واقعی قابل درکه. هر آبجکتی بسته به کلاس خودش ویژگی ها و رفتار های خاصی داره. مثلا مفهوم (دست) یه کلاسه. تو این کلاس مشخصاتی مثل تعداد انگشت ها و نحوه ی حرکت کردن وجود داره. تو بدن ما دو آبجکت از کلاس (دست) وجود داره.

Abstraction : معنی لغوی این کلمه به معنای (انتزاعی بودن) هست. یعنی چیزی که در حد ایده است و وجود خارجی نداره یا اون رو نمیشه لمس کرد. در برنامه نویسی شی گراء به این قضیه اطلاق میشه که ما به جای تمرکز روی نمونه ی عینی چیزی ، مفاهیم کلی رو در نظر می گیریم. وقتی ما یه کلاس تعریف می کنیم در حقیقت یه مفهوم رو تعریف می کنیم و با ساختن شی ، مفاهیم رو بر اون اشیاء اطلاق می کنیم.

 Encapsulation : کپسول در دنیای واقعی به چیزی گفته میشه که دور چیزهایی ایجاد میشه تا هم اونا رو کنار هم نگه داره و هم از اونا محافظت کنه. در زبان برنامه نویسی شی گراء این مفهوم به این معناست که ما ویژگی ها و رفتار های یه آبجکت رو تو یه کپسول فرضی قرار می دیم و اونا رو کنار هم نگه می داریم. همچنین می تونیم دسترسی به بخش هایی از کد رو محدود کنیم.

Inheritance : در لغت این کلمه به معنای (وراثت) هست و در اصطلاح به معنای (استفاده ی مجدد از کد های قبلا نوشته شده). این مفهوم در برنامه نویسی به ارث بری معروف است. مثالی برای ارث بری تو برنامه نویسی اینه که یه کلاس خصوصیات خودش رو از یه کلاس دیگه ارث ببره و همون خصوصیات رو همراه داشته باشه. اینطوری کلاسی که از اون ارث برده میشه ، والد یا Parent و کلاسی که ارث می بره ، فرزند یا Child شناخته میشه.

Polymorphism : این کلمه به معنای (چند ریختی) هست. این مفهوم به این معناست که یک چیز بسته به نوع استفاده می تونه عملکرد های متفاوتی داشته باشه. مثلا علامت + وقتی میان دو عدد قرار بگیره ، اون ها رو جمع می کنه ولی وقتی میان دو متغیر رشته ای قرار بگیره ، اون ها رو جمع نمی کنه بلکه اون ها رو به هم الحاق می کنه. بازنویسی متود ها بر اساس همین مفهومه. یعنی میشه متودی رو مثل متودی دیگه نوشت و بعضی از ویژگی هاش رو تغییر داد.

Interface : این مفهوم که در لغت به معنای (واسط) هست ، این امکان رو فراهم می کنه که یه ساختار جهت پیاده سازی یه کلاس فراهم کنید. در روش چند ریختی ما یه متود رو چند بار در چند کلاس می نویسیم. با استفاده از واسط نیازی به اینکار نیست و میشه با تعریف یه واسط از یه متود در کلاس های مختلف استفاده کرد.

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

 

*تعریف OOP : تعریف برنامه نویسی شی گراء از مقالات وب تارگت برگرفته شده. همچنین از سایت های سکان آکادمی ، و دلشاد استفاده شده. در صورتی که مشتاقید بیشتر درمورد برنامه نویسی شی گراء بدونید پیشنهاد می کنم حتما از مقالات این سایت ها استفاده کنید.


شما می تونید فایل PDF این آموزش رو  هم دانلود کنید.

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی