• 0

هل هناك فرق بين OOP و Data Access Layer و MVC في ASP.NET؟

السلام عليكم 

ما الفرق بين تقنيات  OOP و Data Access Layer و MVC في ASP.NET ??

وهل هناك فرق فعلا وماهو؟

شكر الله لكم

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

وعليكم السلام ورحمة الله.

الفروق كثيرة بسبب اختلاف مكان كل منها من حيث المفاهيم والاستخدام.

OOP: مفهوم البرمجة الكائنية، عبارة عن مفاهيم عامة في طريقة تمثيل البيانات، وارتباطها مع بعضها البعض. عملية انشاء كلاس هي العملية الاساسية في OOP.

Data Access Layer: المقصود بها فصل العمليات المتعلقة بالتواصل مع قاعدة البيانات (عمليات القراءة والتعديل والحذف وغيرها)، ووضعها في طبقة مستقلة، خلافات لبعض التطبيقات التي يتم دمج كود الاتصال مع قاعدة البيانات مع كود الواجهات، وهو ما يصعب عملية التطوير واكتشاف الاخطاء.

MVC: نمط تصميم غير مرتبط ب ASP.NET فقط، بل موجود بكل التقنيات (مثل PHP وحتى Android)، لكن ضمن بيئة ASP.NET فيعتبر بديل ب Web Forms، وهو نمط جميل في تطوير تطبيقات الويب على ASP.NET MVC، ويقوم على فصل التطبيق إلى ثلاث اقسام رئيسية.

Model: وهو يمثل هيكيلة البيانات وطبقة Data Access Layer، وما يسمى ب Business Logic، فهو بالتالي غير مرتبط بنوع تطبيقك سواء كان ويب او غيره.

View: عبارة عن ألية العرض ل Model، بحيث نقوم بتمرير Model ل View معينة لتقوم بدروها بتوليد HTML المناسب، والذي سيتم ارسالة لاحقا للمستخدم.

Controller: هو الرابط بين Model و View، فهوم يقوم بتلقي الطلبات من المستخدم (مثل طلب عنوان ويب معين، يقوم ال Controller بمعالجة هذا الطلب)، ثم يقرر ما النتيجة المطلوبة، هل هي صفحة HTML، او تنزيل ملف معين، أو Web Api وغيرها. بالتالي ليس من مهمة Controller العمليات البرمجية الحسابية او التواصل مع قاعدة البيانات، هو فقط وسيط، يأخذ البيانات من View ويمررها ل Model والذي سيقوم بالمطلوب، او يقرأ البيانات من Model معين ويقوم بتمرريها ل View لتقوم برسمها بشكل HTML.

 

أخيراً أود القول: ان المفاهيم السابقة ليست حكرا على بيئة الدوت نت أو اي لغة برمجة أخرى، هي مفاهيم اساسية مع غيرها من المفاهيم، وهو ما يشكل ما يمسى ب هندسة البرمجيات.

مفاهيم اخرى يمكن التعمق بها، على سبيل المثال وليس الحصر:

Design Patterns

Separation of Concerns

Dependency Injection

Parallel Programming - Multi-threading

 بالتوفيق،،،

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن