0Pricing
PHP Academy · درس

الفئات والخصائص والأساليب

عرّفوا فئة PHP مع خصائص وأساليب

الفئات والخصائص والأساليب درس مجاني في PHP Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في PHP Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة PHP Academy 4 دروس في المجموع.

مقدمة: فئات PHP

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

المفاهيم الأساسية

المفاهيم الأساسية لفئات PHP:

  • استخدم class ClassName {} لتعريف الفئة
  • تخزّن الخصائص البيانات، بينما تحدد الأساليب السلوك
  • أنشئ مثيلات باستخدام new ClassName()
  • يمكنك الوصول إلى الأعضاء باستخدام سهم ->

تعريف فئة

مثال:

<?php
class Car {
    public string $brand;
    public int    $year;
    public float  $price;

    public function describe(): string {
        return "{$this->year} {$this->brand}";
    }
}

$car = new Car();
$car->brand = 'Toyota';
$car->year  = 2022;
$car->price = 25000.0;

echo $car->describe(); // 2022 Toyota

معدّلات الوصول

متابعة:

<?php
class BankAccount {
    public  string $owner;
    private float  $balance;
    protected string $currency;

    // public: accessible everywhere
    // private: only within this class
    // protected: this class + subclasses
}

خصائص مع أنواع

تطبيق عملي:

<?php
class Product {
    public string  $name;
    public float   $price;
    public int     $stock = 0;  // default value
    public bool    $active = true;

    public function inStock(): bool {
        return $this->stock > 0;
    }
}

أساليب المثيلات

مزيد من التعمق:

<?php
class Counter {
    private int $count = 0;

    public function increment(): void { $this->count++; }
    public function decrement(): void { $this->count--; }
    public function reset(): void    { $this->count = 0; }
    public function value(): int      { return $this->count; }
}

$c = new Counter();
$c->increment();
$c->increment();
echo $c->value();  // 2

تسلسل الأساليب

استخدام متقدم:

<?php
class QueryBuilder {
    private string $table = '';
    private int    $limit = 100;

    public function from(string $t): static { $this->table = $t; return $this; }
    public function limit(int $n): static   { $this->limit = $n; return $this; }
    public function build(): string {
        return "SELECT * FROM {$this->table} LIMIT {$this->limit}";
    }
}

echo (new QueryBuilder())->from('users')->limit(10)->build();

ثوابت الفئة

نمط عملي:

<?php
class HttpStatus {
    const OK        = 200;
    const NOT_FOUND = 404;
    const ERROR     = 500;

    public static function message(int $code): string {
        return match($code) {
            self::OK        => 'OK',
            self::NOT_FOUND => 'Not Found',
            default         => 'Error',
        };
    }
}

echo HttpStatus::message(HttpStatus::NOT_FOUND);  // Not Found

الخصائص للقراءة فقط (PHP 8.1)

أفضل الممارسات:

<?php
class Point {
    public function __construct(
        public readonly float $x,
        public readonly float $y,
    ) {}

    public function distanceTo(Point $other): float {
        return sqrt(($this->x - $other->x) ** 2 + ($this->y - $other->y) ** 2);
    }
}

$p1 = new Point(0, 0);
$p2 = new Point(3, 4);
echo $p1->distanceTo($p2);  // 5

نمط عملي

اجمع كل ذلك في نمط عملي لفئات PHP.

الأخطاء الشائعة

تجنّب هذه الأخطاء الشائعة عند استخدام فئات PHP:

  • استخدم معدّلات الوصول لتغليف الحالة
  • فضّل ترقية المُنشئ للفئات المختصرة
  • عرّف الثوابت باستخدام const للقيم الثابتة
  • استخدم تسلسل الأساليب (الواجهة الانسيابية) لإنشاء واجهات API واضحة

تحقق سريع

ما معدّل الوصول الذي يجعل الخاصية متاحة داخل الفئة نفسها فقط؟

مراجعة: فئات PHP

لقد غطّيت موضوع فئات PHP. تذكّر النقاط الأساسية:

  • استخدم معدّلات الوصول لتغليف الحالة
  • فضّل ترقية المُنشئ للفئات المختصرة
  • عرّف الثوابت باستخدام const للقيم الثابتة
  • استخدم تسلسل الأساليب (الواجهة الانسيابية) لإنشاء واجهات API واضحة

الأسئلة الشائعة

هل درس «الفئات والخصائص والأساليب» مجاني؟

نعم — نص درس «الفئات والخصائص والأساليب» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة PHP Academy، انتقل إلى CoddyKit PRO. تتضمن دورة PHP Academy 4 دروس في المجموع.

ماذا ستتعلم في «الفئات والخصائص والأساليب»؟

عرّفوا فئة PHP مع خصائص وأساليب تتمرن على PHP Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ PHP Academy؟

لا تُشترط خبرة سابقة. PHP Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «الفئات والخصائص والأساليب»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس PHP Academy هذا؟

نعم. كل درس في PHP Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. الفئات والخصائص والأساليب
  2. المنشئات والمدمّرات
  3. الخصائص والأساليب الساكنة
  4. نظرة عامة على الأساليب السحرية
← العودة إلى PHP Academy