ما المقصود بواجهة برمجة التطبيقات API وكيف يستخدمها المطورون؟

من المحتمل أنك رأيت مصطلح API في مكان ما. غالباً ما يعلن نظام التشغيل ومتصفح الويب وتحديثات التطبيقات عن واجهات برمجة تطبيقات جديدة للمطورين.

ولكن ما هي واجهة برمجة التطبيقات وكيف يستخدمها المطورون؟

ما هي واجهة برمجة التطبيقات؟

مصطلح API هو اختصار، يشير إلى واجهة برمجة التطبيقات Application Programming Interface.

فكر في واجهة برمجة تطبيقات مثل قائمة طعام في مطعم. توفر القائمة مجموعة من الأطباق التي يمكنك طلبها، إلى جانب وصف كل طبق.

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

وبالمثل، تسرد واجهة برمجة التطبيقات مجموعة من العمليات التي يمكن للمطورين استخدامها، إلى جانب وصف لما يفعلونه.

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

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

لكنها دقيقة بشكل عام. تسمح واجهات برمجة التطبيقات للمطورين بتوفير الوقت من خلال الاستفادة من تطبيق النظام الأساسي للقيام بالأعمال الجوهرية.

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

واجهات برمجة التطبيقات تجعل حياة المطورين أسهل:

لنفترض أنك تريد تطوير تطبيق لجهاز آيفون iPhone. يوفر نظام التشغيل iOS من آبل Apple عدداً كبيراً من واجهات برمجة التطبيقات (كما يفعل أي نظام تشغيل آخر) لتسهيل ذلك عليك.

إذا كنت ترغب في تضمين متصفح ويب لإظهار صفحة ويب واحدة أو أكثر على سبيل المثال، فلن تضطر إلى برمجة متصفح الويب من البداية لتطبيقك فقط. يمكنك استخدام WKWebView API لتضمين كائن متصفح WebKit (Safari) في تطبيقك.

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

إذا لم تكن واجهات برمجة التطبيقات (API) موجودة لتسهيل ذلك، فسيتعين على مطوري التطبيقات إنشاء برامج الكاميرا وتفسير مدخلات أجهزة الكاميرا.

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

وعندما تقوم آبل Apple بتحسين واجهة برمجة تطبيقات الكاميرا، ستستفيد جميع التطبيقات التي تعتمد عليها من هذا التحسين تلقائياً.

هذا ينطبق على كل منصة. على سبيل المثال، هل تريد إنشاء مربع حوار على ويندوز Windows؟ هناك API لذلك. هل تريد دعم مصادقة بصمات الأصابع على أندرويد Android؟ هناك واجهة برمجة تطبيقات لذلك أيضاً.

لذا لن تضطر إلى اختبار مستشعر بصمات الأصابع الخاص في كل مرة في نظام أندرويد Android. لا يتعين على المطورين إعادة اختراع العجلة مراراً وتكراراً.

تتحكم واجهات برمجة التطبيقات في الوصول إلى الموارد:

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

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

تعرض مستعرضات الويب واجهات برمجة تطبيقات مثل هذه لتسهيل وصول مطوري الويب إلى موقعك (يمكنهم فقط أن يسألوا “أين أنت؟”) ويقوم المتصفح بالعمل الشاق للوصول إلى GPS أو شبكات واي فاي Wi-Fi القريبة للعثور على موقعك الفعلي.

ومع ذلك، تعرض المتصفحات أيضاً هذه المعلومات عبر واجهة برمجة التطبيقات لأنه من الممكن التحكم في الوصول إليها.

عندما يريد أحد مواقع الويب الوصول إلى موقعك الفعلي بالضبط، فإن الطريقة الوحيدة للحصول عليه هي عبر واجهة برمجة تطبيقات الموقع.

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

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

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

أنظمة الملفات التي تستخدم الأذونات، كما هو الحال في أنظمة التشغيل ويندوز Windows وماك Mac ولينكس Linux، يتم فرض هذه الأذونات من خلال واجهة برمجة تطبيقات نظام الملفات.

لا يمتلك التطبيق النموذجي وصولاً مباشراً إلى القرص الثابت المادي الخام. بدلاً من ذلك، يجب أن يصل التطبيق إلى الملفات من خلال واجهة برمجة التطبيقات.

يتم استخدام واجهات برمجة التطبيقات للاتصال بين الخدمات:

