التعامل مع المكتبات في لغة البرمجة ++C

اقرأ في هذا المقال


مفهوم المكتبات البرمجية في لغة البرمجة سي بلس بلس –  ++Libraries In C:

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

طريقة إنشاء مكتبة واستخدامها في لغة البرمجة سي بلس بلس:

  • إنشاء مشروع برمجي مكتوب بلغة (++C) تجريبي لاستخدامه لتجربة المكتبة.
  • إنشاء مشروع برمجي آخر عبارة عن المكتبة التي سيتم بتضمينها في المشروع.
  • إضافة المكتبة في المشروع و استدعاء الدوال الموجودة فيها.
  • إعادة التعديل على المكتبة و إضافة ملفات امتدادها (cpp.) و (h.) فيها مع وضع الكود بداخل نطاق Namespace ).

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

المكتبات الثابتة – Static Libraries:

و يكون امتداد هذا النوع من المكتبات (lib.) على نظام التشغيل ويندوز و (a.) على نظامي التشغيل لينكس و ماك ( Mac Os).

المكتبات الديناميكية – Dynamic Libraries:

و يكون امتداد هذا النوع من المكتبات (dll.) على نظام التشغيل ويندوز و (so.) على نظامي التشغيل لينكس و ماك.

الفرق بين المكتبات الثابتة والمكتبات الديناميكية في لغة البرمجة سي بلس بلس:

الاختلاف الأساسي بين هذين  النوعين من المكتبات هو أن المكتبات الثابتة (Static Libraries) يتم فيها دمج الأكواد البرمجية الموجودة فيها مع كود المشروع البرمجي نفسه، في حين أن المكتبات الديناميكية تكون موضوعة بشكل منفصل عن كود المشروع البرمجي.

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

المصدر: C++ Development Tutorial 4: Static and Dynamic Libraries Static and dynamic librariesStatic and Dynamic Libraries | Set 1Dynamic Libraries in C++


شارك المقالة: