العودة   منتديات البقعة > اقسام البرامج > بقعة لغات البرمجة

اعلانات

بقعة لغات البرمجة يناقش هاذا المنتدى لغات البرمجة فيجوال بيسيك , فيجوال سي ++ , دلفي , أكسيس , أوراكل , جافا , الاسمبلي, بي اتش بي, HTML , ..

  انشر الموضوع
إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 19.07.2012, 05:45   المشاركة رقم: 1
المعلومات
الكاتب:
الرتبة


البيانات
التسجيل: 02.06.2012
العضوية: 2690
المشاركات: 456 [+]
بمعدل : 0.11 يوميا
اخر زياره : [+]
اللون  : ae
معدل التقييم:
نقاط التقييم: 10

التوقيت

الإتصالات
الحالة:
مريم سليمان غير متواجد حالياً
وسائل الإتصال:

المنتدى : بقعة لغات البرمجة

 

الكلاس او البرمجة الكائنية هي برمجة مترابطة هناك قوانين وأنظمة !

هي تعطيك فهم حقيقي للبرمجة واتساع أكثر !


تخيل لو أردت مثلا عمل كود بسيط هو جمع عدد وإظهار النتيجة

في
البرمجة التقليدية والعادية سوف يكون الكود هكذا

رمز PHP:
<?php
$x
=1;
$x2=2;
echo
$x;
?>

طيب هل تستطيع أن تعملها من خلال الكلاس نعم ولكن كيف يكون ذلك؟!


الكلاس يحتاج لبرمجته أن تفهم الاتي

إنشاء كلاس وإعطائه اي أسم

أوكي دعونا ننشأ كلاس ونعطيه اسم

رمز PHP:
<?php
class e7seb{


}
?>

هذا يكون كتابة الكلاس

اصبح عندنا كلاس اسمه
e7seb

داخل الكلاس ماذا نكتب

1-
نكتب المتغيرات ونحدد هويتها

2-
نكتب الفنيكشن وهي دالة تقوم بالعملية الحسابية

--------------------------------------------------------

احنا قلنا نكتب اول شي المتغيرات ونحدد هويتها مالمقصود هويتها

الهوية تعني هل هذا
المتغير عام

ام هو
متغير خاص

مالفرق بينهم

المتغير العام أستطيع أن اطلبه خارج الكلاس

المتغير لا أستطيع أن أطلبه خارج الكلاس هو محصور داخل الكلاس فقط

هذي صورة توضح ذلك



وركز هنا أكثر وإقرأ التأشيرات عليها




داخل الكلاس عملنا متغيران

رمز PHP:
public $num;
private
$num1;

اول متغير من نوع عام public هو متغير استطيع اعطائه قيمة او إستدعائه خارج الكلاس

الثاني متغير خاص private لا استطيع إستدعائه خارج الكلاس فقط اعطيه قيمه داخل الكلاس

اذا كتبنا المتغير داخل الفنيكشن نشير له بي $this-> ثم نكتب اسم المتغير

رمز PHP:
$this->num

هذي خطوة لابد أنك تفهمها في البرمجة التقبيدية نكتب المتغير هكذا $num

اما في الكلاس يكتب هكذا $this->num

الان نأتي الي الفنيكشن الذي يقوم بالعملية الحسابية

رمز PHP:
function ok_e7seb(){
$this->num1=1;
$this->num=2;
return
$this->num1+$this->num;

}

داخل الفنيكشن اللي اسميناه ok_e7seb()

اعطينا المتغيرات قيم

بعدها كتبنا دالة return لتعود إلينا بقيمة الجمع

الكلاس عبارة عن متغيرات وفنيكنشات نحن نصنعها ونسميها اي اسم ولكن بشرط أن لاتكون مسميتها تتشابه مع اسماء الدوال

يعني مايجوز تعمل فنيكشن وتسميه مثلا rand فهو اسم محجوز لدالة

مثال

رمز PHP:
function rand(){

}

هذا غلط

ايضا كي تكتب فنيكشن داخل الكلاس لابد يسبق بعبارة function

حتى نبين للكلاس أن هذا عبارة عن دالة

أحنا عملنا كلاس اسميناه

رمز PHP:
class e7seb{




}

وضعنا في داخله متغيران وفنيكشن واحد

داخل الفنيكشن اعطينا المتغيرات قيم

وظيفة الفنيكشن هو جمع عددين

فاستعملنا دالة return ومهمتها تعود لنا بقيمة الجمع

الان بقت علينا شغلة مهم

هو عرض النتيجة (تشغيل الكلاس)

الان لو حفظت الملف وشغلته من خلال المتصفح لن يظهر لك شي

لماذا لأنك لم تقم بتشغيل الكلاس !


كيف اشغله

اولا : تقوم بإنشاء كلاس جديد تسميه بإي أسم

ثانيا : تضع امام اسم الكلاس الجديد علامة = بعدها تكتب عبارة new

ثالثا : تكتب اسم الكلاس الاول !


اسم الكلاس الثاني تكتبه مثل ماتكتب اسم المتغير في البرمجة التقليدية

انا اختر له اسم

رمز PHP:
$go_e7seb

=

new

رمز PHP:
e7seb();

رمز PHP:
$go_e7seb = new e7seb();

خلاص أنا أنشئت كلاس جديد واسمه $go_e7seb

خلاص هو الذي سوف اتعامل معه في طباعة النتائج

كيف أستخدمه هل اكتبه هكذا

رمز PHP:
echo $go_e7seb

روح سوي تحديث للملف شوف أظهر لك نتيجة الجمع !!!

مراح يظهر لك النتيجة

لازم تكتب اسم االكلاس الجديد ثم سهم -> ثم نكتب اسم الفنيكشن

رمز PHP:
echo $go_e7seb->ok_e7seb();

الان سوي تحديث للصفحة سوف يعطيك النتيجة وهي

3



أعتقد إن الامور واضحة الحين

أنتم تتذكرون يوم تكلمت عن المتغيرات

وقلت أن المتغير العام public اقدر اعطيه قيمة خارج الكلاس

اما المتغير الخاص private ما اقدر لانه يظهر خطأ لنا

الان دعونا نمسح المتغير العام اللي داخل الفنيكشن

رمز PHP:
$this->num=2;

رمز PHP:
<?php
class e7seb{

public
$num;
private
$num1;

function
ok_e7seb(){

$this->num1=1;

return
$this->num1+$this->num;

}


}

$go_e7seb = new e7seb();
$go_e7seb->num=2;
echo
$go_e7seb->ok_e7seb();



?>

لاحظوا اعطيته قيمه خارج الكلاس

رمز PHP:
$go_e7seb->num=2;

الان احفظ الصفحة وسوي تحديث رايح يعطيك النتيجة 3

الان بضيف متغير عام جديد وبعطيه ايضا قيمة خارج الكلاس

ركز معي


رمز PHP:
<?php
class e7seb{

public
$num,$num2;
private
$num1;

function
ok_e7seb(){

$this->num1=1;

return
$this->num1+$this->num+$this->num2;

}


}

$go_e7seb = new e7seb();
$go_e7seb->num=2 ;
$go_e7seb->num2=5;
echo
$go_e7seb->ok_e7seb();



?>

رمز PHP:
public $num,$num2;


رمز PHP:
$go_e7seb->num2=5;

الان احفظ الصفحة وشف النتيجة رايحة تكون

8

صورة توضيحية




لاحظ انا كيف كتبت المتغيرات العامة وفصلت بينها بي فاصلة

رمز PHP:
public $num,$num2,$num3;

ايضا اقدر اعملها كذا

رمز PHP:
public $num;
public
$num2;
public
$num3;

كذا او كذا فهي صحيحة

طيب الان وصلت لنا بعض الامور وفهمنا

ايضا استطيع أن اعطي المتغيرات قيم مباشرة لاحظ الصورة




لاحظتوا أني تنوعت في اعطاء القيم مرة داخل الكلاس مرة داخل الفنيكشن مرة خارج الكلاس

للمتغيرات العامة


أنا قلت لكم أن المتغير الخاص لايستدعى خارج الكلاس ولا يعطى قيمة خارج الكلاس


جرب الان إستدعي المتغير الخاص خارج الكلاس

خلونا نجرب

رمز PHP:
$go_e7seb = new e7seb();
echo
$go_e7seb->num1;

