تعلمنا ألان فائدة الإعلان عن المتغيرات و المشاكل التي تترتب عليها إذا لم نعلن عن أي متغير نضيفقة
وهذا يذكرني بمن تعلم القيادة ولكنه لا يعلم شئ عن قواعد المرور التي سترشدة إلي الطريق الصحيح
و لكي نتحكم في المتغيرات بشيئا من الفاعلية أكثر يجب نتعرف علي أوامر الإعلان حتى يمكننا الإعلان
عن المتغير بشكل سليم واستغلال الذاكرة بشكل أفضل.
أوامر الإقلات عن المثفيرات:
أمر الإعلان ؛ 001117 يستخدم لتعريف متغير ديناميكي 1/8085165 003/016 ضمن الأجراء ويكون مجال رؤية
هذا المتغير داخل الأجراء فقط وعمرة من عمر الأجراء أي أن عندما ينتهي الأجراء ينتهي معه مفعول
المتغير المحلي ويصبح لاقيمة له أو صفر ولهذا سمي أمر الإعلان هذا بديناميكية لأنه يوفر في الذاكرة
بشكل جيد.
أمر الإعلان : 88017 تستخدم لتعريف مصفوفة ديناميكية /ا8018 01/8016 غير معرفة لعدد العناصر أي
يمكنك تغير أبعادها أثناء عمل البرنامج ويعمل أمر الإعلان 88017 عندما ترغب في تحديد حجم المصفوفة
وتظهر الفائدة من أمر الإعلان 8.6017 في استغلال الجزء المطلوب فقط من الذاكرة دون زيادة . وأمر
ا حق قدرها . ولكن من يعلم قد يأني يوم الأيام ونتكلم عن المصفوفات
اء الله
أن أمر الإعلان 8881 لا يستخدم ألا داخل أجراء فقط أي لا يستخدم في قسم الإعلقات مثل الأمر 5117
أمر الاعلان : ©9080 يستخدم لتعريف متغير ستاتيكي 80165165 لهاك ضمن الأجراء مكون مجال رقية
هذا المتغير داخل الأجراء فقط وعمرة من عمر الوحدة التي بداخلها الأجراء سواء كانت الوحدة هذة 6077
أو 0006 أو 0855 أي أن عندما ينتهي الأجراء يظل المتغير ساكن في الذاكرة وكذلك قيمته موجودة
ولكنك لا يمكنك الوصول إلية ألا من داخل الأجراء التابع له.
نصحة زا
حاول أن لا تكثر من استخدام أمر الإعلان ©5810 ألا في أضيق الحدود لأ.ه يستغل الذاكرة طوال فترة
عمل البرنامج
أمر الإعلان : : 111882 يستخدم لتعريف متغير عام 1180180185 66083 ولكنه يكون علي مستوي الوحدة
سواء كانت 20007 أو ملف برمجة 845 أوفقة 0855 والطبع عمرة يكون من عمر الوحدة.
أمر الإعلان ؛ 6/|تنام يستخدم لتعريف متغير عام 1/3085165 60783 ولكنه يكون علي مستوي المشروع
ككل ممكن الوصول إليه من جميع الوحدات الموجودة في المشروع وعمرة من عمر البرنامج ككل ويظل
في الذاكرة حتى ينتهي البرناهج.
أمر الإعلات ؛ (6/009 أمر الإعلان أو الكلمة المحجوزة |6008 كانت تستخدم في الإصدارات القديمة
تستطيع التصريح عنها ألا في الوحدات النمطية فقط.
الإعلان بإضافة رمز مميز :
تستخدم هذه الطريقة في نوع أي متغير وذلك بإضافة حرف معين إلي اسم المتغير و هذه الطريقة
تسهل عليك معرفة نوع المتغير المستخدم مع اسم المتغير و الجدول التالي يبين شكل هذه الأحرف و
النوع المقابل لها
نوع المتغير : 1012983 الرمز المستخدم" 96 "
نوع المتغير : 1009 الرمز المستخدم" .8"
نوع المتغير ؛ 50912 الرمز المستخدم" !"
نوع المتغير ؛ /(0101800 الرمز المستخدم" # "
نوع المتغير ؛ 8اطا00 الرمز المستخدم" © "
نوع المتفير : 50109 الرمز المستخدة" 4"
يعلن عن متغير من نوع ) 50109 سلسة من الحروف (
الإعلان باستخدام الوظيفة : 85
وقنا تفيد الوظيفة 85 في تميز نوع المتغير الذي بأني بعد الوظيفة 85 مع أحد الأوامر .0107 .880107
عزائل0 .011/388 افتاه 6 .518026حيث يتم كتابة الأمر ثم اسم المتغير ثم كتابة الوظيفة 85 ثم كتابة نوع
المتغير . انظر المثال التالي.
فائدة (عن(
أوامر الإعلان السابق ذكرها هي تعتبر ضمن الكلمات المحجوزة مثل الجملة 6(ا50 000000 أو أمر 076
للمتغير أو للثابت
الإعلات باستتكدام أمر تقريف خالةز
في هذة الطريقة يتم استخدام أحد الأوامر التالية
وعند كتابة أي حرف بعد أي من هذه الأوامر تتحول كل المتغيرات التي تبداً بهذه الأحرف إلي نفس النوع
المعلن عنه في الأوامر المستخدم ؛ وفي المثال التالي نستخدم الأمر 00 للإعلان عن جميع المتغيرات
الموجودة في البرامج والتي تبداً بحرف 8 علي إنها من النوع. 101898
م عمل
أما في المثال التالي فيتم الإعلان عن التغيرات الموجوذة في البرامج و التي تبداً بأحد الأحرف التالية 8
لاحظ أنه لا ينبغي كتابة أكثر من حرفين متصلين بدون العلامة ( - ) بعد اله
للإعلان عن أي متغير يبدا بالحرف ( 4) أو بأحد الحروف من (0) إلي () أو من () إلي (2 ) علي
أنه من النوع 000012 اكتب الأمر بالصورة التالية:
المصفوفات هي في حد ذاتها عبارة عن سلسلة من المتغيرات لها نفس الاسم ولكن يكون لها رقم وهنا
تختلف عن المتغيرات بوجود هذا الرقم الذي يوفر لك الوقت و الجهد
إليك توضيح أكثر .. إذا أردت تصميم برنامج لشعون الموظفين بشركتك بدون استخدام المصفوفات وبفرض
أن عدذ الموظفين في شركتك ٠٠١ موظف فان الحل باستخدام المتغيرات العادية يتطلب الإعلان عن
٠ متغير ثم تكرار الأوامر التي تتعامل مع الموظفين الماثة ولا شك أن هذه مسألة شاقة ومطولة
أما الحل الامثل في هذه الحالة فهو استخدام مصفوفة تتكون من ٠٠١ عنصر و الصيغة التي تحقق هذا
كان درسنا السابق عن أنواع المتغيرات وكيفية الإعلان عنها ولكن بقي لنا شى مهم جدا لنعرفه عن
المتغيرات وقو مدي استخدام المتغير وعمرة 1/8856 7ه 2ر560 200 ع010اعانا
مدي استخدام المتغير وعمرة : اطق1يةا أه 56008 صة عتمتاءانا
مقصد بهدي استخدام المتغير 01/808516 50008 والإجراءات و الوحدات النمطية التي ستتأثر به أي
الأماكن التي أن يستخدم فيهاً هذا المتغير داخل البرنامج أما عمر المتغير 18018016 06 80118)ا فيقصد
به المدة التي سيبقي المتغير خلالها محتفظا بقيمته الحالية داخل الذاكرة دون أن يفقدها وتنقسم
المتغيرات من حيث قدة بقائها في الذاكرة ومداها إلي متغيرات عامة ومتغيرات علي مستوي الوحدة
النمطية ومتغيرات علي مستوي الأجراء وفيما يلي نوضح كل نوع من هشنة الأّواع الثلاثة والأمر الذي
يستخدم للإعلان عنه
هي المتغيرات التي يمكنك استخدامها من أي مكان داخل البرنامج أو التطبيق وتبقي في الذاكرة
الحاسب طوال فترة عمل البرنامج فإذا انتهي البرنامج تحذف من الذاكرة ولذلك يجب أن يعلن عن
المتغير العام من خلال الوحدة النمطية لكي تتعرف عليه جميع الإجراءات الموجودة في جميع الوحدات
النعطية بالبرنامج أو التطبيق.
يستخدم الأمر 000118 للإعلان عن المتغيرات العامة في المثال التالي يتم الإعلان عن متغير عام لكي
.2المتغيرات علي مستوي الوحدة النمطية .
بإمكانك الإعلان عن متغير وتقيدة علي مستوي وحدة نمطية في هذه الحالة لن تستطيع استخدام
المتغير إلا من خلال الوحدة النعطية التي أعلنت عنه فيها ولن تستطيع استخدامة خارجها فترة عمل
هذا النوع من المتغيرات هي أيضا فترة عمل البرنامج أي الفرق بينها هين المتغيرات العامة هقوفي
للإعلان عن متغير من هذا النوع استخدم الأمر 8011818 بدلا من الأمر ©1ا5/ا0 في المثال التالي يتم
الإعلان عن متغير من نوع 50109 واسمه 18136 لكي يستخدم فقط مع الوحدة النمطية التي يوجد بها
وهذا الأمر يمكن إدخاله من خلال الأجراء لإدخال الأمر علي مستوي الوحدة النمطية استخدمه
الطريقة التي تستخدمها للإعلان عن المتغير العام مع فارق واحد وهو استخدام أمر 5011/88 بدلا من أمر
عاص
.3متفيرات علي مستوي الأجراء ..
مستوي الوحدة النمطية في مداها فقط حيث لا يتعدى مداها الأجراء الذي أعلن عنها فيه . يستخدم
لهذا الغرض الأمر 518100 ويتضح ذلك من المثالين التالين في المثال الأول يظهر المتغير 51 محتفظا
بقيمته فترة تنفيذ الأجراء 5007 1080 همجرد الخروج من الأجراء ستكون قيمته تساوي صفر بينما في
حالة استخدام المثال الثلي فإن المتغير سيحتفظ بقيمته بعد تنفيذ نفس الأجراء السابق.
المثال الأول
المثال الثاني
فائدة (ه.
يوفر عليك مدي المتغيرات وعمرها استهلاك مساحة من الذاكرة بدون داع فمثلا إذا كنت تريذ استخدام
متفير في أكثر من وحدة نعطية فيجب أن تعلن عنه كمتغير عام بالأمر ©0001 وإذا كنت تحتاج للمتفير
في وحدة نمطية واحدة فقط استخدم الأمر 001/318 للإعلان عنه أما إذا كنت تحتاج للمتغير مؤقتا في
هذا الأجراء فقط استخدم أمر 55808 ليبقي مداه داخل الأجراء فقط
مستويات الإعلان عن المتغيرات ) : هذا الجزء منقول عن موضوع العقل الصناعي : الثوابت و
في القسم العام لملفات البرمجة 00 عام ؛ 0117/808عام , ©951شامل . اقتاها©شامل
داخل إجراءات الملفات 09007 ساكن
داخل إجراءات التوافذ 0107 محلي . 6ل1ها5ساكن
المصطلحات :
-شامل : عام لجميع نوافذ البرنامج وملفاته
-3المحلي والساكن : كلا منهما خاص بالإجراء الذي تم الإعلان داخله
الفرق بين المحلي والساكن :
-المتغير المحلي يفقد قيمته عند الخروج النهائي من الإجراء
-2الساكن يحتفظ بقيمته طوال مدة تشغيل البرنامج
كما ذكرنا من قبل أن الثوابت مثل المتغيرات تماما ألا أنها وكما واضح من اسمها ثابتة أي لايمكن تغير
محتوها أو القيمة المضافة إليها إثناء تنفيذ البرنامج عكس المتغير الذي يمكننا تغير قيمته كما نريد تبعاً
للمدخلات ومع ذلك فالثوابت تتشابه مع المتغيرات في أمين هما اسم الثابت ومذاة
يخضع اسم الثابت لنفس الشروط التي شرحناها عند اختيار اسم المتغير وقي ألا يزيد عدد حروفه عن
0حرفاء وأن يبدأ بحرف هجائي وألا يستخدم إحدى الكلمات المحجوزة للفيجول بيسك.
مدي الثوابت :
تتبع الثوابت نفس القواعد التي تحدد مدي المتغيرات حيث يحدد مدي الثابت بالمكان الذي تعلن فيه عن
تعلن عنه في الوحدة النمطية بشرط أن يسبق الإعلان عنه كلمة 00018 هكذا
عدم متلطدع
ثوابت علي مستوي الوحدة النمطية : لكي تستخدم الثابت في وحدة نمطية فقط يجب أن تعلن
عنه في قسم الإعلانات في هذه الوحدة النمطية تسبقه كلمه 01111818 هكذا
ثوابت علي مستوي الأجراء : : لكي تستخدم الثابت مؤقتا داخل إجراء معين أعلن عن الثابت
داخل هذا الإجراء بنفس الطريقة السابقة
ونكتشف من الكلام السابق أن الثوابت مشابه إلي حد كبير للمتغيرات في طريقة الإعلان عنها بأمر
الإعلان +0005 أو حتى الإعلان عن نوع الثلت لزيادة سرعة التعامل معه وأيضا مجال رؤية الثابت وعمرة.
وللثوابت أنواع منها ثوابت عددية ونوابت حرفيه 58109 وللإعلان عن ثابت حرفي يجب وضعة بين علامتي
الإعلان عن الثوابت) *: هذا الجزء منقول عن موضوع العقل الصناعي ؛ الثوابت و
يتم الإعلان عن الثوابت باستخدام ( 00058 ) أو( 60056 عناطا )
مستوف الإعلان :
-1إذا تم الإعلان داخل إجراء يعتبر الثابت المعلن عنه محليا 600585
+أما إذا تم الإعلان في القسم العام للملف - كما سبق - لكن سبقت كلمة 060058 بكلمة عناطن
فسيصبح الثابت شاملا لجميع ملفات البرنامج ونوافثة
يتم الإعلان عن الثابت الشامل هكذا( 8-5 60056 ع ثاقا0 )
الثوابت و : 81م
منها في برامجنا من التوبع ) الدوال ) و التي يطلق عليها واجهة برمجة التطبيقات 800168801
ولكن عند استخدام هذه التوابع يوجد بعض الثوابت التي يجب تمريرها لهذة التوابع لتقوم بعملها
المطلوب منها علي أكمل وجهه لان الكل يعرف القاعدة الذقبية تقول أن لكل ذالة من ذوال 851 لها
ثولت خاصة بها . أنظر المثالي التالي:
يصرح بهذة الدالة في قسم التصاريج العامة
عهمع
و20 قم (ودمة عم عبرم
اكتب هذا الكود في حدث :010 لل: 6001712008550
(للاعنك_لممقسام طك عمط
الكود السابق هو كود بسيط لعرض رسالة عن طريق توابع ال. 81م
في البداية عملنا علي التصريح بالدالة في قسم التصاريح العامة بأمر الإعلان 601/518 هعد ذلك صرحنا
عن ثابت وهو ثابت معرف مسبقا و موجود في الفيجول بيسك واسم الثابت :18_01 هالطبع لك مطلق
والخطوة الثانية العمل علي تمرير الثابت ليؤدي وظيفته المطلهية منه في حدث 0186 لل
07ان000108008أو في أي حدث تريدة . ووظيفة هذا الثابت هي إظهار الزر موافق 1601:0017 للرسالة
فائدة (
من الممكن الاستغناء عن أمر الإعلان 0011/888 إذا كان الإعلان علي مستوي الوحدة أو الأجراء
عهمع
يؤان نفس الوظيفة
لنا الوقت والجهد وبعد انتهاءنا من المتغيرات والثوابت سنتكلم عن موضوع لايقل أقمية عنهما وهو عن
المعاملات أو عوامل التشغيل. 008188955
وعوامل التشغيل أو المعاملات 008:36065 لها فائدة عظيمة في توفيرها لنا الرقت والجهد مثل
المتغيرات و الثوايت فهي تجعلنا نختزل الكود فستطيع من خلالها المقارنة بين قيمتين أو اكثر أو حتى