يتم استخدام واجهات برمجة التطبيقات لجميع أنواع الأسباب الأخرى أيضاً. على سبيل المثال، إذا سبق لك أن رأيت كائن خرائط جوجل Google مضمناً على موقع ويب، فإن هذا الموقع يستخدم واجهة برمجة تطبيقات خرائط جوجل Google لتضمين تلك الخريطة.

تعرض جوجل Google واجهات برمجة التطبيقات لمطوري الويب، الذين يمكنهم بعد ذلك استخدام واجهات برمجة التطبيقات لوضع الكائنات المعقدة مباشرة على موقع الويب.

إذا لم تكن واجهات برمجة التطبيقات موجودة، فقد يتعين على المطورين إنشاء خرائطهم الخاصة وتقديم بيانات الخرائط الخاصة بهم فقط لوضع خريطة تفاعلية صغيرة على موقع ويب.

ونظراً لكونها واجهة برمجة تطبيقات، يمكن لـ جوجل Google التحكم في الوصول إلى خرائط جوجل Google على مواقع الويب التابعة لجهات خارجية، مما يضمن استخدامها بطريقة متسقة بدلاً من محاولة تضمين إطار يعرض موقع خرائط جوجل Google على الويب، على سبيل المثال.

هذا ينطبق على العديد من الخدمات المختلفة عبر الإنترنت. توجد واجهات برمجة تطبيقات لطلب ترجمة نصية من موقع ترجمة جوجل Google، أو تضمين تعليقات فيسبوك Facebook أو تغريدات من تويتر Twitter على موقع ويب.

يحدد معيار OAuth أيضاً عدداً من واجهات برمجة التطبيقات التي تسمح لك بتسجيل الدخول إلى موقع ويب باستخدام خدمة أخرى.

على سبيل المثال، لاستخدام حسابات فيسبوك Facebook أو جوجل Google أو تويتر Twitter لتسجيل الدخول إلى موقع ويب جديد دون إنشاء حساب مستخدم جديد لهذا الموقع فقط.

واجهات برمجة التطبيقات (API) هي عقود قياسية تحدد كيفية تواصل المطورين مع الخدمة، ونوع المخرجات التي يتوقع هؤلاء المطورون تلقيها مرة أخرى.

إلى هنا تكون لديك فكرة أفضل عن ماهية واجهة برمجة التطبيقات. في النهاية، لا تحتاج حقاً إلى معرفة ماهية واجهة برمجة التطبيقات إلا إذا كنت مطوراً.

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

مقالات قد تعجبك:

ما هي لغة الترميز Markup Language؟
ما هو NAS التخزين المتصل (الملحق) بالشبكة؟
ما هي شاشة سوبر أموليد Super AMOLED؟
كيفية استخدام تطبيقين جنباً إلى جنب على أندرويد
ما الميزات والتحديثات الجديدة في فيجوال ستوديو Visual Studio 2022؟

كيفية تجميع وتنظيم جميع ألعاب الكمبيوتر داخل برنامج واحد

مجموعات الألعاب المتنوعة لديك سواء ألعاب ROM ، ألعاب Steam ، و ألعاب ويندوز Windows الأخرى ، ومختلف الألعاب التي تفضلها. ألن يكون من المنطقي تشغيلها كلها من نفس المكان؟

هذه هي الفكرة وراء برنامج Launchbox ، وهو برنامج مجاني يمكنه تشغيل ملفات ROM مع أي محاكي Emulator، وتشغيل ألعاب DOS باستخدام محاكي DOSBox ، إضافة إلى تشغيل الكثير من ألعاب الكمبيوتر الشخصي.

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

بالطبع هنالك العديد من البرامج التي تمنحك واجهة واحدة لمحاكاة أي شيء يمكنه تخيله، مثل برنامج RetroArch، و لكنه يبقى نظاماً مفصولاً عن بقية مجموعة ألعابك، و هذا ما يميز برنامج Launchbox الذي يضع ملفات ROMs إلى جانب جميع الألعاب الأخرى على نظامك. إليك كيفية إعداده.

قد ترغب في مراجعة مقالينا لتنتقي الألعاب: أفضل ألعاب المغامرات لجميع الحواسيب و أفضل الألعاب الكلاسيكية لجميع الحواسيب

كيفية تنصيب وإعداد برنامج Launchbox

يعد تثبيت برنامج Launchbox أمراً بسيطاً: انتقل إلى الموقع الرئيسي ل Launchbox واتبع الأوامر. لاحظ أنك ستحتاج إلى عنوان بريد إلكتروني Email للحصول على رابط التنزيل ، ثم المتابعة بعملية التثبيت المعتادة كما مع أي برنامج آخر على نظام ويندوز Windows.

في المرة الأولى التي تشغّل فيها البرنامج ، سترى معالج Wizard يساعدك في مراحل التثبيت.

ننبهك انه في هذه المرحلة ، غالباً لن يعمل استيراد ألعاب Steam ، على الرغم من إدراجه ضمن الخيارات.

كيفية إضافة ألعاب Steam إلى Launchbox

لإضافة ألعاب Steam إلى Launchbox ، ستحتاج إلى عدة معلومات قبل البدء في استيراد الألعاب. أول شيء ستحتاج إليه هو مفتاح Steam API Key الخاص بك.

والسبب في ذلك هو قيام Steam بتغيير الطريقة التي تعمل بها الأشياء مؤخراً ، حيث لم يعد مفتاح واجهة برمجة التطبيقات API key الذي ينتمي إلى صانعي Launchbox يعمل لمستخدمي Launchbox.

والخبر السار هو أن الحصول على مفتاح API Key الخاص بك هو أمر بسيط للغاية. توجه إلى صفحة Steam لتسجيل مفتاح واجهة برمجة تطبيقات الويب Web API key (وقم بتسجيل الدخول إلى Steam إذا لم تكن قد قمت بذلك بالفعل).

يطلب منك الموقع إدخال رابط URL لموقعك على الويب. إذا كان لديك موقع ويب ، فيمكنك إدخاله ، ولكن يمكنك أيضاً كتابة أي موقع ويب عشوائي للحصول على مفتاح  API key. انسخ مفتاح API هذا ، لأنك ستحتاج إليه بعد قليل.

الشيء التالي الذي ستحتاج إليه هو معرف ستيم Steam ID الخاص بك. أسهل طريقة للعثور على ذلك هي تسجيل الدخول إلى Steam (موقع الويب أو عميل ستيم Steam client) ، والتوجه إلى صفحة ملفك الشخصي Profile. ألقِ نظرة على الرابط URL في أعلى الصفحة ، والجزء الأخير منه هو Steam ID  الخاص بك.

باستخدام هذه المعلومات ، أنت الآن على استعداد لاستيراد ألعاب Steam إلى Launchbox. في Launchbox ، توجه إلى الأدوات Tools – استيراد  Import– ألعاب ستيم  Steam Games.

أول شيء يطلب منك هو ملء جزء معرف المستخدم User ID في ملف تعريف ستيم الخاص بك. Steam profile، قم بإدخاله ، ثم اضغط على زر التالي  Next.

بعد ذلك ، ستتم مطالبتك بمفتاح واجهة برمجة التطبيقات API key ، لذلك امض قدماً والصقه في المربع ، ثم اضغط على زر التالي Next.

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

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

ولكن إذا انتقلت إلى الأسفل ، يمكنك إلغاء تحديد خيارات مقطع الفيديو الدعائي trailer وخيارات ثيم الفيديو Theme video options للتسريع من عملية التنزيل. انقر على زر التالي  Next  بعد تحديد اختياراتك.

سيقوم Launchbox بعد ذلك بفحص مكتبة Steam الخاصة بك وعرض ألعابك. تتضمن القائمة جميع ألعاب Steam الموجودة لديك، سواء كنت قد قمت بتركيبها حالياً أم لا.

إذا رأيت أي ألعاب لا تريد إضافتها إلى Launchbox ، فحددها ثم اضغط على المفتاح Delete لإزالتها من القائمة. عندما تكون مستعداً ، انقر على إنهاء  Finish لبدء استيراد ألعابك.

يمكن أن يستغرق استيراد لعبتك بعض الوقت. يعتمد مقدار ذلك على عدد الألعاب ومقدار تعقيد التصميم  وحجم الفيديو الذي تستورده لكل لعبة. لذلك فقط دعها تعمل لفترة من الوقت. عند الانتهاء، ستتم إضافة ألعاب Steam إلى مجموعة الألعاب في Launchbox.

إضافة ألعاب Windows إلى Launchbox

إذا كنت قد حصلت على عدد من ألعاب ويندوز Windows المثبتة ، فيمكن لبرنامج Launchbox فحص جهاز الكمبيوتر الخاص بك وإضافتها تلقائياً. للبدء ، اختر زر Windows في معالج الإطلاق Launch wizard.

