کلاس (برنامه‌نویسی): تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جزبدون خلاصۀ ویرایش
Fatemibot (بحث | مشارکت‌ها)
خط ۱:
در [[مهندسی نرم‌افزار]] و [[مهندسی دانش]] '''کلاس''' نقشهٔ نوعی و مشترک برای گروهی از [[شی (برنامه‌نویسی)|اشیاء]]<ref>Objects</ref> است که ویژگی‌های<ref>Properties</ref> مشترکی داشته، و رفتارهای مشترکی از خود نشان می‌دهند. درواقع، کلاس‌ها انواعی هستند که شخص [[برنامه‌نویس]]، خود می تواند، آن‌ها را برای حل مسئله‌های دنیای واقعی طراحی کند، و حاوی تعریف‌های لازم برای دو عنصر اساسی زیر می‌باشند:
 
* [[داده‌ها]]، یا [[صفات]]
* عملیات، یا روش‌ها
سطر ۶ ⟵ ۵:
اشیاء نمونه‌هایی هستند که به هنگام اجرا از روی نقشهٔ ارائه شده به‌وسیلهٔ کلاس ایجاد می‌شوند. می‌توان گفت همان‌طور که [[متغیر]] نمونه‌ای از انواع اولیه است، شیء نمونه‌ای از کلاس است. (۱)
 
برنامه‌نویسی شی‌ء‌گرا،شیءگرا، داده‌ها (‌خواصخواص) و متدها (رفتارها) را در بسته‌هایی به نام کلاس محصور می‌کند.<ref>Encapsulation</ref> کلاس‌ها دارای خاصیت کپسوله سازی<ref>Encapsulation</ref> هستند. این بدان معناست که اشیاء می‌دانند که چگونه از طریق رابط‌های تعریف‌شده با یکدیگر ارتباط برقرار کنند. معمولا،معمولاً، اشیاء نباید از چگونگی پیاده‌سازی اشیاء دیگر مطلع باشند، به‌عبارت دیگر، جزئیات پیاده‌سازی در داخل خود اشیاء پنهان شده‌اند.
 
مثال: رانندگی خودرو بدون اطلاع از خصوصیات طرز کار داخلی موتور و سیستم‌های اگزوز و جعبه‌دنده امکان‌پدیر است. در مهندسی نرم‌افزار ضرورت پنهان‌سازی اطلاعات امری بسیار مهم هست. {{مدرک|}}
 
در زبان‌های رویه‌ای<ref>Procedural</ref> برنامه‌نویسی، مثل [[زبان سی]] (C)، برنامه‌نویسی، بیشتر عملگرایانه<ref>Action oriented</ref> است. درحالی‌که، زبان‌های برنامه‌نویسی [[سی‌پلاس‌پلاس]] (++C)، [[جاوا]] (Java)، و [[سی‌شارپ]] (#C) دارای پارادایم شیء‌گرایانهشیءگرایانه هستند. واحد برنامه‌نویسی در زبان‌های رویه‌ای تابع است، ولی، زبان‌های شی گرا دارای کلاس‌ها - که اشیاء نهایتانهایتاً از آنها ایجاد می‌شوند ( یا اصطلاحااصطلاحاً نمونه‌سازی می‌شوند) - به عنوان واحد برنامه نویسی هستند. توابع نیز در داخل کلاس‌ها به عنوان متدهایی پیاده سازی می‌شوند.
 
برنامه‌نویسان C بیشتر بر روی نوشتن توابع متمرکز هستند. گروه‌هایی از اعمال که وظیفهٔ خاصی را بر عهده دارند، توابع را تشکیل می‌دهند و توابع گروه شده و برنامه را تشکیل می‌دهند. البته در زبان c داده‌ها نیز مهم هستند، اما نگرش اصلی در اینگونه زبان‌ها این است که داده‌ها بیشتر برای پشتیانی اعمالی که توابع انجام می‌دهند به کار می‌روند.(۲)
سطر ۲۶ ⟵ ۲۵:
== جستارهای وابسته ==
* [[متغیر|متغیرها]]
* [[برنامه‌نویسی شیءگرا|برنامه نویسی اشیاء‌نگراشیاءنگر]]
* [[هستی‌شناسی (علوم محاسباتی)]]
 
== پیوند به بیرون ==
== پیوندهای بیرونی ==
* [http://java.sun.com/docs/books/tutorial/java/concepts/index.html مفاهیم مربوط به برنامه نویسی اشیاء‌نگراشیاءنگر]
 
== منبعمنابع ==
* برنامه نویسی به زبان C++{{چر}}، تالیف عین الله جعفر نژاد قمی
* Visual C++ .NET برای برنامه‌نویسان پیشرفته
سطر ۳۹ ⟵ ۳۸:
{{رایانه-خرد}}
 
[[رده:کلاس (برنامه‌نویسی)]]
[[رده:برنامه‌نویسی شیءگرا]]
[[رده:ساختارهای برنامه‌نویسی]]