آموزش هوش مصنوعی

مفهوم کلاس Class و شیء Object در برنامه نویسی

مفهوم کلاس Class و شیء Object در برنامه نویسی
عمومی خبری

کلاس مفهومی است که در برنامه نویسی شیء گرا (OOP : Object Oriented Programming) مطرح می شود. هدف از تعریف کلاس تعریف یک نوع داده جدید است. کلاس هم می تواند توسط برنامه نویس ایجاد شود، هم اینکه کلاس هایی از قبل در زبان برنامه نویسی به صورت آماده تعریف شده اند و تشکیل مجموعه‌ای از کلاس های آماده می دهند که به آن ها کتابخانه یا library گفته می شود. بنابراین برنامه نویس می تواند با فراخوانی کتابخانه، از کلاس های تعریف شده در آن استفاده کند.

کلاس چیست؟ (Classes):

از ویژگی های اصلی برنامه نویسی شی گراست. با استفاده از این امکان می توان یک بسته ای را تولید و از طریق آن اشیایی را تحت همان ویژگیها (صفت و متدها) ایجاد نمود. بنابراین می تواند جهت دسته بندی اشیا و نیز سهولت در ایجاد از آنها استفاده کرد.

بنابراین کلاسها قالب هایی برای اشیا هستند. کلاسها را می توان، “طرحهای اولیه” برای اشیا فرض کرد. آنها تمام عضوهای یک شئ را تعیین می کنند، و رفتارهای یک شئ را تعریف می کنند.

مثل کلاس انسان که می تواند شامل افراد جامعه باشد.

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

مثل کلاس انسان که می تواند به دو کلاس مرد و زن تقسیم بندی گردد که از کلاس انسان به ارث می برند. ولی مشخص است که کلاس مرد کمی با کلاس زن متفاوت است هرچند هردو  از یک کلاس اصلی به ارث برده اند.

شی چیست؟ (Objects):

شی در واقع یک نمونه از یک کلاس است . وقتی که یک کلاس مقدار دهی شد، یک نمونه درون حافظه ای از آن کلاس ساخته می شود. این نمونه شئ نامیده می شود.  یک عنصر شامل مجموعه ای از یک و یا چندین شی نظیر یک کتابخانه کلاس در یک DLL است .

نحوه تعریف کلاس مانند structure است. برای تعریف کلاس در زبان ++C طبق الگوی زیر از کلمه کلیدی Class استفاده می شود.

Class className{

//Private Variables and Functions

Public:
//Public Variables and Functions

Private:
//Private Variables and Functions

Protected:
//Protected Variables and Functions

};

همان طور که مشاهده می شود، عناصر کلاس می توانند در سه سطح خصوصی (Private)، عمومی (Public) و یا محافظت شده  (Protected) تعریف شوند. عناصر خصوصی عناصری هستند که فقط از داخل کلاس اجازه دسترسی به آن ها وجود دارد. این ویژگی یکی از خصوصیات مهم برنامه نویسی شیء گرا است که به آن محرمانگی یا Encapsulation گفته می شود. عناصر عمومی هم در داخل هم در خارج از کلاس اجازه دسترسی دارند. عناصر محافظت شده مانند عناصر خصوصی هستند، ولی از طریق کلاس هایی که از کلاس مد نظر ارث بری می کنند و نیز از طریق کلاس های دوست قابل دسترسی هستند. توجه کنید که عناصر کلاس به طور پیش فرض خصوصی هستند؛ لذا می توان کلمه private را قرار نداد.

مطلب پیشنهادی:  اشاره‌گر this در ++C

شیء Object

وقتی در برنامه خود یک instance از کلاس بگیریم، به عبارت ساده تر وقتی در برنامه یک متغیر از جنس کلاس تعریف کنیم، به آن یک “object” یا “شیء” گفته می شود. بنابراین شیء، نمونه ای از کلاس و کلاس توصیف کننده شیء است.

دسترسی به عنصری از کلاس