إذا اغفلت ذلك في البداية ، توجه إلى الأدوات Tools – استيراد Import – ألعاب ويندوز  Windows Games في البرنامج الرئيسي.

تقوم الأداة بمسح جهازك الكمبيوتر والبحث عن أكبر عدد ممكن من الألعاب ، بما في ذلك أي تثبيت باستخدام Origin أو GOG.

كان ذلك سهلاً ، أليس كذلك؟ انقر على إنهاء  Finish، و سيقوم Launchbox بتنزيل التصميم الخاص بهذه الألعاب ويستورد كل شيء.

إضافة ملفات ROMs إلى Launchbox

السحر الحقيقي هنا هو إضافة مجموعة ملفات ROM الخاصة بك. للبدء ، انقر فوق استيراد ملفات روم  Import ROM Files على المعالج أو توجه إلى الأدوات Tools – استيراد  Import – ملفات روم  ROM Files في البرنامج الرئيسي. للبدء ، ثم دل LaunchBox نحو المجلدات التي تحتوي على ملفات ROM فيها.

بعد ذلك ، أخبر Launchbox أي نظام أو بيئة ستشغل ملفات ROMs التي حددتها.

أخيراً ، دل Launchbox على أي محاكي Emulator تريد استخدامه لتشغيل اللعبة. ننصحك بإعداد Retroarch ، لأنه بهذه الطريقة سوف تحتاج إلى تهيئة كل شيء مرة واحدة  فقط، ولكن باستخدام Launchbox ، يمكنك أيضاً استخدام محاكي منفصل لكل نظام أساسي. الأمر متروك لك تماماً.

عندما تنتهي من ذلك ، يقوم برنامج Launchbox بفحص المجلدات ويعرض لك كل ملفات ROM التي وجدها. ثم يقوم بتنزيل الغلاف والتوصيفات.

يمكنك القيام بالمثل بالنسبة لألعاب DOS ، لكنك ستحتاج إلى قراءة و  إعداد محاكي DOSBox للعب الألعاب القديمة قبل الغوص في ذلك.

إضافة ألعاب فردية

إذا لم يظهر ملف ROM أو اللعبة في مجموعتك ، فلا تقلق. يمكنك إضافة العناوين كل على حدة. ما عليك سوى النقر فوق الزر إضافة  Add في أسفل اليمين وسوف تظهر لك نافذة.

هنا يمكنك كتابة التفاصيل الخاصة بك لأي لعبة ، بما في ذلك الاسم وحيث يمكن العثور على الملف التنفيذي أو ملف ROM. يمكن أن يكون الأمر مزعجاً ، ولكن إذا فوتت المعالجات المتعددة لعبة ، فهذا هو خيارك الوحيد. معظم الألعاب ، حتى ملفات ROM المهكرة،  تم العثور عليها في اختباراتنا ، ولكن لا يزال من الجيد الحصول على هذا الخيار.

تصفح مجموعة الألعاب

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

يمكنك تصفح الألعاب باستخدام مفاتيح الأسهم أو بالماوس. يمكنك أيضاً فتح لوحة للاطلاع على مزيد من المعلومات عن الألعاب، بما في ذلك التقييمات والأوصاف.

إنها واجهة تفصيلية ، لذا استغرق بعض الوقت لاستكشافها.

اختياري: Big Box Multi-Menu

بالنسبة لمعظم مستخدمي الكمبيوتر ، تعمل الواجهة الأساسية بشكل مثالي. ولكن إذا كنت تريد تصفح جهاز الكمبيوتر باستخدام وحدة تحكم controller وأنت تجلس على أريكتك، فهناك واجهة أخرى لك وهي: Big Box.

هذه الميزة ، التي يتم عرضها فقط في حالة شراء حساب Launchbox Premium بقيمة 20$ ، تقدم جميع أنواع التخصيصات والرسوم المتحركة

إذا كنت تحب ذلك ، فكر في الدفع مقابل الترقية.

مقالات قد تعجبك:

كيفية تحسين عدد الإطارات في الثانية FPS في الألعاب
كيفية تحسين دقة الإصابة في ألعاب الكمبيوتر
أفضل لوحات المفاتيح الميكانيكة لمختلف الميزانيات
أفضل أدوات زيادة المآخذ لمختلف الحواسيب
كيفية ضبط إعدادات الرسوميات لألعاب الكومبيوتر بسهولة
أهم ميزات جهاز PlayStation 4 وكيفية استخدامه