به نام خدا و سلام و عرض ادب خدمت شما خوانندگان گرامی؛
به لطف خدا مجموعه ی آشنایی با برنامه نویسی شی گرا در PHP را شروع کرده ایم تا به نوبه ی خود به آگاهی برنامه نویسان ایرانی نسبت به این موضوع کمکی کرده باشیم. متاسفانه کلمات “شی گرا” در اکثر برنامه نویسان ایرانی که با این مسئله آشنا نیستند، باعث دلهره و ترس می شوند در صورتی که یکی از بهترین و لذت بخش ترین انواع برنامه نویسی همین برنامه نویسی شی گرا می باشد.
در این مجموعه سعی داریم در قسمت های کوتاه و به زبان ساده به این مسئله ی مهم بپردازیم. برویم سراغ اصل مطلب!
چرا برنامه نویسی شی گرا در PHP همیشه حرف اول را می زند؟
از طرفی مجموعه روکسو دو راه برای آشنایی شما با مفاهیم اولیه و مقدماتی زبان PHP دارد:
راه اول: استفاده از دوره آموزش رایگان برنامه نویسی به زبان PHP می باشد که به صورت متنی در اختیار عزیزان قرار گرفته است.
راه دوم: بهره مندی از دوره ویدیویی آموزش زبان برنامه نویسی PHP است که به صورت آنلاین و فصل به فصل در قالب یک پروژه ارائه شده است.
فواید برنامه نویسی شی گرا در PHP
سوال: این فواید و نکات مثبت برنامه نویسی شی گرا چیست؟
پاسخ: به طور خلاصه چند مورد عرض را می کنم:
- استفاده ی چند باره از کد ها (Code Recycling): معنی Code Recycling (به فارسی: بازیافت کد) این است که اگر یک کلاس تعیین کنید، مثلا برای مبحث تایید فرم ها – Form Validation، دیگر نیازی نیست هر دفعه برای تایید فرم ها کد بنویسید و خودتان را خسته کنید.
- کپسوله سازی (Encapsulation): با استفاده از این ویژگی می توانید بدون نیاز به دانستن ساختار پیاده سازی شده ی کد ها از یک کلاس خاص استفاده کنید، در حالی که در کتابخانه ها باید از نحوه ی پیاده سازی اولیه آگاه باشید. با این مفهوم در قسمت های بعد آشنا می شویم.
- مدیریت پروژه ها: برنامه های بزرگ را عملا نمی توان با برنامه نویسی رویه ای نوشت. اگر بخواهید پروژه های بسیار بزرگ را با برنامه نویسی رویه ای بنویسید، در آخر کار با چند هزار خط کد روبرو می شوید که مانند کلافی در هم پیچیده و خدا نکند که بخواهید قسمتی را ویرایش/به روز کنید! با برنامه نویسی شی گرا حتی مدیریت پروژه های کوچک نیز بسیار آسان تر می شود.
- امنیت بیشتر
- و …
معمولا زمانی که صحبت از برنامه نویسی شی گرا می شود، از مثال معروف ماشین استفاده می کنند، اما ما برای شروع چنین قصدی نداریم چرا که ذهن ما را بدون دلیل از مبحث دور می کند. ما مستقیم به سراغ مفاهیم میرویم و سپس مثال ماشین را توضیح می دهیم!
تعریف Class (کلاس) در برنامه نویسی شی گرا در PHP
بخش اساسی و پایه ی تمام کد های شی گرا بخشی به نام کلاس (Class) می باشد. “کلاس” در واقع مجموعه ای از متغیر ها و توابع مربوط به هم اند که بین یک جفت آکولاد قرار گرفته اند و دارای یک نام واحد می باشند. به عبارت دقیق تر کلاس ها نقشه ی کلی هستند و اشیاء (Objects) نمونه ی ساخته شده از آنها؛ مانند دستور پخت یک کیک و خودِ کیک!
قبل از ادامه ی بحث ذکر یک نکته بسیار مهم است؛ تفاوت میان علائم نگارشی مانند آکولاد و قلاب و …
از آنجایی که برنامه نویسی یک شغل بین المللی است، بهتر است شما علائم را با اسم های انگلیسیشان حفظ کنید.
اما ادامه ی بحث:
تعریف Property و Method در برنامه نویسی شی گرا در PHP
Property | در زبان های برنامه نویسی شی گرا (به اختصار OOP – Object Oriented Programming) به متغیر هایی که متعلق به یک کلاس خاص هستند Properties (به فارسی: خصوصیات) می گویند. |
Method | در زبان های برنامه نویسی شی گرا (به اختصار OOP – Object Oriented Programming) به توابع Method (به فارسی همان متد) گفته می شود. |
مثال روزمره: اگر به مثال معروف ماشین برگردیم می توان گفت پراید یک ماشین است، پرادو هم یک ماشین است، پژو 206 هم یک ماشین است. تمام این ماشین ها یک طرح کلی دارند. به عنوان مثال چهار چرخ، یک فرمان، یک دنده، پنجره و الی آخر.
این طرح و نقشه ی کلی همان کلاس است. می توانیم اسم این کلاس را کلاسِ Vehicle (به معنای اتومبیل) بگذاریم.
حالا هر کدام از این ماشین ها، مثلا یک پراید، می شود یک شیء (Object) از این کلاس؛ پراید یک شیء از کلاسِ اتوموبیل است چرا که نمونه ی ساخته شده از طرح کلیِ (Class) اتوموبیل است. از نظر خصوصیت ها (Properties) و متد ها می توان گفت ترمز کردن یک متد و رنگ ماشین یک خصوصیت است. به تصویر زیر نگاه کنید:
تا این قسمت با مفاهیم اصلی برنامه نویسی شی گرا یا OOP آشنا شدیم. در قسمت های بعد سراغ مفاهیم بیشتر و بعضاً کد نویسی نیز خواهیم رفت. همراه ما باشید.