اگر بخواهیم به عنصری از کلاس، خارج از آن کلاس دسترسی داشته باشیم؛

اولاً آن عنصر باید از نوع public تعریف شده باشد، در غیر این صورت اجازه دسترسی به ما داده نمی شود. دوماً یک object از کلاس مد نظر می گیریم. سپس با نوشتن نام  object و بعد “.” می توانیم به عناصر کلاس دسترسی داشته باشیم. این عنصر می تواند یک متغیر کلاس، یا یک تابع تعریف شده در کلاس یا یک رخداد (Event) باشد.

 

اطلاعات بیشتر برای درک عمیق تر

اگر با مفهوم استراکچر یا ساختمان در برنامه نویسی سی و سی پلاس پلاس آشنا نیستید می‌توانید به آموزش ساختمان یا استراکچر (struct) در زبان برنامه نویسی C مراجعه کنید. و همچنین ما قبلا یک نوشته‌ای برای لایبری های آردوینو نوشته بودیم و در مقدمات آموزش، مفاهیم کلاس و شیء ++C را کاملا بررسی کردیم و به زبان خیلی ساده بیان کردیم تا دوستان متوجه موضوع بشن، در نوشته چگونه یک کتابخانه آردوینو بنویسیم؟ این مفاهیم را بخوانید. همچنین اگر خیلی دوست داشتین با نکات پیشرفته زبان سی پلاس پلاس آشنا بشید نوشته نکات برنامه نویسی پیشرفته C و ++C – اشاره گر های تابعی، typedef ، const را بخوانید.

مطلب پیشنهادی:  شروع کار با GUI در نرم افزار Qt

دوستان عزیز این مطالب یک خلاصه ای کوتاه و خیلی ساده از مفهوم کلاس (Class) و شیء (Object) در برنامه نویسی ++C بود و برای اطلاعات بیشتر به لینک های بالا و یا یک کتاب برنامه نویسی زبان سی پلاس پلاس مراجعه کنید.

خواندن بیشتر

  1. 7 مزیت هوش مصنوعی در آموزش
  2. 5 نقش اصلی هوش مصنوعی در آموزش
  3. هوش مصنوعی در آموزش(تعریف یونسکو و نقش هوش مصنوعی)
  4. 7 روش برتر استفاده از هوش مصنوعی در آموزش
  5. تحولات پیش روی هوش مصنوعی در آموزش و پرورش
  6. کاربرد هوش مصنوعی در آموزش چیست؟
بدون دیدگاه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

NFT چیست و چطور کار می کند؟
عمومی خبری
NFT چیست؟ هرآنچه باید در مورد توکن غیرقابل تعویض بدانید

NFT چیست و چطور کار می کند؟ | همه چیز درباره توکن غیر قابل معاوضه ان اف تی

امنیت‌بخشیِ خانه‌های هوشمند
عمومی خبری
امنیت‌بخشیِ خانه‌های هوشمند

شرکت‌های امنیتی برای محافظت از خانه شما در برابر سرقت، آتش‌سوزی و سایر حوادث، فناوری‌های هوشمند –مخصوصاً دوربین‌های مدار بسته- را ارائه می‌دهند. اما همین فناوری‌های محافظت‌کننده خود نیز به محافظت نیاز دارند. در این موقعیت، چطور و با چه چیز می‌توان این امنیت را فراهم کرد؟ ما برایتان این …

تروجان بانکی چند مرحله‌ای به نام Coyote
عمومی خبری
تروجان بانکی چند مرحله‌ای به نام Coyote

توسعه‌دهندگان بدافزار «تروجان» همواره به دنبال راه‌های مبتکرانه‌ای برای توزیع ایمپلنت‌های خود و آلوده کردن قربانیان هستند. در بررسی‌های اخیر خود به بدافزار جدیدی برخوردیم که مشخصاً کاربران بیش از 60 مؤسسه بانکی را که عمدتاً از برزیل بودند هدف خود قرار داده. آنچه نظر ما را به خود جلب …