بعد أن تعلمت البرمجة وبنيت أساسك فيها وعلى الاغلب عن طريق تعلم لغة ++C التي تحدثنا عنها مسبقاً وأتيت لتنفيذ فكرتك في البرمجة وهنا تبدأ الحيرة, كيف أصنع برنامجي والجواب سيكون في الموضوع الأساسي من مقالتنا هذه وهي المكتبات واطر العمل وسنتناول هذين المصطلحين بشكل منفصل:
ما هي المكتبة library
المكتبة في عالم البرمجة تعني مجموعة من الأدوات والوظائف الجاهزة التي يمكن للمطورين استخدامها لتسهيل عمليات البرمجة. تشمل المكتبات مجموعة متنوعة من الوظائف والموديولات التي يمكن استخدامها لأغراض مختلفة مثل معالجة البيانات، وإنشاء واجهات المستخدم، وإدارة الشبكات، وغيرها الكثير. تتوفر المكتبات عادة كجزء من لغات البرمجة أو كمكتبات مستقلة يمكن للمطورين تنزيلها واستخدامها في مشاريعهم.
مثال من مكتبة في بايثون
إحدى المكتبات الشهيرة في لغة البرمجة بايثون هي مكتبة NumPy. تُستخدم NumPy للعمل مع البيانات بشكل فعال، خاصةً في العمليات العلمية والحسابية. توفر NumPy هياكل بيانات قوية مثل الـ”arrays” (المصفوفات) والدوال الرياضية لتسهيل العمليات الحسابية المعقدة. وفيما يلي مثال بسيط يوضح كيفية استخدام NumPy لإنشاء مصفوفة وإجراء بعض العمليات البسيطة:
هذا مثال بسيط يستخدم NumPy لإنشاء مصفوفة 2D وجمع عناصرها. NumPy تساعد على تبسيط العمليات الرياضية والعلمية في بايثون.
ما هو اطار العمل Framework
إطار العمل (Framework) في البرمجة هو هيكلية تقنية توفر مجموعة من الأدوات والمكتبات والقواعد والتصميمات الجاهزة التي تساعد على تطوير تطبيق معين بشكل أسرع وأكثر كفاءة. يهدف إطار العمل إلى تقديم بنية جاهزة ومعيارية لتطوير التطبيقات، مما يسهل عملية البرمجة ويقلل من حاجة المطور إلى إعادة اختراع العجلة.
يتضمن إطار العمل عادة مجموعة من المكونات مثل مكتبات البرمجة، وقواعد البيانات، ونماذج التصميم، وأدوات إدارة الحالة، وواجهات المستخدم، والأدوات لإدارة الأمان والمصادقة، وغيرها الكثير حسب نوع التطبيق الذي يتم تطويره.
بعض الأمثلة على إطارات العمل الشهيرة تشمل Django و Flask لتطبيقات الويب في بايثون، و React و Angular لتطبيقات الويب الحديثة، و Spring لتطبيقات الويب في جافا، و Laravel لتطبيقات الويب في PHP، وهناك العديد من الإطارات الأخرى المخصصة لأغراض مختلفة في مجالات البرمجة المختلفة.
خلاصة كل هذا الكلام والذي افهمه منه
والان لقد تعرفنا على ما هي المكتبة واطار العمل ونستنتج من هذا الكلام ان المكتبة هي عبارة عن عدة دوال تساعدني في انجاز مهمة معينة او كود معين أما اطار العمل فيتكون من عدد من المكتبات أي انه شيء أكبر بكثير ولتنفيذ فكرتك يجب أن تعرف المكتبات واطر العمل التي من الممكن ان تعمل بها هذه الفكرة وبأي لغة فمثلاً اذا كان لديك فكرة تطبيق فمن الممكن أن تتعلم اطار العمل فلاتر(Flutter) الموجود بلغة البرمجة دارت(Dart) او جانغو(Django) الموجودة بلغة بايثون(Python) وغيرها الكثير من اطر العمل والمكتبات فهناك الكثير من اللغات التي بها اطر عمل ومكتبات تدعم هذه الأمور وبالنهاية الاختيار يكون حسب ابحاثك الخاصة وحسب الذي يناسبك ومعرفتك.