واجهة المستخدم تعريفها وأنواعها ولماذا نتعلم البرمجة بإستخدام تطبيقات الكونسل
مشاهدة فيديو الشرح:
تعريف الـ Interface:
هو وسيلة للتواصل بين المستخدم (User) والحهاز الإلكتروني (Electronic device)
أنواع الـ User Interface:
هناك عدة أنواع لواجهات المستخدم سنعرض منها 5 أنواع رئيسية وهى:
- واجهة سطر الأوامر Command line Interface (CLI)
- واجهة المستخدم الرسومية Graphical user interface (GUI)
- Menu driven (MDI)
- Form based (FBI)
- Natural language (NLI)
واجهة سطر الأوامر Command line Interface (CLI):
هي الواجهة بين الإنسان والآلة أين يتم الاتصال بين المستخدم والحاسوب بأخذ صيغ نصية
المستخدم ينقر على لوحة مفاتيح ليطلب من الحاسوب أداء عمليات مختلفة
الحاسوب يعرض نص كنتيجة لتنفيذ الأوامر المطلوبة أو المسائل التي يعرضها برنامج ما على المستخدم.
إن واجهة سطر الأوامر يمكن استخدامها سواء للبدء في تنفيذ مختلف البرمجيات باستخدام مترجم أوامر،
ولإجراء حوارات مع المستخدم لهذه البرامج.
وقد استخدمها نظام MS DOS فى الثمانينات وحاليا تسخدم فى الأنظمة كخيار إضافى للتحكم وذلك لقوتها مثل
command prompt فى الويندوز
=> جرب تشغيل الـ Command Prompt الخاصة بك إذا كنت تعمل على ويندوز 10 وقم بإدخال هذا الأمر start
msedge وشاركنا بماذا حدث فى التعليقات
واجهة المستخدم الرسومية Graphical user interface (GUI):
واجهة المستخدم الرسومية (بالإنجليزية: Graphical User Interface أو اختصاراً GUI): تشكل واجهة مستخدم
تؤمن للمستخدم التفاعل مع الحاسب باستخدام أغراض وصور رسومية غالباً ما تتكون من عناصر التحكم والنوافذ
وقوائم منبثقة إضافة لنصوص توجه المستخدم لاستخدام أحداث مخصصة مثل النقر على الفأرة لإضافة وإدخال نصوص
ليقوم الحاسب بما يريد المستخدم. جميع الأفعال والمهام التي يمكن للحاسب تنفيذها تتم عن طريق التطبيق
المباشر لأحداث على العناصر الرسومية (عناصر التحكم).
واجهة اللغة الطبيعية Natural language (NLI) :
هذه الواجهة تستخدم الصوت فى التعامل مع البرنامج ولها القدرة على فهم اللغة الطبيعية للبشر
وأمثلة على ذلك Siri, Google Assistant, MS Cortana, Alexa
لماذا نتجه لتطوير تطبيقات تعتمد على واجهة الأوامر النصية فى بداية تعلمنا للبرمجة ؟
الإجابة بإختصار هى للتركيز على اللغة
البرمجية التى نستعملها للتطوير وأيضا على مفاهيم البرمجة والخوارزميات والبرمجة الشيئة وهيكلة
البيانات وعدم الركيز على تصميم واجهة رسومية والتى تحتاج منك لدراسة أدوات التحكم وخصائص كل أداة
وأيضا التخطيط والكثير من المتطلبات الأخرى أما فى وجاهة الأوامر النصية ما عليك سوى تعلم كيفية أخذ
المدخلات من شاشة الكونسل وكيفية إخراج المخرجات على شاشة الكونسل
وهذه إجابة أحد الخبراء على موقع Qoura :