التجميع مقابل DLL
المكتبة هي مجموعة من الموارد التي يمكن استخدامها لتطوير التطبيقات. تتكون المكتبة عادة من الإجراءات الفرعية والوظائف والفئات والقيم والأنواع. أثناء عملية الربط (التي يتم إجراؤها عادةً بواسطة رابط) ، تشير المكتبات والملفات التنفيذية إلى بعضها البعض. ملفات DLL هي ملفات المكتبة المرتبطة ديناميكيًا. تم تطوير DLL بواسطة Microsoft. ولكن نظرًا لبعض المشكلات الموجودة في ملفات DLL ، فقد توصلت Microsoft إلى تنسيق ملف التجميع (مع إطار عمل. NET). تشبه ملفات التجميع إلى حد كبير مكتبات DLL ماديًا ، لكن لها العديد من الاختلافات الداخلية.
ما هو DLL؟
مكتبة الارتباط الديناميكي (المعروفة أكثر باسم DLL) هي تطبيق مكتبة مشترك تم تطويره بواسطة Microsoft. ويستخدم ملحقات.dll أو.ocx أو.drv ويتم استخدامها في أنظمة تشغيل Microsoft Windows و OS / 2. يتم استخدام.dll بواسطة ملفات DLL العادية. ويتم استخدام ملحق.ocx بواسطة المكتبات التي تحتوي على عناصر تحكم ActiveX ويستخدم ملحق.drv بواسطة ملفات برنامج تشغيل النظام القديم. تنسيق ملف DLL هو نفس ملفات Windows EXE (الملفات القابلة للتنفيذ المحمولة على Windows 32 بت / 64 بت ، والملفات القابلة للتنفيذ الجديدة على Windows 16 بت). لذلك ، يمكن احتواء أي مجموعة من التعليمات البرمجية والبيانات والموارد في ملفات DLL (تمامًا مثل ملفات EXE). كأمر واقع ، تسمى ملفات البيانات ذات تنسيق ملف DLLs مورد DLL. مكتبات الرموز (بملحق.icl) وملفات الخطوط (بملحق.fon و. fot) هي أمثلة على مكتبات DLL للموارد.
تشكل المكونات التي تسمى الأقسام ملف DLL ولكل قسم سماته الخاصة مثل القراءة فقط / القابلة للكتابة والقابلة للتنفيذ / غير القابلة للتنفيذ.أقسام الكود قابلة للتنفيذ ، بينما أقسام البيانات غير قابلة للتنفيذ. أقسام الكود مشتركة وأقسام البيانات خاصة. وهذا يعني أن جميع العمليات التي تستخدم DLL ستستخدم نفس نسخة الرمز ، بينما سيكون لكل عملية نسختها الخاصة من البيانات. المكتبة الديناميكية الأساسية لنظام التشغيل Windows هي kernel32.dll ، والتي تحتوي على الوظائف الأساسية (الوظائف المتعلقة بالملف والذاكرة) على Windows. COM (طراز كائن المكون) هو امتداد لـ DLL إلى OOP (البرمجة الموجهة للكائنات). مكتبات DLL التقليدية أسهل في الاستخدام من ملفات COM.
ما هو التجمع؟
تم تقديم ملفات التجميع بواسطة Microsoft من أجل حل العديد من المشكلات الموجودة مع ملفات DLL. تم تقديم ملفات التجميع باستخدام إطار عمل Microsoft. NET. تسمى الوحدة المنطقية القابلة للتنفيذ للوظيفة التجميعية. التجميعات قابلة للتنفيذ ضمن. NET CLR (وقت تشغيل اللغة العامة). فعليًا ، توجد التجميعات كملفات EXE أو DLL. لكنها مختلفة تمامًا عن Microsoft Win32 DLLs داخليًا.يتكون ملف التجميع من بيان ، وبيانات وصفية ، و MISL (رمز لغة Microsoft الوسيطة) وموارد أخرى. التجميع هو وصف ذاتي. يحتوي البيان على معلومات مثل الاسم والإصدار والثقافة والاسم القوي وقائمة الملفات والأنواع والتبعيات. يتم تنفيذ كود MISL من خلال CLR (لا يمكن تنفيذه مباشرة).
ما هو الفرق بين التجميع و DLL؟
DLL مكتبة مرتبطة ديناميكيًا. على الرغم من أن التجميعات تساوي فعليًا مكتبات DLL ، إلا أنها مختلفة جدًا داخليًا. لا يمكن الحفاظ على التناسق بين مجموعة مكتبات DLL ، ولكن يمكن لـ CLR الحفاظ على التناسق بين مجموعة من التجميعات ، لأن التجميعات ذاتية الوصف (تحتوي على قائمة التبعيات داخليًا). بخلاف مكتبات DLL ، يتم فرض معلومات تعيين الإصدار للتجميعات (بواسطة CLR). النشر جنبًا إلى جنب (تطبيقات مختلفة باستخدام إصدارات مختلفة) ممكن مع التجميعات.