Site hosted by Angelfire.com: Build your free website today!

دروس الأكشن - الدرس الثاني - المتغيرات Variables

بسم
الله الرحمن الرحيم

اللهم أحلل عقدة من لساني يفقهوا قولي

يرتبط هذا الدرس بالدرس الأول من هذه السلسلة

كما أننا في أمثلة هذا الدرس سنضع الكود في أول إطار من العرض .

و سنستخدم الأمر trace ؛ و الذي سبق شرحه في سلسلة أوامر الأكشن سكريبت .

و وظيفة هذا الأمر باختصار : أخراج القيمة المطلوبة في نافذة المخرجات أثناء تجربة العرض على برنامج فلاش و ليس عند عرضه على الانترنت أو مشغل الفلاش



مفهوم المتغير : هو وعاء يُعرّف باسم و يحتوي على قيمة معينة .

أي مثل الكأس يمكن أن يتغير ما يحتويه فقد يكون عصيراً حالياً ، و بعد وقت قد يحتوي على ماء ... وهكذا .

و المتغيرات قد عَرَفناها سابقاً في الرياضيات إلا أن مفهومها يختلف قليلاً كما سترى في هذا الدرس بأذن الله .



تسمية المتغيرات :

1.
يمكن أن يتكون أسم المتغير من أكثر من حرف و أكثر من رقم ؛ ولكن يجب أن يبدأ أسم المتغير بـحرف وليس رقم

2.
لا يمكن أن يحتوي أسم المتغير على مسافات أو أي رموز خاصة مثل : @ # $ %

3.
لا يمكن استخدام الكلمات المحجوزة في لغة الأكشن سكريبت كأسماء متغيرات مثل : for ; on ; stop ; true

4.
يمكنك كتابة المتغير بأكثر من كلمة يفصل بينهما الشرطة السفلية (_) مثل : my_variable_2

5.
يمكن أن يكون أسم المتغير باللغة العربية ؛ و لكن لا أنصح بذلك و بشدة ؛ لأنه سوف يشغلك في تغيير اللغة كل فترة ؛ و سيضيع عليك فهم الكود المكتوب

6.
أسماء المتغيرات ليست حساسة لحالة الحرف ؛ أي أن المتغير المسمى بـ CLoNe هو نفسه المتغير clone

7.
ينصح بأن تكون أسماء المتغيرات تدل على محتواها مثلاً : إن كان المتغير يعبر عن مجموع قيمة معينة أجعل أسم المتغير total



مثال أسماء متغيرات صحيحة: s ; book ; taha22 ; al6erma7; myVariable ; FirstName

مثال أسماء متغيرات غير صحيحة : 2s ; 34Umar ; my Variable ; my@6erma7; false



أنشاء المتغيرات و التصريح عنها :

و لدينا تمرين : هو نريد تعريف متغير أسمه FirstName و أن نسند له القيمة ( هجر ) .

سنشرح كيف أنشاء متغير في الوضعين المتاحان لكتابة الكود ؛ أولاً الوضع العادي Normal Mode :

1.
كما ذكرت : من ملف جديد و دون أن تضع شيء ؛ أذهب إلى الإطار الأول و اضغط عليه بزر الفأرة الأيمن و أختر Action .

2.
من الجهة اليسرى للنافذة أو بالضغط على زر + أختر Actions ثم Variables ثم set variable

3.
في الخانة variable أكتب أسم المتغير ؛ وهو في مثالنا FirstName

4.
في الخانة Value أكتب القيمة التي تريدها للمتغير ؛ و هنا إذا كان القيمة التي ستكتبها نص string ؛ أكتبها مباشرة فقط ؛ و إذا كانت غير ذلك ضع علامة صح عند الخيار Expression - سوف نتكلم عن أنواع المتغيرات بعد قليل -

و في مثالنا أكتب كلمة : هجر .

5.
الآن نريد أن نعرض قيمة هذا المتغير ؛ سنستخدم الأمر trace : أختر Actions ثم Miscellaneous Actions ثم trace

6.
ثم في خانة Message ضع أسم المتغير FirstName ثم ضع علامة صح عند الخيار Expression و السبب أنه متغير و ليس نص

7
. جرب العمل Ctrl+Enter

لاحظ أنه عرض لك قيمة المتغير FirstName و هي النص ( هجر )

و
لو أنك لم تضع علامة صح عند الخيار Expression فأن النص FirstName سيظهر و ليس قيمة المتغير FirstName



أما في الوضع الخبير Expert Mode :

ملاحظة مهمة جداً : الأوامر أو الكلمات المحجوزة في لغة أكشن سكريبت تكون حساسة لحالة الحرف و يجب كتابتها كما هي ( فمثلاً : يجب كتابة الأمر trace هكذا trace و ليس هكذا Trace أو TRACE )

1.
أكتب أسم المتغير ثم علامة يساوي (=) ثم قيمة هذا المتغير ثم الفاصلة المنقوطة لإنهاء السطر البرمجي

مع
مراعاة أنه عندما تكون قيمة المتغير نص String يجب وضع علامتي تنصيص المزدوجة" " أو علامة التنصيص المفردة ' ' ؛ لعلك لاحظت أن فلاش أعطى لون ازرق للقيم النصية .

ثم نأتي للسطر الثاني :

2.
أكتب الأمر trace – لعلك لاحظت أن فلاش أعطى لون أزرق قاتم ليعلمك انه تعرف على هذه الكلمة على أنها أمر من أوامر الأكشن –

 

3. ثم أفتح قوس - و سترى أنه يوجد تلميح يساعدك - ثم أسم المتغير ثم أغلق القوس ثم فاصلة منقوطة .

 

4. تستطيع التأكد من سلامة الكود بالضغط على الزر Check Syntax ( على شكل علامة صح زرقاء )

 

5. فأذا أخرج لك عبارة This Script contains no errors فأعلم أن الكود خالي من الأخطاء .

6.  جرب العمل Ctrl+Enter



كما تلاحظ أن الوضع الخبير أسهل بكثير ؛ و لكنني أنصحكم باستخدامه بعد أن تتقدموا في تعلم الأكشن سكريبت

و هو وضع تستطيع أن تكتب ما تريد ولكن يجب أن تعرف syntax الطريقة الصحيح لكتابة كل أمر .



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

set
(myVariable , -23.43);

myVariable = -23.43

تغيير قيمة المتغير :

تتغير قيمة المتغير كلما أسندنا له قيمة جديدة ؛ و تحذف القيمة القديمة ؛ أتمنى أن تخمن الإجابة قبل تجربة الكود التالي :

myVariable = 3;
trace(myVariable);
myVariable = 7;
trace(myVariable);

و يمكن أن نسند لمتغير قيمة متغير آخر ؛ أتمنى أن تخمن الإجابة قبل تجربة الكود التالي :

myVariable = 3;
myVariable2 = myVariable ;
trace(myVariable2);



أنواع المتغيرات ؛ و يمكن معرفة نوع كل متغير باستخدام الأمر typeof

الرقمي Number :

و هي الأعداد الموجبة والسالبة والصفر مثل : 3 ؛ -5 ؛ 99998 ؛ 0 ؛ 34.434

جرب الكود التالي :

//
هذا متغير عددي/رقمي
v1 = -2222.323;
trace(v1);
trace(typeof(v1));

النصي String :

و هو كل نص يحاط بـ علامتي تنصيص ؛ مثل الحروف ( أ ب ت ز a b g H B M ) و الرموز الخاصة ( #$%^&*@! )

و حتى الأرقام إذا أحيطت بـعلامتي تنصيص تعتبر قيمة نصية - سنتكلم عن هذه النقطة في درس لاحق-

جرب الكود التالي :

//
هذا متغير نصي
v2 = "
شبكة هجر الثقافية"
trace(v2);
trace(typeof(v2));


المنطقي boolean :

و هي تحمل أحدى قيمتين فقط و نستخدم هذا النوع بكثرة عند الجمل الشرطية - كما سنرى في الدروس القادمة -

false :
معناها خاطئة ؛ و هي تساوي الصفر .

true :
و معناها صحيح أو صائبة ؛ و هي تساوي أي رقم خلاف الصفر .

جرب الكود التالي :

//
هذا متغير منطقي
v3 = false ;
trace(v3);
trace(typeof(v3));

 

مع العلم أنه يوجد أنواع أخرى من المتغيرات سنتطرق لها لاحقاً ؛ و هي : المصفوفات Array و الكائنات Objects

سنكتفي بهذا القدر الآن ؛ و سنترك التطرق لمواضيع متعلقة بالمتغيرات إلى وقت آخر مثل : مجال المتغيرات (محلي/عام) ؛ و التحكم بمتغيرات على خط زمني آخر ؛ التبديل بين أنواع المتغيرات .

علماً بأن الدرس التالي سيكون عن المعاملات و أنواعها : الحسابية و المنطقية و معاملات تعيين قيمة ؛ و معاملات المقارنة و سيتبعه مثال تطبيقي شامل ( صنع آلة حاسبة بالفلاش ) و اختبار للمعلومات .... أرجو المذاكرة

 

يمكن تحميل الأمثلة من هنا examples.zip