0%
بنية MVC مع Java EE

MVC

افصل النموذج عن الواجهة والمتحكم دون أي إطار عمل، لتفهم ما الذي تؤتمته أطر العمل.

15-20 دقيقة

بنية MVC مع Java EE

أصبحتَ الآن قادرًا على كتابة سيرفلت تعالج طلبًا، وصفحة JSP تعرض HTML. أما التطبيق الحقيقي فيضم ثلاثين من كل منهما. وعندئذٍ لا يعود السؤال المطروح «كيف يعمل هذا؟» بل «أين أضع كل شيء؟» — وهو السؤال الذي يحدد ما إذا كان تطبيقك قابلًا للصيانة بعد عامين.

تجربة الميدان حاسمة في هذا الشأن. فبغياب الانضباط تتسرب المنطقية إلى كل مكان: شيء من SQL داخل صفحة JSP، وحساب للخصم مكرر في ثلاث سيرفلتات، وقاعدة عمل مكتوبة داخل وسم للتنسيق. وفي اليوم الذي يتغير فيه معدل ضريبة القيمة المضافة، ستضطر إلى البحث عنه في أربعين ملفًا. وفي اليوم الذي تريد فيه عرض البيانات نفسها بصيغة JSON، ستضطر إلى إعادة كتابة كل شيء لأن المنطق لا ينفصل عن HTML.

يعالج نمط النموذج-الواجهة-المتحكم (Model-View-Controller) هذه المشكلة بإسناد مسؤولية واحدة لكل نوع من المكونات. فهو ليس مكتبة تُثبَّت، بل تقسيم تفرضه على شيفرتك. وفي Jakarta EE يكون التناظر مباشرًا — السيرفلت هي المتحكم، وJavaBean هو النموذج، وJSP هي الواجهة.

ما ستبنيه في هذا الدرس سيتولاه Spring MVC عنك لاحقًا. وبناؤه يدويًا مرة واحدة هو ما يجعل Spring مفهومًا: فحين ترى @GetMapping وModel، ستعرف تمامًا ما الآلية المخفية خلفهما. المشروع الجديد سينطلق من Spring Boot؛ أما من يستخدمه دون أن يكتب يومًا متحكمًا أماميًا فلا يعرف ما الذي يستخدمه.

التعليقات

التعليقات مدعومة عبر GitHub Discussions

سجّل الدخول باستخدام GitHub للمشاركة في النقاش

تم نسخ الرابط!