البرمجة باستخدام أي لغة من اللغات البرمجية (Programming Languages) الموجهة للعمل على أنظمة التشغيل ويندوز (Windows Operating System) تتمثل في القدرة على أنشاء الواجهات الرسومية التطبيقية والتي تسهل عمل المستخدمين لهذه التطبيقات وهو ما يسمى بـ Graphical User Interface. أن الـ GUI (Graphical User Interface) تمثل التفاعل من النصوص البرمجية المكتوبة داخل التطبيق البرمجي Programming Application وتضفي على التطبيق البرمجي المزيد من التفاعلية والبساطة ومتعة تعامل المستخدم معها.
لذا نجد أن التطبيقات الموجهة للعمل على أنظمة الدوس (Console application for MSdos) كانت تواجه صعوبات في التعامل مع شاشة سوداء. حيث كانت البرمجة تعتمد على دوال بدائية نصية توجه بأشكال مختلفة لبناء قوائم وأزرار ترسم بواسطتها، وسميت الواجهات البينية للتطبيقات التي ترسم بواسطة هذه الدوال بـ Textual User Interface.
أن البرمجة الموجهة لأنظمة التشغيل دوس كانت تواجه صعوبات حيث لم يكن الأمر بالسهل، ولم يكن في متناول أيدي كل المبرمجين. حتى جاءتنا حيث التفاعل والواجهات الرسومية، حيث مجموعة من النوافذ التي تعرض في آن واحد وعلى شاشة واحدة! وباستطاعة المستخدم التنقل بين النوافذ المفتوحة بأريحية وبساطة.
السؤال كيف يمكن مثل ذلك تحت نظام التشغيل دوس (الشاشة السوداء)؟ إنه لأمر مستحيل أن تعتمد على نفس الوسائل للحصول على نتيجة لا يمكن مقارنتها. عندها قامت Microsoft بتطوير الوسيط لبرمجة هذه التطبيقات، يقوم هذا الوسيط بالعمل بدلا عنك. أنه الـ API.
ما هو الـ API:
هو مختصر Application Program Interface، وتعني الوصلة البينية البرمجية التطبيقية. وهي واجهة interface بينية تتيح للبرامج التطبيقية بالتحاكي مع نظام التشغيل وأدوات أخرى يزودها النظام عند أنشاء تطبيقات برامجية على النظام، فنحن نستخدم الـ API لأرسال رسائل، بيانات مطلوبة، كتابة بيانات، عرض عنApplication Program InterfaceApplication Program Interfaceاصر على الشاشة، أو لينفذ لنا نظام التشغيل مجموعة من الأوامر الموجه له.
أذا الـ API مهمة جداً للمبرمجين في بناء الواجهات التطبيقية الرسومية الحديثة، حيث يسهل عليهم بنائها وتنفيذ العديد من الأوامر المعقدة والمركبة.
الفرق ما بين Operating System و API windows؟
الـ :Operating System هو المستوى الأدنى للبرامج والذي يدير الواجهات البينية للأجهزة الطرفية، ينفذ المهام ..الخ ويمكن أن نجده على أقراص مرنة أو على أقراص مدمجة..الخ.
الـ API windows: فهي مجموعة من الدوال التي تستدعيها التطبيقات أثناء تنفيذها على أنظمة التشغيل. في نظام التشغيل UNIX هذا النظام مثلاً يملك API واحدة، بينما نظام التشغيل ويندوز يملك العديد من APIs.
كيف ينم التعامل مع الـ API؟
الـ API تتجسد في الحقيقة وهي موجودة على شكل ملفات مخزنة في مسار خاص ضمن نظام التشغيل ويندوز وتكون مجتمعة معظمها في (C:\windows\system(32. أن مكونات API windows الأساسية هي kernel وGDI وUSER. ففي win16 تتجسد في ملفات Kernel.exe (kernel286.exe وkernel386.exe حسب نظام التصرف مع الذاكرة) وملف user.exe وgdi.exe. رغم أن هذه الملفات تحمل الامتداد exe.* ألا أنها عبارة عن ملفات ربط ديناميكي (والتي عادة ما تحمل الامتداد dll.* ألا أن هذا الامتداد لم يكن معروفا في windows 3.x).
ولأجل التوافق مع الإصدارات المتتالية لنظام التشغيل ويندوز، حافظت هذه الملفات على تسميتها في win32 مع اختلاف بسيط في الاسم بالنسبة لنظيراتها السابقة في win16 وهي : kernel32.dll وgdi32.dll وuser32.dll.
أذا ملفات API هي ملفات ربط ديناميكية يسهل استدعائها في نفس الوقت وأن كان من قبل مجموعة كبيرة من التطبيقات. والـ API هي دوال كثيرة ومن الصعب الإلمام بها كلها، ألا أن من المستحسن لكل مبرمج للتطبيقات التي تعمل على نظام التشغيل ويندوز التعرف على ميزاتها وطرق استدعائها ومفاهيم البرمجة بواسطتها.
فمهما كانت بيئة التطوير (Integrated Development Environment) التي تستعملها أو لغة البرمجة (Programming Language) التي تتعامل معها التطبيقات التي تعمل عليها، فمعرفتها ضرورية ومهمة وفي حين أخر تبقى الوسيلة الوحيدة للحصول على النتائج المبتغاة.
سنتكلم فيما بعد عن kernel و GDI و USER ...
تمنياتنا لكم بالتوفيق ...