API و SDK. هذين الاختصارين عادة ما لا يقولان شيئًا بالنسبة للمستخدمين العاديين الذين اعتادوا على الحلول الجاهزة مثل البرمجيات الكمبيوترية أو التطبيقات. ومع ذلك، في حالة المبرمجين، يجب أن يكونوا وعلى دراية ويتعاملون مع كل من API و SDK. تأتي هذه المعرفة بشكل خاص بالنفع لأولئك الذين يضطرون لدمج حلول مثل 'البرمجيات' التلقائية للتعرف على أرقام/لوحات الترخيص، والتي في معظم الحالات تأتي في شكل API. أو هل هي SDK؟
نظرًا لأن هذه المصطلحات مرتبطة بشكل وثيق ببعضها البعض، فإنها غالبًا ما تكون مرتبكة وتستخدم كمرادفات. ومع ذلك، هناك تمييز واضح بين API و SDK. سيُركز هذا المقال على التمييز الرئيسي وسيُظهر لك أيضًا كيف تتعلق بتعرف على اللوحات المركبة.
واجهة برمجة التطبيقات (API) مقابل مجموعة تطوير البرمجيات (SDK)
واجهة برمجة التطبيقات (API)
واجهة برمجة التطبيقات (API) هي اختصار لعبارة Application Programming Interface. وهي عبارة عن سلسلة من الدوال التي يمكن لبرنامج التطبيق استخدامها لجعل محرك التعرف التلقائي على لوحات المركبات (ANPR، ويُعرف أيضًا باسم LPR للتعرف على لوحات الترخيص) يقوم بعملية التعرف. وتوفر واجهة برمجة التطبيقات حلقة وصل بين عمليات التطبيق والمهام الأساسية للتعرف على الصور الخاصة بالتعرف على لوحات المركبات.

ومع ذلك، على عكس واجهات المستخدم العادية التي تربط الحواسيب بالأشخاص (المستخدم النهائي)، تربط واجهة برمجة التطبيقات بين الحواسيب أو قطع البرمجيات بعضها ببعض. إنها مصممة لاستخدام المبرمجين/المدمجين. غالبًا ما يتم إنشاؤها بطريقة تجعل الأجزاء الداخلية للنظام مخفية، مع تعريض تلك الأجزاء التي يجدها المبرمجون مفيدة فقط. عادة ما يتم الاحتفاظ بهذه الأجزاء بشكل ثابت حتى لو تغيرت التفاصيل الداخلية.
غالبًا ما تُقدم واجهات برمجة التطبيقات بمفردها، لكن هناك حالات معينة عندما يتلقى المطورون وثائق مع الواجهة برمجية التطبيقات لفهم أفضل لكيفية عملها وما يمكن القيام به معها.
مجموعة تطوير البرمجيات (SDK)
للعمل مع واجهة برمجة التطبيقات - لتطوير التطبيقات باستخدام وظائفها - يحتاج مطورو البرامج إلى وثائق مناسبة وأكواد عينية وأدوات برمجية. مجموعة هذه العناصر هي ما نسميه SDK أو مجموعة تطوير البرمجيات. في الأساس، يتم تضمين كل ما يحتاجه المطورون لكتابة وبناء واختبار ونشر التطبيقات الممكنة مع التعرف على لوحة الترخيص في هذه المجموعات SDK، عادةً في حزمة تثبيت واحدة. ببساطة، يحصل المطورون على حزمة كاملة لإنشاء برامجهم الخاصة، المصممة حسب الطلب، بالوظائف المطلوبة.
جزء حاسم من SDK هو وثائق API. تحتوي الوثائق على وصف دقيق لتعريفات API ووظائفها ومتغيراتها بحيث يمكن للمدمجين إجراء التعديلات اللازمة دون التدخل في الوظائف الأساسية للحل.

