C++ Tutorial - part 72

آموزش جامع زبان برنامه‌نویسی C++ مقدماتی تا پیشرفته [0 تا 100 سی پلاس پلاس بهمراه حل تمرین و پروژه ✅] - معرفی و ساخت کلاس - قسمت 72

مقدمه

در قسمت قبل، با دو پارادایم برنامه‌نویسی اصلی، یعنی پروسیجرال (Procedural) و شی‌گرایی (Object-Oriented Programming) آشنا شدیم. متوجه شدیم که پارادایم شی‌گرایی می‌تواند به حل مشکلات پروژه‌های بزرگ که در پارادایم پروسیجرال مشکل‌ساز می‌شوند، کمک کند. همچنین فهمیدیم که OOP به ما اجازه می‌دهد انتزاعات دنیای واقعی را به دنیای برنامه‌نویسی منتقل کنیم.

پارادایم شی‌گرایی

شی‌گرایی (OOP) یک پارادایم برنامه‌نویسی است که حول مفهوم اشیاء (Objects) ساخته شده است. در این پارادایم، هر چیزی که در دنیای واقعی وجود دارد، می‌تواند به عنوان یک شیء در دنیای برنامه‌نویسی مدل‌سازی شود. برای مثال، انسان، خانه یا ماشین همگی می‌توانند به عنوان اشیاء در برنامه‌نویسی مورد استفاده قرار گیرند.

اجزاء کلیدی در OOP

ویژگی‌ها (Properties) یا اتریبیوت‌ها (Attributes)

هر شیء در OOP دارای یک سری ویژگی‌ها است. این ویژگی‌ها می‌توانند اطلاعاتی مانند نام، سن، ایمیل و پسورد برای یک کاربر باشند. در دنیای برنامه‌نویسی، این ویژگی‌ها را به عنوان پراپرتی (Property) می‌شناسیم. برای مثال، یک ماشین می‌تواند ویژگی‌هایی مانند سرعت (Speed) داشته باشد که مقدار آن 260 باشد.

رفتارها (Behaviors) یا متدها (Methods)

هر شیء در OOP علاوه بر ویژگی‌ها، دارای رفتارهایی نیز هست که به آن‌ها متد (Method) گفته می‌شود. برای مثال، یک سگ می‌تواند رفتاری مانند پارس کردن (Bark) داشته باشد. در دنیای برنامه‌نویسی، این رفتارها به صورت متدها تعریف می‌شوند.

کلاس‌ها (Classes)

علاوه بر اشیاء، در OOP مفهومی به نام کلاس (Class) نیز وجود دارد. کلاس‌ها مانند نقشه‌ها یا الگوهایی هستند که اشیاء بر اساس آن‌ها ساخته می‌شوند. یک کلاس می‌تواند شامل پراپرتی‌ها و متدهای مختلف باشد و از این کلاس می‌توان اشیاء مختلفی ایجاد کرد.

مثال: تعریف کلاس

برای درک بهتر مفهوم کلاس، بیایید یک کلاس برای کارمندان (Employee) تعریف کنیم:

				
					#include <iostream>
using namespace std;

class Employee {
public:
    string name;
    string company;
    int age;

    void printInfo() {
        cout << "Name: " << name << endl;
        cout << "Company: " << company << endl;
        cout << "Age: " << age << endl;
    }
};

				
			

در این مثال، کلاس Employee شامل سه پراپرتی name، company و age و یک متد printInfo است.

استفاده از کلاس برای ایجاد اشیاء

حالا که کلاس Employee را تعریف کردیم، می‌توانیم از این کلاس برای ایجاد اشیاء مختلف استفاده کنیم:

				
					int main() {
    Employee emp1;
    emp1.name = "Mahdi";
    emp1.company = "TechCorp";
    emp1.age = 30;

    Employee emp2;
    emp2.name = "Bahram";
    emp2.company = "WebSolutions";
    emp2.age = 25;

    emp1.printInfo();
    emp2.printInfo();

    return 0;
}
				
			

در این مثال، دو شیء emp1 و emp2 از کلاس Employee ایجاد کرده‌ایم و هر کدام از آن‌ها دارای ویژگی‌ها و رفتارهای خاص خود هستند.

نتیجه‌گیری

در این قسمت، با مفاهیم پایه‌ای شی‌گرایی در برنامه‌نویسی C++ آشنا شدیم. فهمیدیم که پارادایم شی‌گرایی به ما امکان مدل‌سازی انتزاعات دنیای واقعی را می‌دهد و از طریق استفاده از کلاس‌ها و اشیاء، می‌توانیم برنامه‌های خواناتر و قابل نگهداری‌تری ایجاد کنیم. در قسمت‌های بعدی، به بررسی جزئیات بیشتری از شی‌گرایی خواهیم پرداخت و مثال‌های پیچیده‌تری را بررسی خواهیم کرد.

منابع خارجی مرتبط 

ادامه دوره (قسمت 73)

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

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

در این قسمت، با نحوه ایجاد اشیاء (Objects) از کلاس‌ها (Classes) و استفاده از آن‌ها در...

معرفی و ساخت کلاس

حق کپی ویدئو مجاز نمی‌باشد

قسمت:

جلسه هفتاد و دو

نام دوره:

آموزش جامع ++C

زمان ویدئو:

8 دقیقه

مدرس:

مهدی کاظمی

در این قسمت یادخواهید گرفت:

در قسمت قبل، با دو پارادایم برنامه‌نویسی اصلی، یعنی پروسیجرال (Procedural) و شی‌گرایی (Object-Oriented Programming) آشنا شدیم. متوجه شدیم که پارادایم شی‌گرایی می‌تواند به حل مشکلات پروژه‌های بزرگ که در پارادایم پروسیجرال مشکل‌ساز می‌شوند، کمک کند. همچنین فهمیدیم که OOP به ما اجازه می‌دهد انتزاعات دنیای واقعی را به دنیای برنامه‌نویسی منتقل کنیم.

مهدی کاظمی

سلام مهدی کاظمی هستم و باعث افتخارم هست که در یک دوره جذاب دیگه با شما هستم و قراره در کنار هم از یادگیریمون لذت ببریم.

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

0 دیدگاه
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها