شیءگرایی در آی کد

در این قسمت می خواهیم با استفاده از اصول شیء گرایی یک برنامه در آیکد بسازیم و مثال برنامه نویسی شی گرا با آی کد را مرور کنیم. داخل پنل چند مدل حیوان خواهیم داشت که هر کدام با کلیک شدن صدای خاص خود را تولید می کنند. به صورت عادی می شود با قراردادن چند شکلک در نشانگرهای آی کد حیوانات را قرارداد. سپس برای هر کدام صدایی قرار داد. بعد با بلوک کلیک شدن آن ها را به انتشار صدا تحریک کرد. اما ما بدون اینکه چندین نشانگر با پوسته حیوانات مختلف بسازیم با استفاده از اصول شیءگرایی در آی کد این برنامه را می سازیم.
ما با استفاده از قابلیت های شیءگرایی یک کلاس به نام “کلاس حیوان” داشته باشیم. این کلاس قابلیت تولید انواع حیوانات را دارد.
- صداها داخل بخش صدا ریخته شوند.
- پوسته حیوانات هم داخل بخش پوسته ها ریخته شود.
حالا با کلیک روی دکمه ساخت حیوان از کاربر یک سوال پرسیده می شود. “حیوانت رو انتخاب کن”
بطور مثال اگر کاربر میمون را وارد کند؛ پوسته “شیء حیوان میمون” نمایش داده شده و صدای متناسب با آن انتخاب می شود. به همین صورت می توانیم بی نهایت حیوان بسازیم. یعنی برای هر حیوان برنامه نویسی جداگانه نداریم بلکه تمام صداها و اشکال داخل مخزن صداها و پوسته ها ریخته می شود. فقط یک کد تصمیم می گیرد که الان چه حیوانی با چه صدایی تولید شود. این بخش از برنامه یک متد یا رفتار واحد است که برای هر شیء از کلاس حیوان با پوسته متفاوت متناسب با پوسته خروجی متفاوت دارد. این کد برنامه برای همه آن ها اجرا می شود ولی برای شیر صدای مختص شیر و برای میمون صدای مختص میمون را پخش می کند. این اصل که در این برنامه نویسی استفاده شده اصل “چندریختی” است.
متغیرهای “صدا” و “شکل حیوان” از اصل کپسوله سازی استفاده کرده اند. یه این ترتیب که این دو متغیر مختص کلاس حیوان هستند و توسط نشانگرهای دیگر قابل دستکاری نیستند. برای این کار این متغیرها از نوع محلی تعریف شده اند.
در این برنامه برای ساختن حیوانات از اصل وراثت استفاده شده است. به این ترتیب هر حیوان جدیدی که ساخته می شود یک نشانگر مجازی مشابه نسخه اصلی خودش است. یعنی یک فرزند از والد خود به حساب می آید. پس همه ویژگی های آن را از جمله صدا و پوسته و شکلش را ارث می برد.
و اما اصل انتزاع که ساده سازی اشیاء بدون در نظر گرفتن جزئیات شیء است. مثلاً ما شیء حیوان را ساده کرده ایم به شکل و صدای حیوان. با اینکه چه غذایی می خورد، چگونه راه می رود، از چه دسته حیواناتی است پرندگان، درندگان یا پستانداران و … کاری نداریم و از باقی ویژگی های شیء حیوان صرف نظر کرده ایم.
نتیجه گیری:
در این مقاله کوتاه سعی کردیم اصول شیءگرایی به زبان ساده را به وسیله برنامه نویسی بلوکی با نرم افزار آیکد برایتان توضیح دهم. به نظرتان اگر از این اصول استفاده نمی کردم این برنامه به چه شکلی در می آمد؟ استفاده از روش های معمول چه مزایا و معایبی داشت؟ آیا اینکه مساله از ما چه خواسته باشد و عنوان پروژه چه چیزی باشد در تصمیم به اینکه از شیءگرایی استفاده بکنیم یا خیر موثر است؟
درباره این موارد فکر کنید و نظرات خود را با من در میان بگذارید.
دانلود فایل برنامه iCode
درباره زهره دارابیان
من تی تی ام. تی تی در زبان گیلکی به معنای شکوفه ست. در انگلیسی کوتاه شده Teacher Technologist ست. به معنای معلم فناور یا معلمی که به تکنولوژی علاقمنده یا موضوعات تکنولوژی رو درس میده. همیشه علاقمند به یادگیری ام و همین طور یاددادن. کار من ساده کردن دنیای علم و تکنولوژی هست. برای همین اینجام می نویسم، محصولات کمک آموزشی، روش های یادگیری و دوره های آموزشی جذاب طراحی می کنم. اینجا کلاس درسی ست به وسعت همه ایران. به دنیای یادگیری با آیکد همراه با تی تی خوش اومدید!
نوشتههای بیشتر از زهره دارابیان
دیدگاهتان را بنویسید