تاريخ التسجيل: Apr 2012
الدولة: الرياض
المشاركات: 5,051
خبرة السوق: 1 الى 3 سنوات
معدل تقييم المستوى:
0
رد: (01) Programming Basics (أساسيات البرمجة في MQ4)
المثال في الصورة كود صغير, للتوضيح فقط
نعم اخي هذا احد سببين, والعزل يتم للدوال,
مثلا لديك دالة كثيرة الـ operators (سطور كثيرة) فيلجاون لعزلها في سورس مستقل ويتم استدعاءها في الوقت المناسب,
وايضا هناك سبب آخر,
مثلا انت تبرمج اكسبرت معين,
بعد فترة برمجت اكسبرت اخر, وتفاجات ان احد الدوال فكرتها نفس فكرة دالة استخدمتها في البرنامج السابق,
بعد 3 شهور مررت بنفس الامر,
فلماذا لا نجعلها مثل دوال الحاسبة (cos, tan الخ) , بحيث نكتبها في برنامج مستقل, (خلنا نفترض سطورها 10 او 100)
وعندما نحتاجها مرة اخرى, نستدعيها فقط (انظر للدالة f() في المثال السابق, لمتابعة عدد التكات) -- وصل كونترول البرنامج لها, ثم بحث عنها في البرنامج الاصلي, ولم يجدها, فقال لعلها مضمنة من خلال include وفعلا وجدها, فذهب لها (خرج الكنترول من البرنامج الاصلي) ونفذ اومر وتعليمات تلك الدالة ثم عاد للبرنامج الاصلي, للسطر الذي بعد السطر الذي ورد فيه الدالة f() --- مفهوم الكنترول سيتم توضيحه ان شاء الله (Control Notion) - والذي يتتبع اسطر البرنامج سطرا سطرا حسب ترتيب ورودها في البرنامج او حسب المُنَقِّلات للكنترول مثل if و for و switch الخ
مثلا تخيل ان وظيفة تلك الدالة هي حساب عدد العقود الممكنة عند free margin معين, او معادلة رسم ترند, او حتى الدوال الجاهزة في الميتا تريدر, مثل Macd وغيره, ولو أن الاخيرة لانحتاج الى include (فلو اردت ان تستخدم افكار الماكد ولكن بتصوراتك انت, يعني عندك فكرة تحب تضيفها عليه) تأخذ الماكد وتسميه كبرنامج باسم ثاني, وتعدل فيه, ثم تستدعيه عند الحاجة. (هنا لابد من include)
على كل حال, اجل الحديث عنها لانها فصول متأخرة في الكتاب, وماهنا تمهيد عام من اجل تماسك الافكار فيما بعد