×
ribbon

آموزش برنامه‌نویسی شیء‌گرا در PHP

PHP یک زبان برنامه نویسی سمت سرور است که عمدتاً برای توسعه وب استفاده می‌شود؛ اما این زبان در برنامه نویسی عمومی و همه‌منظوره هم کاربرد دارد. شی گرایی PHP یکی از مزایای این زبان ... ادامه

برگزارکننده:  مکتب‌خونه  مکتب‌خونه
مدرس دوره:
4.7 (3 رای)
سطح: مقدماتی
 پلاس
  
زمان مورد نیاز برای گذارندن دوره:  31 ساعت
مجموع محتوای آموزشی:  7 ساعت ویدئو - 24 ساعت تمرین و پروژه
 (قابل دانلود نمی‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام

آنچه در این دوره می‌آموزیم:

 آموزش اصول شی گرایی

 آموزش برنامه نویسی شی گرا در PHP

 اصول شی گرایی در PHP

 آموزش پروه محور PHP

پیش‌نیاز‌ها

این دوره به آموزش شیء‌گرایی در PHP می‌پردازد و مفاهیم پایه‌ای در برنامه‌نویسی PHP را مورد بررسی قرار نمی‌دهد؛ بنابراین قبل از شرکت در این دوره باید دوره‌ آموزش PHP و MySQL را بگذرانید. 

همچنین توصیه می‌کنیم بعد از گذراندن دوره آموزش پروژه محور شیء‌گرایی در PHP، برای پیشرفت در این زمینه، آموزش برنامه‌نویسی وب با زبان PHP و فریم‌ورک لاراول را بگذرانید.

سرفصل‌های دوره آموزش برنامه‌نویسی شیء‌گرا در PHP

فصل اول: آشنایی با برنامه‌نویسی شیء گرا (OOP)

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

  مفهوم OOP
"06:44  
  مفهوم کلاس (Class)
"07:55  
  Const و Static Property
"05:29  
  Member Visibility
"04:23  
  متد سازنده (Construct)
"04:32  
  متد Destruct
"03:41  
  متد استاتیک (Static Method)
"05:38  
  کپسوله‌سازی (Encapsulation)
"09:20  
  Set و Get
"13:43  
  مفهوم وراثت (Inheritance)
"06:59  
  کوییز مفهوم وراثت
 13.6%    
"03:00  
  کلاس‌ها‌ و متد نهایی (ّ Final Method )
"02:51  
  کلاس‌ها و متد انتزاعی (Abstract Method)
"04:34  
  رابط کاربری (Interface)
"06:31  
  ویژگی (Trait)
"11:32  
  فضای‌نام (Namespace)
"06:07  
  Magic Constants
"04:56  
  بارگیری خودکار (Autoloading)
"07:56  
  کوییز بارگیری خودکار
 18.2%    
"04:00  
  تمرین برنامه‌نویسی: پیاده‌سازی کلاس سگ (الزامی)
 68.2%    
"180:00  
فصل دوم: آشنایی با MVC

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

  مفهوم MVC
"03:28  
فصل سوم: پروژه ایجاد فریم‌ورک MVC

بعد از آشنایی با مفهوم MVC وقت آن است که این فریم‌ورک را ایجاد کرده و از آن در پروژه‌های خود استفاده کنید. در این فصل فایل htaccess. را مورد بررسی قرار داده و از آن برای ایجاد urlهای کاربرپسند استفاده می‌کنیم. این فایل دستورات آماده‌ای دارد که کار شما را برای ایجاد فریم‌ورک بسیار آسان می‌کند. در حین انجام پروژه چگونگی کار با این فایل و دستوراتش به شما آموزش داده می‌شود.

  ایجاد فولدرهای‌‌ پروژه
"08:12  
  فایل htaccess.
"19:13  
  ساخت صفحه اصلی و هسته کلاس
"09:38  
  ایجاد Controller از URL
"17:29  
  متدها و پارامترها
"13:49  
  کنترل‌کننده پایه (Base Controller)
"08:00  
  کوییز کنترل‌کننده پایه
 13.3%    
"04:00  
  بازدیدها (Views)
"08:52  
  پیکربندی فایل‌ها و بارگیری خودکار
"08:59  
  کوییز پیکربندی فایلها و بارگیری خودکار
 10%    
"03:00  
  هدر و فوتر (Header & Footer)
"06:55  
  پایگاه داده (Database)
"08:49  
  مدل (Model)
"10:06  
  مباحث تکمیلی
"03:59  
  کوییز مباحث تکمیلی
 26.7%    
"08:00  
  تمرین برنامه‌نویسی: لیست مقالات (الزامی)
 50%    
"240:00  
فصل چهارم: صفحه احراز هویت (User Authentication)

در این فصل از آموزش شیء‌گرایی در PHP، با کمک فریم‌ورکی که ساخته بودیم، یک پروژه پیاده‌سازی می‌کنیم. هدف اصلی این فصل آموزش احراز هویت کاربران به شماست؛ بنابراین لازم است که شما ایجاد دیتابیس را یاد داشته باشید.

  ایجاد پروژه و پایگاه داده
"04:28  
  UI پروژه
"05:50  
  User Controller
"10:34  
  صفحه ورود و ثبت‌نام (Login & Register View)
"11:33  
  فرم اعتبار‌سنجی (Form Validation)
"19:24  
  کوییز فرم اعتبار سنجی
 9.5%    
"02:00  
  User Model
"11:18  
  ثبت نام کاربر (User Registration)
"12:20  
  کوییز ثبت نام کاربر
 9.5%    
"02:00  
  Flash Messaging
"16:36  
  ورود کاربر (User Login)
"08:17  
  خروج از سیستم (Logout)
"06:30  
  کوییز خروج از سیستم
 9.5%    
"02:00  
  تمرین برنامه‌نویسی: صفحه ثبت‌نام (الزامی)
 71.4%    
"420:00  
فصل پنجم: صفحه مقالات (CRUD Article)

از آنجایی که در فصل قبل ایجاد دیتابیس و احراز هویت کاربران را یاد گرفتید، در این فصل به کار با دیتابیس و انجام عمل‌های اصلی روی آن به شما آموزش داده می‌شود؛ بنابراین در فصل آخر از آموزش شیء‌گرایی PHP یاد می‌گیرید که چگونه چهار عملی اصلی ایجاد، نمایش، ویرایش و حذف article را روی دیتابیس انجام دهید.

  Article Controller
"03:23  
  سطح دسترسی مقالات
"04:10  
  مدل مقالات (Article Model)
"09:43  
  کوییز مدل مقالات
 3.7%    
"01:00  
  ایجاد مقاله
"10:58  
  نمایش مقاله
"08:37  
  ویرایش مقاله
"07:49  
  کوییز ویرایش مقاله
 3.7%    
"01:00  
  حذف مقاله
"04:00  
  پروژه پایانی: مدیریت مقالات (الزامی)
 92.6%    
"600:00  

ویژگی‌های دوره

خدمات منتورینگ
خدمات منتورینگ

خدمات منتورینگ به معنای برخورداری دانشجو از راهنما یا پشتیبان علمی در طول گذراندن دوره می‌باشد. این خدمات شامل پاسخگویی به سوالات آموزشی(در قالب تیکتینگ)، تصحیح آزمون یا پروژه های دوره و ارائه باز خورد موثر به دانشجو می‌باشد.

ویژگی‌های دوره

پروژه محور
پروژه محور

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

ویژگی‌های دوره

تمرین و آزمون
تمرین و آزمون

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

ویژگی‌های دوره

تالار گفتگو
تالار گفتگو

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

ویژگی‌های دوره

تسهیل استخدام
تسهیل استخدام

در صورت قبولی در دوره، شما می‌توانید با وارد کردن اطلاعات آن در بخش دوره‌های آموزشی رزومه‌ساز «جاب ویژن»، تایید مهارت خود را در قالب اضافه شدن «مدال مهارت» به روزمه آنلاین خود دریافت نمایید. این مدال علاوه بر ایجاد تمایز در نمایش رزومه شما، باعث بالاتر قرار گرفتن آن در لیست انبوه رزومه‌های ارسالی به کارفرما شده و بدین ترتیب شانس شما را برای استخدام در سازمانهای موفق و پر متقاضی افزایش می‌دهد.

بررسی فرصت‌های شغلی

درباره دوره

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

معرفی دوره آموزش برنامه نویسی شی گرا در PHP

دوره آموزش برنامه نویسی شی گرا در PHP با هدف آموزش رویکرد شی گرا در زبان PHP تهیه و تدوین شده است و هم‌اکنون در دسترس کاربران مکتب خونه قرار دارد. دوره نام برده در 5 فصل و حدود ٧ ساعت تدریس شده است که مدت‌زمان تقریبی برای گذراندن این دوره به‌صورت کامل 31 ساعت خواهد بود.

کاربرد دوره آموزش شی گرایی در PHP چیست؟

در این دوره از آموزش php به آموزش پروژه محور شی گرایی در PHP می‌پردازیم و مفاهیم شی گرایی PHP را مورد بررسی قرار می‌دهیم. از جمله مفاهیمی که در این دوره به آن می‌پردازیم عبارت‌اند از:

  • کلاس: کلاس نوعی داده تعریف‌شده توسط برنامه‌نویس است که شامل توابع و داد‌ه‌های محلی می‌شود.
  • شیء: یک نمونه منفرد از ساختار داده است که توسط کلاس تعریف می‌شود.
  • وراثت: یک کلاس می‌تواند تابع موجود در کلاس دیگر را به ارث ببرد و از آن استفاده کند. به این پدیده وراثت می‌گویند.
  • Encapsulation: به مفهومی گفته می‌شود که در آن همه داده‌ها و توابع با هم ترکیب می‌شوند تا یک شیء جدید ساخته شود. 

علاوه بر آموزش شی گرایی در PHP، در این دوره به مفهوم و کاربرد برنامه نویسی MVC در PHP می‌پردازیم. MVC یک الگوی طراحی برنامه است که داده‌های برنامه و منطق (مدل) تجاری را از ارائه (نما) جدا می‌کند. MVC مخفف اصطلاحات Model،View و Controller است. کنترلر میان مدل‌ها و نماها قرار می‌گیرد.

هدف از یادگیری آموزش برنامه نویسی شی گرا در PHP چیست؟

هدف اصلی از دوره آموزش شی گرایی در PHP این است که شما با مباحث و کاربرد شی گرایی PHP و برنامه نویسی MVC به‌خوبی آشنا شوید. چرا که اکثر فریم‌ورک‌های PHP از شی گرایی و MVC استفاده می‌کنند.  بنابراین برای کار با این فریم‌ورک‌ها و یادگیری آن‌ها باید درک خوبی از شی گرایی در PHP و MVC داشته باشید. از همین رو این دوره به شما کمک می‌کند این دو مهارت مهم را به‌خوبی درک کنید و با روند کارشان آشنا شوید.

دوره آموزش شی گرایی در PHP مناسب چه کسانی است؟

این دوره آموزش برنامه نویسی شی گرا در PHP برای افراد زیر مناسب است:

  • کسانی که برنامه نویسی PHP انجام می‌دهند.
  • کسانی که به ساخت اپلیکیشن‌های پیچیده و جذاب علاقه‌مندند.
  • کسانی که به دنبال متخصص شدن در زمینه برنامه نویسی PHP هستند.

بعد از فراگیری دوره آموزش شی گرایی در PHP چه مهارت‌هایی کسب خواهید کرد؟

کاربران بعد از دوره به مهارت‌های زیر تسلط میابند:

  • آشنایی کامل با مفهوم شی گرایی PHP و بخش‌های آن
  • آشنایی کامل با مفهوم برنامه نویسی MVC
  • ایجاد و کار با فریم‌ورک MVC
  • ایجاد URL- های کاربرپسند
  • پیاده‌سازی احراز هویت کاربر
  • پیاده‌سازی چهار عمل اصلی ایجاد، نمایش، ویرایش و حذف Article

ویژگی‌های متمایز دوره آموزش شی گرایی در PHP مکتب‌خونه چیست؟

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

سرفصل‌های دوره آموزش شی گرایی در PHP چیست؟

این دوره آموزش برنامه نویسی شی گرا در PHP با بررسی مفاهیم شی گرایی در PHP آغاز می‌شود. اینترفیس‌ها، اینکپسولیشن، وراثت، کلاس‌ها و غیره از جمله مباحث مطرح در این دوره هستند. پس از آشنایی کامل با مفهوم Object-oriented وارد مبحث MVC شده و دیزاین پترن MVC را مورد بررسی قرار می‌دهیم. پس از بررسی شی گرایی و MVC نمایش انجام پروژه‌ها را شروع کرده و به آموزش ایجاد فریم‌ورک MVC می‌پردازیم. در پروژه بعدی چگونگی احراز هویت کاربران و چهار عمل اصلی دیتابیس (ایجاد، نمایش، ویرایش و حذف) را به شما آموزش می‌دهیم.

درباره استاد

maktabkhooneh-teacher علی شیخ

علی شیخ در سال ۱۳۹۴ در رشته مهندسی کامپیوتر فارغ‌التحصیل شد و به عنوان برنامه‌نویس وب در شرکت معدنی و صنعتی چادرملو شروع به کار کرد. تخصص اصلی ایشان در زبان‌های جاوا اسکریپت و php است. وی به دلیل این که به آموزش علاقه زیادی داشت، تصمیم به راه‌اندازی وب‌سایتی در این زمینه به نام وب پروگ گرفت و اکنون از سال 1398 تاکنون توانسته‌است سهم کوچکی در آموزش به افراد علاقه‌مند به برنامه‌نویسی را داشته باشد.

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.
هادی شیخ بکلو 1401-02-21
ایشون بقدری زیبا ،شیوا و راحت آموزش میدند که من به شخصه،احساس خستگی نمیکنم حتی سخت ترین مطالب رو خیلی روان بیان میکنن.یکی دیگه از مزیت هاشون ،سریع بیان کردن مطالب هست وهمین طور پروژه محور بودنش که مطالب اصلی رو باهاش میشه یاد گرفت و به فرعیات نمی پردازیم. یدونه پیشنهاد دارم ،زمان ارسال پروژه رو کاش یکم افزایش بدن،من واقعا توی این زمان هنوز نرسیدم تموم کنم دوره رو، ممنون
مکتب‌خونه
همراه عزیز از این که نظر خود را با ما به اشتراک گذاشته اید سپاسگزاریم، نگران زمان دوره نباشید امکان تمدید مهلت دوره وجود دارد.
علی مولاقلی 1400-05-31
من دوست دارم تایم آموزشی دوره کم باشه ، ب لطف این دوره همینطور هم بود ؛ حتی مدرس دوره سلام - احوالپرسی و خدافظی هم نمیکنه و تنها راجب مباحث علمی توضیح میده واقعاً ممنونم هم از مکتب‌خونه و هم از آقای شیخ در آخر هم دوره رو کامل خریداری کنید ک هم منتورینگ فعال بشه و هم کوئیز ها .
حسین شاداب فر 1402-01-09
سلام دوره خوبیه ولی کاش کد هارو در اختیار ما قرار میدادن

دوره‌های پیشنهادی

سوالات پرتکرار

حداقل و حداکثر زمانی که می توانم یک دوره را بگذرانم چقدر است؟
برای گذراندن دوره حداقل زمانی وجود ندارد و شما می توانید در هر زمانی که مایل هستید فعالیت های مربوطه را انجام دهید. برای هر دوره یک حداکثر زمان تعیین شده است که در صفحه معرفی دوره می توانید مشاهده کنید که از زمان خرید دوره توسط شما تنها در آن مدت شما از ویژگی های تصحیح پروژه ها توسط پشتیبان و دریافت گواهی نامه بهره مند خواهید بود.

سوالات پرتکرار

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟
بله؛ پس از سپری شدن مدت زمان دوره شما به محتوای دوره دسترسی خواهید داشت و می توانید از ویدئوها، تمارین، پروژه و دیگر محتوای دوره در صورت وجود استفاده کنید ولی امکان تصحیح تمارین توسط پشتیبان و دریافت گواهی نامه برای شما وجود نخواهد داشت.

مقدمه‌ای بر برنامه نویسی شی گرا

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

مزایای برنامه نویسی شی گرا

برنامه نویسی شی گرا مزایای بسیار زیادی دارد که از جمله مهم‌ترین آن‌ها می‌توان به موارد زیر اشاره کرد:

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

برنامه نویسی شی گرا در PHP

PHP یک زبان برنامه نویسی سمت سرور است که عمدتاً برای توسعه وب استفاده می‌شود اما به‌عنوان یک زبان برنامه نویسی همه‌منظوره نیز استفاده می‌شود. برنامه نویسی شی گرا (PHP OOP)، یک نوع اصل زبان برنامه نویسی بوده که به php5 اضافه شده است که به ساخت برنامه‌های کاربردی وب پیچیده و قابل استفاده مجدد کمک می‌کند. دوره آموزش برنامه نویسی شی گرا در PHP با هدف آموزش این نوع سبک برنامه نویسی در پی اچ پی تهیه شده و قرار است در دوره‌ای که در بالا معرفی کردیم با ابعاد مختلف این سبک برنامه نویسی محبوب بیشتر آشنا شویم.

مفاهیم شی گرا در PHP

مفاهیم برنامه نویسی شی گرا در PHP را می‌توان در جنبه‌های مختلفی بررسی کرد که از مهم‌ترین آن‌ها می‌توان به موارد زیر اشاره کرد:

  • کلاس: این یک نوع داده تعریف شده توسط برنامه نویس به‌حساب می‌آید که شامل توابع محلی و همچنین داده‌های محلی است. شما می‌توانید یک کلاس را به‌عنوان یک الگو برای ساختن بسیاری از نمونه‌های یک نوع (کلاس) از یک شی در نظر بگیرید.
  • شی: یک نمونه جداگانه از ساختار داده که توسط یک کلاس تعریف شده است. شما یک کلاس را یک بار تعریف می‌کنید و سپس بسیاری از اشیاء متعلق به آن را می‌سازید. اشیا به‌عنوان نمونه نیز شناخته می‌شوند.
  • وراثت: وقتی یک کلاس با به ارث بردن تابع موجود از یک کلاس والد تعریف می‌شود، به آن وراثت می‌گویند. در اینجا کلاس فرزند همه یا چند توابع عضو و متغیرهای یک کلاس والد را به ارث می‌برد.
  • چندشکلی (Polymorphism): این یک مفهوم شی گرا است که در آن می‌توان از یک تابع برای اهداف مختلف استفاده کرد. به‌عنوان‌مثال، نام تابع یکسان باقی می‌ماند، اما باعث می‌شود که تعداد آرگومان‌های متفاوتی را بگیرد و می‌تواند وظایف متفاوتی را انجام دهد.
  • بارگذاری بیش‌ازحد - نوعی چندشکلی که در آن برخی یا همه عملگرها بسته به نوع آرگومان‌هایشان پیاده‌سازی‌های متفاوتی دارند. به طور مشابه توابع نیز می‌توانند با پیاده‌سازی‌های مختلف بارگذاری شوند.
  • انتزاع داده: هر گونه نمایش داده‌ای که در آن جزئیات پیاده‌سازی پنهان (انتزاع شده) است.
  • Encapsulation یا کپسوله سازی: به مفهومی اشاره دارد که در آن همه داده‌ها و توابع عضو را با هم کپسوله می‌کنیم تا یک شی را تشکیل دهند.
  • سازنده یا (Constructor): به نوع خاصی از تابع اشاره دارد که هر زمان که یک شی از یک کلاس تشکیل شود به طور خودکار فراخوانی می‌شود.
  • Destructor - به نوع خاصی از تابع اشاره دارد که هر زمان که یک شی حذف شود یا از محدوده خارج شود به طور خودکار فراخوانی می‌شود.

در دوره آموزش برنامه نویسی شی گرا در PHP ما با این مفاهیم به‌خوبی آشنا خواهیم شد.

چرا OOP؟

شاید برای برخی از کاربران سوال باشد که چرا برنامه نویسی شی گرا را باید یاد بگیریم و آن را به کار ببریم؟ برخی از مهم‌ترین دلایلی که ما را مجاب می‌کند که از برنامه نویسی شی گرا استفاده کنیم به‌صورت موارد زیر است:

  • OOP سریع‌تر و آسان‌تر برای اجرا است.
  • OOP یک ساختار واضح برای برنامه‌ها فراهم می‌کند.
  •   OOP به به‌روز نگه‌داشتن کدهای PHP کمک می‌کند و نگهداری، اصلاح و اشکال‌زدایی کد را آسان‌تر می‌کند.
  • OOP امکان ایجاد برنامه‌های کاربردی قابل استفاده مجدد را با کد کمتر و زمان توسعه کوتاه‌تر ایجاد می‌کند.

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

کلاس‌ها و اشیا چیست؟

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

سازنده چیست؟

سازنده به شما اجازه می‌دهد تا خصوصیات یک شی را پس از ایجاد شی مقداردهی اولیه کنید. اگر یک تابع __construct()‎ ایجاد کنید، PHP به طور خودکار این تابع را هنگامی که یک شی از یک کلاس ایجاد می‌کنید، فراخوانی می‌کند. توجه کنید که تابع سازنده با دو آندرلاین (__) شروع می‌شود!

Destructor چیست؟

هنگامی که شیء تخریب می‌شود یا اسکریپت متوقف یا خارج می‌شود، یک تخریبگر فراخوانی می‌شود. اگر یک تابع __destruct()‎ ایجاد کنید، PHP به طور خودکار این تابع را در انتهای اسکریپت فراخوانی می‌کند. توجه داشته باشید که تابع Destruct با دو آندرلاین (__) شروع می‌شود.

Access Modifiers چیست؟

اصلاح‌کننده‌های دسترسی به ما کمک می‌کنند تا سطح محدودیت‌های مربوط به ویژگی‌ها و روش‌ها را تعریف کنیم. سه تغییردهنده دسترسی وجود دارد:

  • عمومی: ویژگی یا روش از همه‌جا قابل‌دسترسی خواهد بود و این اصلاح‌کننده پیش‌فرض است.
  • محافظت‌شده: ویژگی یا متد را می‌توان در داخل کلاس و توسط کلاس‌های مشتق شده از آن کلاس دسترسی داشت.
  • خصوصی: ویژگی یا متد فقط در کلاس قابل‌دسترسی است.

ارث برای یا وراثت چیست؟

وراثت در OOP  وقتی است یک کلاس از کلاس دیگری مشتق می‌شود. کلاس فرزند تمام خصوصیات و متدهای عمومی و محافظت‌شده را از کلاس والد به ارث خواهد برد. علاوه بر این، می‌تواند خواص و روش‌های خاص خود را داشته باشد. یک کلاس ارثی با استفاده از کلمه کلیدی Extends تعریف می‌شود.

اینترفیس یا رابط چیست؟

رابط (Interface) در php به شما امکان می‌دهد قراردادی را که یک کلاس باید پیاده‌سازی کند، مشخص کنید. برای تعریف یک رابط، از کلمه کلیدی Interface استفاده می‌کنید. رابط‌ها استفاده از انواع کلاس‌های مختلف را به روشی مشابه آسان می‌کنند. هنگامی که یک یا چند کلاس از یک رابط استفاده می‌کنند، به آن چندشکلی گفته می‌شود.

کلاس‌ها و روش‌های انتزاعی چیست؟

کلاس انتزاعی (Abstract Classes) کلاسی است که حداقل یک متد انتزاعی را شامل می‌شود. متد انتزاعی متدی بوده که اعلان شده، اما در کد پیاده‌سازی نشده است. پیاده‌سازی‌ها در کلاس کودک اتفاق می‌افتد. یک کلاس یا متد انتزاعی با کلمه کلیدی انتزاعی تعریف می‌شود؛ بنابراین، وقتی یک کلاس فرزند از یک کلاس انتزاعی به ارث می‌رسد، قوانین زیر را داریم:

  • متد کلاس فرزند باید با همین نام تعریف شود و متد انتزاعی والد را مجدداً اعلام می‌کند.
  • نمی‌توان کلاس انتزاعی را نمونه کرد.
  • نمی‌توان متد انتزاعی در کلاس غیر انتزاعی داشت.
  • متد کلاس فرزند باید با همان اصلاح کننده دسترسی محدود یا کمتر تعریف شود.
  • تعداد آرگومان‌های مورد نیاز باید یکسان باشد. با این حال، کلاس فرزند ممکن است آرگومان‌های اختیاری نیز داشته باشد.
  • نمی‌توان چندین کلاس انتزاعی را گسترش داد.

رابط‌ها در مقابل کلاس‌های انتزاعی

رابط‌ها مشابه کلاس‌های انتزاعی هستند. تفاوت بین اینترفیسها و کلاس‌های انتزاعی عبارت‌اند از:

  • رابط‌ها نمی‌توانند ویژگی داشته باشند، در حالی که کلاس‌های انتزاعی می‌توانند
  • همه متدهای واسط باید عمومی باشند، در حالی که متدهای کلاس انتزاعی عمومی یا محافظت شده هستند
  • همه متدها در یک رابط انتزاعی هستند، بنابراین نمی‌توان آن‌ها را در کد پیاده‌سازی کرد و کلمه کلیدی انتزاعی ضروری نیست.
  • کلاس‌ها می‌توانند یک رابط را پیاده‌سازی کنند در حالی که از کلاس دیگری به طور هم‌زمان ارث‌بری می‌کنند.

صفات چیست؟

PHP فقط از وراثت تکی پشتیبانی می‌کند، یک کلاس فرزند می‌تواند تنها از یک والد به ارث ببرد؛ بنابراین، اگر یک کلاس نیاز به ارث بردن چندین رفتار داشته باشد، چه؟ صفات OOP این مشکل را حل می‌کند. از ویژگی‌ها برای اعلام روش‌هایی استفاده می‌شود که می‌توانند در چندین کلاس استفاده شوند. صفات می‌توانند متدها و متدهای انتزاعی داشته باشند که که قابلیت این را دارند در چندین کلاس استفاده شوند و متدها می‌توانند هر گونه اصلاح کننده دسترسی (عمومی، خصوصی یا محافظت شده) داشته باشند. صفات با کلمه کلیدی Trait اعلام می‌شوند. همه این موارد و بسیاری از ابعاد دیگر برنامه نویسی شی گرا در پی اچ پی در دوره آموزش برنامه نویسی شی گرا در PHP موردبحث واقع خواهند شد و شما نگرانی بابت این موضوع نخواهید داشت.

سخن پایانی

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

poster
  
برگزار کننده:  مکتب‌خونه
  
زمان مورد نیاز برای گذارندن دوره:  31 ساعت
مجموع محتوای آموزشی:  7 ساعت ویدئو - 24 ساعت تمرین و پروژه
 (قابل دانلود نمی‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام