تخطَّ إلى المحتوى

١٧ يونيو ٢٠٢٦ · آخر تحديث: ٢١ أغسطس ٢٠٢٦

الفرق بين الواجهة الأمامية والخلفية (Frontend و Backend)

شارك المقال:

عند دخولك عالم تطوير الويب ستسمع مصطلحات Frontend و Backend و Full-stack. لنوضّحها ببساطة.

الواجهة الأمامية (Frontend)

كل ما تراه وتتفاعل معه في المتصفّح: الأزرار، الألوان، التخطيط، الحركات.

تقنياتها:

فكّر فيها كـ"ديكور المطعم وقائمة الطعام" — ما يراه الزبون.

الواجهة الخلفية (Backend)

كل ما يحدث خلف الكواليس: قواعد البيانات، المنطق، المصادقة، الخوادم.

تقنياتها:

فكّر فيها كـ"المطبخ" — حيث يُحضَّر كل شيء بعيدًا عن نظر الزبون.

Full-stack — الاثنان معًا

مطوّر Full-stack يتقن الواجهتين معًا، ويستطيع بناء تطبيق كامل بمفرده.

مثال عملي: نفس الزرّ من الجهتين

اضغط المستخدم زرّ "أضف إلى السلّة" في متجر إلكتروني. هذا ما يحدث:

Frontend — يستمع للنقرة ويرسل طلبًا:

button.addEventListener("click", async () => {
  const res = await fetch("/api/cart", {
    method: "POST",
    body: JSON.stringify({ productId: 42 }),
  });
  const cart = await res.json();
  updateCartBadge(cart.itemsCount); // يحدّث الرقم بجانب أيقونة السلّة
});

Backend — يستقبل الطلب، يتحقّق منه، ويحدّث قاعدة البيانات:

app.post("/api/cart", async (req, res) => {
  const { productId } = req.body;
  const product = await db.product.findUnique({ where: { id: productId } });
  if (!product) return res.status(404).json({ error: "المنتج غير موجود" });
  const cart = await db.cart.addItem(req.user.id, productId);
  res.json(cart);
});

نفس النقرة الواحدة تعبر الحدّ الفاصل بين الجهتين: Frontend لا يعرف شيئًا عن قاعدة البيانات، و Backend لا يهتمّ بشكل الزرّ أو لونه — كلٌّ منهما مسؤول عن طبقته فقط، ويتواصلان عبر API.

خطأ شائع عند المبتدئين

كثير من المبتدئين يظنّون أن التحقّق (Validation) على الـ Frontend كافٍ — مثلًا التأكّد أن حقل السعر رقم موجب في جافاسكريبت قبل الإرسال. هذا يحسّن تجربة المستخدم فقط، لكنه لا يحميك أمنيًّا إطلاقًا: أي شخص يستطيع تجاوز الـ Frontend كليًّا ويرسل طلبات مباشرة للخادم. كل تحقّق أمني حقيقي يجب أن يتكرّر في الـ Backend، لأنه الطبقة الوحيدة التي لا يتحكّم بها المستخدم.

أيهما تختار؟

تحبّ...اختر
التصميم والمظهر والتفاعلFrontend
المنطق والبيانات والأنظمةBackend
كل شيء وبناء مشاريع كاملةFull-stack

الخلاصة

لا يوجد خيار "أفضل" — يعتمد على شغفك. ابدأ بأحدهما وأتقنه، ثم وسّع معرفتك.

ابدأ مسارك الأول مع The Code Fix.

📚 مصادر رسمية للتعمّق: freeCodeCamp — مصدر تعلّم البرمجة

الأسئلة الشائعة

ما الفرق بين Frontend و Backend؟

Frontend هو كل ما يراه المستخدم ويتفاعل معه في المتصفّح (الأزرار والألوان والتخطيط)، بينما Backend هو ما يحدث خلف الكواليس (قواعد البيانات والمنطق والخوادم).

أيّهما أبدأ به؟

يُنصح بالبدء بالـ Frontend (HTML و CSS و JavaScript) لأنه مرئي ومحفّز، ويُعدّ أساسًا مفيدًا سواء تخصّصت لاحقًا في الواجهة الأمامية أو الخلفية.

ما هو مطوّر Full-stack؟

هو مطوّر يتقن الواجهتين الأمامية والخلفية معًا، ويستطيع بناء تطبيق كامل بمفرده، وغالبًا تكون رواتبه أعلى لتنوّع مهاراته.

اقرأ أيضًا

تصفّح كل المقالات في المدوّنة، أو ابدأ التعلّم من المسارات و خرائط الطريق.