مقدمة إلى البرمجة الكائنية التوجه في PHP

تمت الكتابة بواسطة: عبد الحكيم

تارخ آخر تحديث: 02 سبتمبر 2024

محتوى المقال

مقدمة إلى البرمجة الكائنية التوجه في PHP

البرمجة الكائنية التوجه (OOP) هي نموذج برمجي يسمح بتنظيم البرامج بطريقة أكثر قابلية للإدارة والتوسع. في PHP، يمكن استخدام OOP لبناء تطبيقات مرنة وسهلة الصيانة عن طريق استخدام الفئات (Classes) والكائنات (Objects).

الفئات والكائنات

الفئة هي عبارة عن قالب أو نموذج يتم من خلاله إنشاء الكائنات. تحتوي الفئة على خصائص (Properties) تمثل البيانات، ودوال (Methods) تمثل السلوكيات.

الكائن هو نسخة من الفئة يتم إنشاؤها وتحتوي على القيم الخاصة بها.

على سبيل المثال، دعنا نُعرّف فئة بسيطة تمثل سيارة:

<?php
class Car {
   public $make;
   public $model;
   public $year;

   public function start() {
      return "السيارة تعمل";
   }
}

# إنشاء كائن من الفئة Car
$myCar = new Car;
$myCar->make = "تويوتا";
$myCar->model = "كورولا";
$myCar->year = 2023;

echo $myCar->start();
?>

النتيجة ستكون:

السيارة تعمل

الوراثة

الوراثة هي ميزة في OOP تسمح لفئة جديدة (Child Class) بوراثة خصائص ودوال فئة موجودة مسبقًا (Parent Class). يمكن للفئة الجديدة إضافة أو تعديل السلوكيات الخاصة بها.

على سبيل المثال، إذا أردنا إنشاء فئة جديدة ElectricCar ترث من Car وتضيف خاصية جديدة تمثل سعة البطارية:

<?php
class ElectricCar extends Car {
   public $batteryCapacity;

   public function charge() {
      return "السيارة قيد الشحن";
   }
}

# إنشاء كائن من الفئة ElectricCar
$myElectricCar = new ElectricCar;
$myElectricCar->make = "تسلا";
$myElectricCar->model = "موديل 3";
$myElectricCar->year = 2024;
$myElectricCar->batteryCapacity = "75 كيلوواط";

echo $myElectricCar->charge();
?>

النتيجة ستكون:

السيارة قيد الشحن

التغليف (Encapsulation)

التغليف هو مفهوم في OOP يعني حماية البيانات الموجودة داخل الفئة عن طريق تحديد مستوى الوصول إلى هذه البيانات باستخدام محددات الوصول (Access Modifiers) مثل public, private, وprotected.

على سبيل المثال، يمكننا تغليف خاصية make بحيث لا يمكن الوصول إليها مباشرة من خارج الفئة:

<?php
class Car {
   private $make;

   # دالة لتعيين قيمة الخاصية make
   public function setMake($make) {
      $this->make = $make;
   }

   # دالة للوصول إلى قيمة الخاصية make
   public function getMake() {
      return $this->make;
   }
}

# إنشاء كائن من الفئة Car
$myCar = new Car;
$myCar->setMake("تويوتا");
echo $myCar->getMake();
?>

النتيجة ستكون:

تويوتا

الخلاصة

البرمجة الكائنية التوجه في PHP توفر أدوات قوية لتنظيم التعليمات البرمجية بشكل أكثر كفاءة ومرونة. باستخدام الفئات والكائنات، يمكنك إنشاء برامج قابلة للتوسع والصيانة بسهولة أكبر. كما أن مفاهيم الوراثة والتغليف تساعد في تحسين الأمان والهيكلية للتطبيقات البرمجية.

طور مهاراتك: مقالات يجب قراءتها في البرمجة