ما هو إطار العمل framework (دليل للمبتدئين)

فمن المحتمل أن تكون قد سمعت عن مصطلح إطار العمل Framework وهذا يكون بعد اتمامك لاحد لغات البرمجة المشهورة وتسمع ان لها ما يسمى فريم ورك فقبل الغوص في تعلم ذلك الفريم ورك. بحثت عن ما هو إطار العمل ولذلك في هذه المقالة التي ستكون دليلك التي سنحاول فيه الإجابة على هذا السؤال الذي يدور في بالك وسنشرح معنى Framework في البرمجة بشكل مفصل وسنغطي كل التفاصيل التي تحتاجها لفهم ذلك المصطلح تابع معي.

ما هو إطار العمل framework في البرمجة

ما هو إطار العمل Framework وما معناه في البرمجة؟

Framework هو كلمة إنجليزية تعني إطار عمل وفي مجال البرمجة يعني بيئة برمجية من الأكواد الجاهرة قام المطورون بإنشائها واختبارها وهو بمثابة القالب جاهز فهو يساعد المطورين في إنشاء تطبيقات برمجية بشكل أسرع باستخدامه وبهذا يجعل البرمجة اكثر كفاءة ويوفر الكثير من الوقت بدلا من اعادة اختراع العجلة.

بعض المميزات التي يقدمها إطار العمل للمطورين مثل:

  • سهولة التعلم والاستخدام خاصة إذا كنت تعرف اللغة التي يستخدمها الإطار.
  • يوفر الكثير من الأكواد الجاهزة والمجربة والموثوقة التي تحل المشاكل الشائعة والمعقدة في البرمجة.
  • يضمن الجودة والتوافق لتطبيقك أو موقعك الويب.
  • يسمح بالتعاون بين المبرمجين الذين يعملون على نفس المشروع لاتباعهم نفس المنهجية.
  • يدعم الابتكار والتطوير المستمر لانه يوجد وثائق لشرح العمل به وتحديثات للإطار.

هناك أنواع مختلفة من إطارات العمل تعتمد على لغة البرمجة ونوع التطبيق بعض الأمثلة على إطارات العمل الشهيرة هي:

  1. إطارات العمل لتطوير تطبيقات الويب، مثل Django وLaravel  للغة PHP  وExpress.
  2. إطارات العمل لتطوير تطبيقات الهاتف المحمول، مثل React Native وFlutter .
  3. إطارات العمل لتطوير تطبيقات سطح المكتب، مثل Electron وNW.js.
  4. إطارات العمل لتطوير تطبيقات الذكاء الاصطناعي والتعلم الآلي مثل TensorFlow وKeras للغة Python.

أنواع إطر العمل Framework

هناك العديد من الأنواع لاطر العمل المختلفة ومازال بامكاننا تصنيفها بشكل عام إلى ثلاث فئات رئيسية:

إطار العمل الكامل Full-Stack

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

وهو ايضاً على دراية جيدة بلغات HTML، CSS، وJavaScript للواجهة الأمامية، ويعملون على الخادم والواجهة الخلفية. ويستفيدون من إطارات عمل مثل Laravel وDjango لبناء تطبيقات متكاملة.

إطار العمل الجزئي Partial-Stack

إطار العمل الجزئي أو Partial-Stack هو إطار عمل يوفر لك بعض الأدوات والمكونات التي تغطي جزءًا معينًا من البرمجة، مثل الواجهة الأمامية أو الواجهة الخلفية أو ادارة قاعدة البيانات. يُمكّنك هذا النوع من الإطارات المطورين من التركيز على جانب مخصص دون الاخر، مما يسمح لهم بالاستفادة من ميزات متقدمة في هذا المجال دون الحاجة إلى إتقان جميع جوانب تطوير البرمجيات الكامل.

وهذه بعض الأمثلة على إطارات العمل الجزئية هي: React و Angular و Vue التي تعمل على بيئة عمل node.js وايضا  Express و Flask و Spring.

إطار العمل المتخصص Specialized

هو إطار العمل الذي يهدف إلى حل مشكلة معينة بالتالي يوفر هذا النوع من الاطارات حلولاً مخصصة للمتطلبات الخاصة بمجال معين أمثلة على إطار العمل Framework المتخصص Specialized هي Spring Security وSelenium TensorFlow.

مثال على إطار العمل Framework

لنأخذ مثالاً على إطار العمل Framework الكامل Full-Stack Django وهو الذي يستخدم لتطوير تطبيقات الويب بلغة Python. يتكون Django من ثلاثة مكونات رئيسية:

  • Model: طبقة البيانات التي تتعامل مع قاعدة البيانات وتحدد هيكل وسلوك البيانات في التطبيق. يستخدم Django نظام ORM (Object-Relational Mapping) لتمثيل البيانات ككائنات Python وتحويلها إلى جداول SQL.
  • View: هو طبقة المنطق التي تتعامل مع الطلبات والاستجابات وتحدد ما يجب عرضه للمستخدم. يستخدم Django نظام MVT (Model-View-Template) لفصل المنطق من العرض، حيث يستخدم قوالب HTML لتوليد الصفحات الديناميكية.
  • Controller: طبقة التوجيه التي تتعامل مع العناوين URL وتحدد ما يجب فعله عند طلب مسار معين وتستخدم Django نظام URLconf لربط العناوين URL بالوظائف المناسبة في العرض View.

اقرأ ايضا: دليل شامل تعلم HTML للمبتدئين من الصفر حتى الاحتراف

وهذا كود لصفحة html مكتوبة بواسطة كود Django 

<!DOCTYPE html>

<html>

<head>

    <title>Django Example</title>

</head>

<body>

    <h1>Django Example</h1>

    <a href="{% url 'add_post' %}">Add Post</a>

    <ul>

        {% for post in posts %}

        <li>

            <h2>{{ post.title }}</h2>

            <p>{{ post.content }}</p>

            <p>{{ post.date }}</p>

        </li>

        {% endfor %}

    </ul>

</body>

</html>

الفرق بين المصطلحين (اطار العمل Framework - المكتبة Library)

من الهام معرفة الفرق بين إطار العمل والمكتبة Library. المكتبة هي مجموعة من الأكواد والوظائف التي يمكن استدعاؤها من قبل البرنامج الرئيسي وتوفر خدمات محددة ومستقلة ولا تحدد بنية التطبيق أو طريقة تنفيذه. 

Framework و Library هما مصطلحان مترابطان ومتشابهان في مجال البرمجة، ولكنهما ليسا متماثلين بينما الفرق الرئيسي بينهما هو في اتجاه التحكم والاعتمادات.

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

اقرأ ايضا: ما هو إطار العمل framework (دليل للمبتدئين)

أتمنى أن تكون قد استمتعت بالقراءة وتعلمت شيئا جديدا أنا متأكد أنك أصبحت أكثر فهماً لما هو الفريم ورك واصبح لديك مهارة التعامل مع إطارات العمل. 

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