الدرس الثالث في دورة تعلم autoit

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

دعونا نتعرف أولا على ما المقصود بالمتغيرات النظامية

إن للمتغيرات النظامية فوائد كثيرة
فمن خلالها يمكننا التعرف على أمور كثيرة في النظام كمثلا
معرفة إسم المستخدم
الوصول السهل للمجلدات النظامية
معرفة إصدار ونوت النظام المثبت
معرفة الوقت والتاريخ
وغيرها من الأمور الهامة جدا


طبعا عزيزي إلى الآن نحن لا نحتاج إليها لأننا في البداية
لاكن عزيزي إبتداءا من الدرس الرابع سنبدء في إستخدام كل ما تعلمناه تطبيقيا
فعليك عزيزي بالتركيز وأخذ الدروس السابقة على محمل الجد
لأننا سنحتاج إلى كل ما تعلمناه وحتى نتجنب التكرار في الدروس السابقة

ما الفرق بين المتغير النظامي والمتغير العادي؟ وكيف يمكننا إستدعاء المتغير النظامي؟

كما تعرفنا في الدروس السابقة أن المتغيرات في هذه اللغة هي 4 أنواع
ونرمز لها بالرمز $
حيث هو الرمز الذي يعرف المتغير في هذه اللغة.
أما عن المتغيرات النظامية فالأمر مختلف تماما
حيث يوجد نوع واحد من المتغيرات النظامية
وهو يرمز له بعلامة الآت
@
ثم إسم المتغير
حيث هي متغيرات معرفة في اللغة لا يمكننا إنشاء أو تغيير قيمتها
مثال :
لمعرفة إسم المستخدم نقم بإستدعاء المتغير النظامي التالي
@userName
لاحظ هنا عزيزي أننا قمنا بالتعريف أولا بالمتغير النظامي وذالك بإستخدام الرمز المخصص له وهو علامة الآت
@
ثم إسم المتغير الذي قيمته هي إسم المستخدم
وهو
UserName
ويتم إستدعاء كل المتغيرات النظامية بنفس الطريقة

أهم المتغيرات النظامية

1. أهم المتغيرات النظامية التي تعطينا معلومات عن الجهاز أو النظام

المتغير النظامي فائدته
@username معرفة إسم المستخدم الحالي
@computerName معرفة إسم الحاسوب
@CPUArch معرفة إذا كان المعالج الخاص بالحاسوب x64 أو x86
@IPAddress1 لمعرفة رقم المعرف IP
@OSLang معرفة لغة الويندوز المثبت
@OSVersion لمعرفة إصدار الويندوز مثلا “win7”
@OSBuild لمعرفة الإصدار التركيبي للويندوز
@OSArch لمعرفة نوت الويندوز الحالي x64 أو x86

2. أهم المتغيرات التي تعطينا معلومات عن التريخ والوقت

المتغير النظامي فائدته
@hour لمعرفة الساعة الحالية من اليوم, وهو يعمل بنظام 24 ساعة حيث يبدء من 00 إلى 23
@min لمعرفة الدقيقة الحالية من الساعة, حيث يبدء من 00 إلى 59
@@sec لمعرفة الثانية الحالية من الدقيقة, حيث يبدء من 00 إلى 59
@mDay رقم اليوم من الشهر, حيث يبدء من 01 إلى 30 أو 31 حسب الشهر الحالي
@mon لمعرفة الشهر الحالي, حيث يبدء من 00 إلى 12
@wday رقم اليوم في الأسبوع, حيث يبدء من 1 إلى 7 أي من السبت إلى الجمعة
@YDay لمعرفة اليوم الحالي من السنة, حيث يبدء من 001 إلى 365 أو 366, حسب السنة
@year لمعرفة السنة الحالية, مثلا 2018

3. أهم المتغيرات التي تعرفنا على المسارات النظامية المختلفة

