الفرق بين API وLibrary وSDK: كيف يتواصل التطبيق مع الجهاز؟
API vs Library vs SDK
الجواب المختصر
API نقطة تواصل بين التطبيق ونظام التشغيل أو بين تطبيقين، تشبه طاقم الخدمة في مطعم: لا تدخل المطبخ بنفسك بل تطلب من الطاقم. والمكتبة (Library) مجموعة أكواد جاهزة يستخدمها المطوّر دون كتابتها من الصفر، وSDK حزمة شاملة تضم الأدوات والمكتبات والوثائق والمحاكيات تقدمها شركة نظام التشغيل. وهذه الطبقات تنظّم عمل التطبيق وتمنع وصوله إلى معلوماتك دون إذنك.
شرح مفصّل
التطبيق لا يعمل بمعزل عن الجهاز، بل يتواصل معه عبر طبقات تقنية منظمة تضمن الأمان وتمنع وصول التطبيقات إلى معلوماتك دون إذنك. API نقطة تواصل بين التطبيق ونظام التشغيل أو بين تطبيقين: تشبه طاقم الخدمة في مطعم، لا تدخل المطبخ بنفسك بل تطلب من الطاقم. المكتبة (Library) مجموعة أكواد جاهزة يستخدمها المطور مباشرة دون كتابتها من الصفر. SDK حزمة شاملة تضم الأدوات والمكتبات والوثائق والمحاكيات تقدمها شركة نظام التشغيل (Android SDK من Google، iOS SDK من Apple).
| API | Library | SDK | |
|---|---|---|---|
| ما هو؟ | واجهة تواصل بين التطبيق والنظام أو بين تطبيقين | مجموعة أكواد جاهزة مسبقًا | حزمة شاملة: أدوات + مكتبات + وثائق + محاكيات |
| مثال | API الكاميرا لفتح الكاميرا والتقاط الصور؛ API الموقع لإحداثيات GPS؛ API الإشعارات؛ API الطقس لدرجة الحرارة | مكتبة خرائط تضيف خريطة تفاعلية بأسطر قليلة | Android SDK من Google، iOS SDK من Apple |
| تشبيه | طاقم الخدمة في المطعم | صورة مفصلة لجسر تقلّده بدل التصميم من الصفر | كل ما تحتاجه للبناء في حزمة واحدة |
وهكذا يمر الوصول إلى الكاميرا أو الميكروفون أو الموقع عبر API تحت رقابة نظام التشغيل، وتخضع لإذن المستخدم (الأذونات). وهذه الأدوات من متطلبات التطوير (مراحل التطوير ومتطلبات التشغيل والتطوير). وللتعامل مع الواجهات في سياق البيانات: APIs وJSON.
أين تظهر في المشروع؟
عند بناء تطبيق خرائط مثلًا: يستعمل المطور SDK الخاص بالنظام لبيئة العمل، ومكتبة خرائط جاهزة لعرض الخريطة بأسطر قليلة، وAPI الموقع للحصول على إحداثيات GPS، وAPI خارجي للطقس لعرض درجة الحرارة.
المصطلحات: عربي ↔ English
- واجهة برمجة التطبيقات
- API
- مكتبة
- Library
- حزمة تطوير البرامج
- SDK
لماذا يهمّ هذا في BTEC؟
للتذكّر: API = نقطة تواصل واحدة، Library = مجموعة أكواد، SDK = الحزمة الكاملة التي تشمل كل شيء.
أسئلة تجيب عنها هذه الصفحة
- ما الفرق بين API وSDK والمكتبة؟
- ما هو SDK؟
مفاهيم مرتبطة
- أذونات التطبيقات والخصوصية: لماذا يطلب التطبيق إذنًا؟ ومتى نرفض؟كل تطبيق يحتاج إذنًا صريحًا للوصول إلى خصائص حساسة كالكاميرا والميكروفون والموقع وجهات الاتصال. والتطبيق الموثوق يشرح سبب حاجته لكل إذن قبل طلبه، ويمكن للمستخدم مراجعة الأذونات وسحبها من الإعدادات.
- مراحل تطوير التطبيق: النموذج الأولي والبرمجة والاختبار والإصلاحتمر فكرة التطبيق بأربع مراحل تتكرر: نموذج أولي (Prototype) بلا وظائف حقيقية، ثم برمجة وتطوير بأدوات مثل IDE وSDK ومكتبات وAPIs، ثم اختبار مستمر، ثم إصلاح وتحسين بحسب ملاحظات المستخدمين حتى يصبح التطبيق جاهزًا.
- متطلبات تشغيل البرنامج عند المستخدم ومتطلبات تطويره عند المبرمجمتطلبات التشغيل هي ما يحتاجه المستخدم ليعمل البرنامج عنده (جهاز ونظام تشغيل ومكتبات)، ومتطلبات التطوير هي أدوات المبرمج لكتابته (حاسوب وبيئة تطوير ومترجم أو مفسر وأدوات تصحيح ومحاكيات).
- واجهات برمجة التطبيقات (API) وبيانات JSON: الطلب ورموز الحالة 200 و404واجهة برمجة التطبيقات نقطة دخول رسمية يطلب منها النظام بيانات محددة ويستقبل ردًا منظمًا غالبًا بصيغة JSON. يجب فحص رمز حالة HTTP قبل استخدام البيانات: 200 نجاح، 404 غير موجود، وغيرها أخطاء تُعالَج برسالة مناسبة.
- خصائص الأجهزة المحمولة التي تستغلها التطبيقات: اللمس المتعدد والكاميرا والميكروفون وGPS والتسارع والبصمةالهواتف الذكية مليئة بأجهزة استشعار وميزات تتيح تجارب لا تقدمها صفحة ويب عادية: شاشة اللمس المتعدد والإيماءات، والكاميرا، والميكروفون، ونظام تحديد المواقع GPS، ومقياس التسارع، وبصمة الإصبع والتعرف على الوجه.
- أنظمة تشغيل الأجهزة المحمولة: iOS وAndroid وJava ME وتطبيقات الويب وكيف تختارنظام التشغيل هو البرنامج الأساسي الذي يدير وظائف الجهاز. أربعة خيارات لتطوير تطبيق: iOS (أمان وتكامل لكنه حصري لـApple)، وAndroid (انتشار عالمي ومرونة لكن تجزؤ التحديثات)، وJava ME (قديم خفيف)، وتطبيقات الويب (تعمل على كل جهاز عبر المتصفح بقيود).
عن كاتب الصفحة

مدرّس BTEC IT · الأردن
- نوع المحتوى
- شرح مبني على مادة أحمد دومي — وليس نصًّا رسميًّا من Pearson
- آخر مراجعة
- المصدر
- مدخل إلى التطبيقات — الهدف أ (أحمد دومي) — الصفحتان 19–20