الرئيسية > برمجة > مدخل إلى البرمجة الكائنية في PHP 5

مدخل إلى البرمجة الكائنية في PHP 5


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

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

مثال :

1<?php
2class myClass
3 {
4  public $var1;
5  public $var2;
6  .
7  .
8  .
9  public $var_n;
10
11 public function method1()
12  {
13  }
14 public function method1()
15  {
16  }
17 .
18 .
19 .
20 public function method_n()
21  {
22   }
23}
24?>

السطر الثاني نسبق إسم الكائن بالكلمة المفتاحية class بعدها نضع إسم الكائن ،من المستحسن أن تكون أسماء العلم تبتدئ بحرف كبير (مجرد سنة في البرمجة الكائنية :D) بعدها نضع حاظنتين حيث بداخلهما تكون شفرتنا .
السطر 4 وضعنا إسم proprties و تحته أيضا وضعنا خاصية أخرى للكائن هذا على حسب حاجتنا أما في السطر 11 وضعنا الmethod الخاصة بنا وهكذا .

حتى الآن رأينا طريقة كتابة كائن أم إستدعائه تكون بإستخدام الكلمة this$ فملا لو أردنا تغيير قيمة الخاصية var1 فإننا نكتب الآتي :

$this->var1 = value;

لاحظوا أن الخاصية كتبت من دون علامة “$” الدوال تكتب بنفس الطريقة .
مثال :

$this->methode1();

الأمثلة السابقة تصلح فقط داخل الكائن يعنني أننا نستعمل الخاصية var1 داخل الدالة methode2 أما لو أردنا أن نستخدم أي خاصية أو طريقة خارج الكائن فهذا يتطلب منا أولا إستدعاء الكائن ثم يمكننا الوصول إلى الخاصية
أو الطريقة التي نريدها في الكائن .
مثال :

$useClass = new myClass();

لإستدعاء كائن علينا أن نكتب الكلمة المفتاحية new بعدها إسم الكائن هذا فقط لإستدعاء الكائن أما لو أردنا الوصول إلى خاصية معينة أو طريقة فإننا بدل أن نستخدم الكلمة this$ فإننا نستخدم المتغير الذي إستعملناه في إستدعاء
الكائن .
مثال :

$useClass = new myClass();
$useClass->var1 = value;

السطر الأول واضح وضوح الشمس أما إن لم يكن واضحا بالنسبة لك فهذا جراء جهد عينك أمام الحاسوب لهذا عليك أن تستعمل نظارة حتى يتضح لك المثال .
السطر الثاني لقد شرحته قبل أن أكتبه😀 .
الآن سنرى مثال كامل حول ما تعلمناه سابقا .
مثال :

1 <?php
2 class myClass
3  {
4   public $name;
5   public function echoName()
6    {
7     echo $this->name;
8    }
9  }
10 $class = new myClass();
11 $class->name = “SIFE”;
12 $class->echoName();
13 ?>

السطر 2 عرفنا فيه إسم الكائن الخاص بنا ،السطر 4 وضعنا خاصيتنا مسبوقة بكلمة public (سنرى معناها إن شاء الله في الدرس القادم) .
السطر 5 عرفنا فيه إسم الmethode الخاصة بنا بعدها في السطر 7 نقوم بطباعة قيمة الخاصية name .
السطر 10 إستدعينا الكائن ،السطر 11 وضعنا قيمة للخاصية name أخيرا في السطر 12 إستدعينا الطريقة echoName التي تطبع قيمة الخاصية name .
في هذا الدرس البسيط تعرفنا على مقدمة بسيطة جدا في البرمجة الكائنية في الدروس القادمة إن شاء الله سنحاول التقدم في مفهوم البرمجة الكائنية .

التصنيفات :برمجة الوسوم:,
  1. 3 سبتمبر 2009 الساعة 2:23 ص

    الله يوفقك .. ونبي دروس اكثر

  2. Dr.zoco
    30 يناير 2010 الساعة 1:05 م

    طيب افرض اننا نريد استخدام أحد دوال هذا الكلاس في ملف أخر

    هل نستخدم $this أيضا ؟؟

  3. 25 يونيو 2011 الساعة 8:58 ص

    شرحك ممتاز اخي الكريم استمر

  4. ok
    25 نوفمبر 2011 الساعة 6:47 م

    مشكور اخي درس ممتاز

  5. ابو محمد
    1 أغسطس 2012 الساعة 2:01 ص

    استفدت كثيراً !
    جزاك الله خيراً .. ورحم والديك

  6. 1 أغسطس 2012 الساعة 9:50 ص

    و رحمني أيضا.

  1. No trackbacks yet.

أضف تعليقاً

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s

%d مدونون معجبون بهذه: