القائمة الرئيسية

الصفحات

الفرق بين إطار العمل والمكتبة ؟

 



•‌‏ غالبًا ما يستخدم المبرمجين مصطلحي "مكتبة" و "إطار عمل" سأذكر الفرق بين إطار العمل و المكتبة مع بعض الامثلة البسيطة


‏المكتبة " Library  " 

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


‏اطار العمل "  Framework "

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


‏و كمثال بسيط للفرق بينهما.


- المكتبة تتمثل بان لديك منزل بالفعل ، ولكنك تحتاج إلى القليل من المساعدة بشأن الأثاث .


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


‏الاختلاف التقني 

يكمن الاختلاف التقني بين الإطار والمكتبة في مصطلح يسمى عكس التحكم.

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


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


‏باختصار

يلعب كل من المكتبات "Libraries" و أطر العمل "Frameworks" دوراً حيويا في تطوير البرمجيات. تقوم المكتبة بعمليه معينه أو محدده بشكل جيد، بينما يوفر اطار العمل هيكلا عظميا حيث يقوم المبرمجون بتعريف محتوئ التطبيق للعملية.


‏* الأطر والمكتبات هي تعليمات برمجية كتبها شخص آخر تساعدك على أداء بعض المهام الشائعة و الطويلة بشكل مختصر.

* المكتبة وجدت لتساعدك في تنفيذ مهمة واحدة بينما اطار العمل, هو عبارة عن مجموعة من المكتبات مجتمعة معاً لتنفيذ بعض المهام.


‏* ان كنت تستخدم مكتبة معينه في مشروع واردت ابدالها بمكتبة اخرى, تستطيع ذلك بكل سهولة بينما اطار العمل لاتستطيع استبداله باخر والسبب لانك ستقوم بكتابة المشروع من جديد على الـ Framework الجديد

* المكتبة تعتبر اداة بينما الـ Framework يعتبر طريقة للبرمجة.

تعليقات