شغل الصفحة رايح يحصل خطأ

رمز PHP:
Fatal error: Cannot access private property e7seb::$num1 in C:\AppServ\www\x\v\reg\up\page\class\classe7seb.php on line 21

===========================================

الان نريد أن نعمل كلاس فيه متغيرين وفنيكشن واحد

ورايح نضع شرط في الفنيكشن هل المتغير الاول يساوي المتغير الثاني




لاحظتوا الصورة

عملنا متغيران من نوع خاص private

وعلمنا داخل الفنيكسن شرط

هل المتغير num = num1

مهمة دالة
return تعود لنا بقيمة واحدة فقط اما متساويان او غير متساويان

ولاتكرر دالة return

رمز PHP:
if($this->num==$this->num1){

return
"متساويان";
return
"ياحبيب قلبي";
}else{

return
"غير متساويان";
return
"ياحبيب قلبي";
}

هل سوف تعود لنا بأكثر من قيمة طبعا لا

سوف تأخذ اول قيمة فقط

اما تظهر متساويان او تظهر غير متساويان

فهي ليست دالة طباعة ياخوان يعني مثل echo !

لو شلت دالة return ووضعت echo سوف تظهر لك رسالتين

متساويان ياحبيب قلبي

او غير متساويان ياحبيب قلبي

ولكن لا يفضل إستخدام دالة echo داخل الكلاس يفضل إستخدامها خارج الكلاس

وحتى لو إستخدمتها داخل الكلاس مافيه مشاكل !

اذا تعاملت مع دالة return داخل الكلاس لابد من كتابة دالة echo في طباعة النتيجة

لاحظ الصورة





طيب لو إستخدمنا دالة echo داخل الفنيكشن

صورة توضيحية



====================================


ركز بالصورة هذي وافهم الكلاس من خلال الشرح المصور



يمكن الصورة هذي تعطيك فهما اكثر للمتغير العام public

طيب حتى نفهم المتغير العام اكثر

اعمل صفحة وسميها

classe7seb.php

الان نريد نعمل كلاس فكرته كالتالي

كلاس يستقبل القيت
$_get




اذا كانت قيمة القيت رقمية سوف يجمع قيمة القيت مع قيمة المتغير الخاص

اذا لم تكن رقمية سوف يطبع الفنيكشن الثاني


ركز بالصورة التوضيحية




أتمنى أنك الفكرة وصلت ياشباب

===========================

الان نأتي الي البرامترات للفنكشنات وكيف توظيفها !


شاهد الصورة التوضيحية











عرض البوم صور مريم سليمان   رد مع اقتباس
قديم 20.07.2012, 12:39   المشاركة رقم: 2
المعلومات
الكاتب:
الرتبة
الصورة الرمزية
 
الصورة الرمزية لوجين


البيانات
التسجيل: 02.12.2009
العضوية: 1965
المشاركات: 1,193 [+]
بمعدل : 0.23 يوميا
اخر زياره : [+]
معدل التقييم:
نقاط التقييم: 10

التوقيت

الإتصالات
الحالة:
لوجين غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : مريم سليمان المنتدى : بقعة لغات البرمجة
افتراضي

مشكورة غاليتي عالشرح المفصل و الرائع









عرض البوم صور لوجين   رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)

الكلمات الدلالية (Tags)
مفصل, التعبيرات, الكلاس, بابسط, شرح, عن, ومفهومة, ورائع

أدوات الموضوع
انواع عرض الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
دعاء مؤثر ورائع ومبكي للشيخ ناصر القطامي مريم سليمان الفلاشات الوعظية والمحاضرات والقرآن والادعية 0 17.07.2012 04:20
شرح لكيفية التعامل مع الكوكيز و الكلاس و نموذج للتسجيل لوجين بقعة لغات البرمجة 1 02.07.2012 09:05
شرح مفصل Any Video Converter + تحميل جزائري بقعة البرامج 0 09.09.2011 04:57
درس مضحك ورائع غرام بقعة الجرافكس والمونتاج 7 23.11.2009 07:53
الحب عذاب بلوتوث حزين ورائع بنفس الوقت غدير بقعة الجوالات والاتصالات 2 28.09.2009 02:44


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.