ما زلت مرتبكًا؟
كما أشارت Nordic APIs، فإن سبب الارتباك هو أن واجهة برمجة التطبيقات (API) ومجموعة تطوير البرمجيات (SDK) تتداخلان بشكل كبير، خاصة في الوقت الحاضر عندما يتم إضافة منهجيات جديدة للتنظيم والتقسيم إلى الخليط كل عام.
هذا مثلما قيل لنا خلال درس الأحياء: جميع الحشرات (API) جزء من عائلة أكبر - الحشرات (SDK) - لكن ليست جميع الحشرات حشرات. ومع ذلك، في اللغة اليومية، نسمي الحشرات أحيانًا حشرات.
لذلك، عندما يتعلق الأمر بعمل التمييز الحاسم بين API و SDK، فمن الأفضل أن نتذكر ما يلي:
- الواجهات البرمجية عادة ما تكون مضمنة في مجموعات تطوير البرمجيات، ولكن مجموعات تطوير البرمجيات ليست جزءًا من الواجهات البرمجية.
- تعمل مجموعة تطوير البرمجيات كأساس للمنزل، مما يتيح للمبرمجين إنشاء التطبيقات.
- تعمل واجهة برمجة التطبيقات، مثل خطوط الكهرباء في المنزل، على تمكين عمل التطبيقات ضمن المعلمات المحددة لـ SDK.
ANPR: البرنامج الذي ليس برنامجًا
في عالم التعرف التلقائي على لوحات الترقيم (ANPR)، تتوفر العديد من الحلول لتلبية احتياجات العملاء المختلفة. تقدم شركات مثل Adaptive Recognition حلول التعرف على لوحات الترقيم بعدة أشكال، منها برمجيات جاهزة مثل برنامج المراقبة المرورية المعتمد على ANPR Carmen® Go، وحلول ANPR سحابية بنموذج البرمجيات كخدمة (SaaS) مثل Carmen® Cloud، وحتى تطبيق ANPR للهواتف المحمولة لأولئك الذين يرغبون في استخدام التعرف على لوحات الترقيم فورًا دون الحاجة إلى أعمال تكامل طويلة ومعقدة. ومع ذلك، هناك سبب وجيه يجعل حلولًا مثل محرك التعرف على لوحات الترقيم Carmen® FreeFlow تُقدَّم في معظم الحالات على شكل مكتبات برمجية بدلًا من برمجيات جاهزة، وهو ببساطة: لأن ذلك يصب في مصلحة العميل.
إذا فكرنا في الأمر، فإن التعرف التلقائي على لوحات المركبات (ANPR) هو في الأساس مجرد «لبنة بناء» ضمن نظام معقّد. إن امتلاك برمجيات ANPR متكاملة يوفّر العديد من المزايا، لا سيما من حيث الوظائف والإمكانات، إلا أن تكييفها مع الأنظمة القائمة يتطلب وقتًا وجهدًا أكبر من قبل المدمجين، ومع ذلك لا توجد دائمًا ضمانات بأن تتم عملية التكامل كما هو مخطط لها. لهذا السبب، يكون من الأسهل غالبًا الاعتماد على حزمة تطوير برمجيات (SDK) للتعرف على لوحات المركبات، بحيث يمكن للمدمجين إدراجها بسلاسة في الأنظمة الجديدة أو الحالية، بل وحتى تجربة برنامج ANPR مجاني. توفر الـ SDK جميع المعلومات اللازمة حول الوظائف الأساسية لواجهة برمجة التطبيقات (API)، ما يتيح إجراء التعديلات المطلوبة دون المساس بوظائف ANPR الجوهرية.
لهذا السبب، يتم توفير Carmen® ANPR Image للتطبيقات التي تعمل على C، C ++، C #، Java، و VB.NET على نظام التشغيل Windows، و C، C ++، و Java على Linux. يتم معالجة المدمجون أيضًا بـ SDK متعدد الخصائص وتطبيقين تجريبيين لاختبار ميزات مختلفة ورؤية عملية العمل لـ ANPR بالعمل.
هل لديك أي أسئلة أو استفسارات؟ نحن هنا لدعمك في كل خطوة على الطريق: