OOP چیست؟

از موتو کد، دانشنامهٔ برنامه‌نویسی
Main Page Tutorial
Php-menu.png
موارد آموزشی
فرم‌ها در PHP
PHP پیشرفته
شیء گرایی در PHP
۱OOP چیست؟
۲کلاس‌ها و اشیاء
۳متد سازنده
۴متد نابودگر
۵مشخص کننده‌های دسترسی
۶ارث بری
۷ثابت‌های کلاس
۸کلاس‌های Abstract
۹Traits
۱۰متدهای Static
۱۱ویژگی‌های Static
پایگاه داده MySQL
XML در PHP
AJAX در PHP
مثال‌های PHP
مرجع PHP

از نسخه 5 PHP، شما می‌توانید کد‌های PHP را به صورت شیء گرا نیز بنویسید. [۱]

برنامه نویسی شیء گرا سریع‌تر است و اجرای آن نیز آسان است.

پی اچ پی OOP چیست؟

OOP (سرواژهٔ: Object-Oriented Programming) به معنای برنامه نویسی شیء گرا است.

برنامه نویسی Procedural دربارهٔ نوشتن procedure‌ها (به فارسی: توابعی) است که عملیات‌هایی را روی داده‌ها انجام می‌دهند، در حالی که برنامه نویسی شیء گرا در مورد ساختن اشیائی است که شامل هر دوی آنها یعنی هم داده و هم توابع می‌شود.

برنامه نویسی شیء گرا مزایای زیادی را در برابر برنامه نویسی procedural دارد:

  • PHP سریعتر است و اجرای آن آسان‌تر است
  • PHP یک ساختار واضح برای نرم افزارها فراهم می‌کند
  • PHP به کد PHP شما کمک می‌کند که کد PHP را واضح کنید «خود را تکرار نکنید»، و نگهداری، ویرایش و اشکال زدایی کد را آسان می‌کند
  • PHP این امکان را فراهم می‌کند که نرم افزارهایی با قابلیت استفاده مجدد با کد کمتر و زمان توسعه کوتاه‌تر بسازید
نکته: مفهوم عبارت «خود را تکرار نکنید» (DRY) در مورد کاهش تکرار کد است. شما می‌بایست کدهایی را که در نرم افزارهای مختلف یکسان هستند را استخراج کنید، و آنها در یک محل قرار دهید و از آنها دوباره استفاده کنید به جای اینکه آنها را تکرار کنید.

PHP - کلاس ها و اشیاء چه چیزی هستند؟

کلاس‌ها و اشیاء دو مفهوم اصلی برنامه نویسی شیء گرا هستند.

به تصویر زیر نگاه کنید تا تفاوت بین کلاس و اشیاء را ببینید:

Time2wait.svg ساخت نمونه مثال این بخش در دست اقدام است.


مثال دیگر:

Time2wait.svg ساخت نمونه مثال این بخش در دست اقدام است.


بنابراین، یک کلاس الگویی برای اشیاء است، و یک شیء نوعی از یک کلاس است.

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

به فصل بعد نگاهی بیندازید تا مطالب بیشتری را در مورد PHP بیاموزید.


منابع آموزشی