المتغير النظامي فائدته
@AppDataCommonDir مسار مجلد program data
@AppDataDir مسار مجلد appdata
@CommonFilesDir مسار مجلد Common Files
@DesktopCommonDir مسار سطح المكتب العام
@DesktopDir مسار سطح المكتب للمستخدم الحالي
@DocumentsCommonDir مسار المستندات العام
@MyDocumentsDir مسار مجلد مستنداتي
@FavoritesCommonDir مسار المفضلة العام
@FavoritesDir مسار المفضلة الخاصة بالمستخدم الحالي
@HomeDrive مسار القرس النظامي
@LocalAppDataDir مسار مجلد local
@ProgramFilesDir مسار مجلد program files في نظام 32, أو program files (x86) في نظام 64
@ProgramsCommonDir مسار مجلد البرامج التي تجدها في قائمة إبدء, (المسار العام)
@ProgramsDir مسار مجلد البرامج الموجود في قائمة إبدء (المسار الخاص بالمستخدم الحالي فقط)
@StartMenuCommonDir مجلد قائمة إبدء العام
@StartMenuDir مجلد قائمة إبدء الخاص بالمستخدم الحالي فقط
@StartupCommonDir مجلد بدء التشغيل العام
@StartupDir مجلد بدء التشغيل الخاص باللمستخدم الحالي فقط
@SystemDir مسار مجلد system32
@TempDir مسار مجلد الملفات المؤقتة
@UserProfileDir مسار مجلد المستخدم الحالي
@WindowsDir مسار مجلد windows

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

خاتمة :

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

ملاحظة :
الدرس الرابع سوف يكن متوفر قريبا على هذا الرابط
رابط الدرس الرابع
ومسك الختام السلام
فالسلام عليكم ورحمة الله تعالى وبركاته

مقدمة في لغات البرمجة

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

تعريف البرمجة

من الممكن تعريف البرمجة بأنها عملية كتابة تعليمات وأوامر لجهاز الحاسوب أو أي جهاز آخر، لتوجيهه وإعلامه بكيفية التعامل مع البيانات أو كيفية تنفيذ سلسلة من الأعمال المطلوبة.

تتبع عملية البرمجة قواعد خاصة باللغة التي اختارها المبرمج.

كل لغة لها خصائصها التي تميزها عن الأخرى وتجعلها مناسبة بدرجات متفاوتة لكل نوع من أنواع البرامج والمهمة المطلوبة من هذا البرنامج.

كما أن للغات البرمجة أيضاً خصائص مشتركة وحدود مشتركة بحكم أن كل هذه اللغات صممت للتعامل مع الحاسوب.

وتتطور لغات البرمجة (البرمجيات Software) بتطور الحاسوب (الهاردوير Hardware). فعندما ابتكر الحاسوب الإلكتروني في الأربعينيات والخمسينيات من القرن الماضي (بعد أجهزة الحساب الكهربائية في العشرينات)- وكان الكمبيوتر يعمل بأعداد كبيرة من الصمامات الإلكترونية – كانت لغة البرمجة معقدة هي الأخرى، وكانت عبارة عن سلسلة من الأعداد وتكتب على شكل اكواد برمجية طويلة هذي الاعداد هي الرقمين الصفر 0 والواحد 1 ، وكان ذلك صعبا على المبرمجين. ولكن بابتكار الترانزيستور صغر حجم الحاسوب كثيرا وزادت إمكانياته، واستطاع المختصون والمبرمجون في نفس الوقت أن يبتكروا لغات برمجة أسهل للاستخدام، وأصبحت لغات البرمجة مفهومة إلى حد بعيد للمختصين. ولا يزال التطوير والتسهيل قائماً.

خصائص لغات البرمجة

لغة البرمجة هي بالأساس طريقة تسهل للمبرمج كتابة برنامجه في هيئة تعليمات وأوامر يفهمها الحاسوب بغرض تنفيذ العمل المطلوب. ومن المعروف ان الحاسوب يحول اللغة المكتوبة بها البرمجة إلى سلسلة من 0 و 1، ويبدأ على أساسها عمله. ولكتابة الأوامر، توفر لغة البرمجة المختارة مجموعة من الأمور الأساسية للاستناد إليها أثناء عملية تكوين البرنامج ومجموعة من القواعد التي تمكن من التعامل مع معلومات وتنظيمها بغرض أداء العمل المطلوب.

تتمثل هذه الأسس والقواعد بصفة عامة في:

المعلومات وتخزينها
الأوامر وتنظيم سيرها
التصميم الخاص

المعلومات وتخزينها

يتم تخزين المعلومات في الأجهزة الرقمية الحالية في هيئة أرقام طبقا لنظام العد الثنائي (أي المعتمد على 0 و 1). و بصفة عامة فان المعالجات الحديثة لا تقوم بالتعامل مع البت الواحد بل مع مجموعات من البتات يمكن أن تضم :

8 بت = 1 بايت وهي أصغر وحدة تخزين معلومات في الحواسيب الحديثة
16، 32، 64، 128، 256، أو 512 بت

وباستعمال 8 بت مثلا، يمكن تشكيل 256 قيمة مختلفة، ويمكن أن تكون هذه القيمة بين 0 و 255 وتمثل وظيفة لغة البرمجة استغلال وحدة أو مجموعة من الوحدات (رموزا) لتخزين معلومات من الحياة الواقعية مثل الأسماء أو القياسات أو أرقام الحسابات البنكية.

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

تمكن اللغة أيضاً من إجراء عملية اختيار وتفرع، وذلك بإدخال شرط منطقي يقوم الحاسوب على أساسه باختيار اتجاه الاستمرار في أداء العمل: فلنفترض أن البرنامج الذي يريد المبرمج صنعه يقوم بقسمة عددين يختارهما المستخدم، وإظهار النتيجة على الشاشة، ومن المعروف أن القسمة على صفر لا تجوز، وبناء علي ذلك فلا بد أن يحدد المبرمج في برنامجه هذا الاختيار : فاذا كان القاسم مخالفا للصفر، فإن البرنامج يسيـّر الحاسوب فيقوم بإجراء العملية ويعطي النتيجة. أما إذا كان القاسم صفراً فان البرنامج لا يقوم باجراء العملية وإنما ينبه إلى أن المستخدم حاول القسمة على صفر. و يمكن تنظيم الأوامر بصفة أخرى، حيث يقع تنفيذ أمر أو مجموعة من الأوامر بصفة متكررة حلقية (Loop)، و يمكن تقسيم الأوامر أيضاً إلى وحدات فرعية تقوم كل وحدة بانجاز عمل محدد، والهدف هو تقسيم العمل إلى أجزاء يسهل العمل عليها كل على حدة في هيئة دورات حلقية (Loops).

التصميم الخاص

تتمتع كل لغة بتصميم خاص من حيث التعامل مع المعطيات، ومن حيث الطرق والتسهيلات التي توفرها اللغة للتعامل مع مشكلة معينة.

يمكن تصنيف لغات البرمجة من حيث طريقة بناء البرامج إلى لغات إجرائية (Basic، Fortran) وهي لغات تسلسلية، أساس بناؤها هو الإجراءات المطلوب تطبيقها على المعطيات والمتحولات. ولغات شيئية (C، Java، Delphi) وهي لاتسلسلية، وتقوم على أساس العناصر والمتحولات المستخدمة ضمن البرنامج المطلوب تحويلها، من خلال تطبيق مجموعة معينة من الإجراءات عليها.

أمثلة على لغات البرمجة للحاسوب متدنية المستوى :

  • لغة الآلة (Machine Language).
  • لغة التجميع (Assembly Language).
  • لغة الbat
  • لغة vbs

أمثلة لبعض لغات البرمجة للحاسوب عالية المستوى:

  • c
  • c++
  • c (#)
  • java
  • Python
  • AutoIt3
  • php
  • sql

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