recent
احدث الدروس

الدرس السادس من سلسلة دروس موقع التسوق الاول - انشاء كلاس DTO

 




اهلا وسهلا بكم احبائي  .. في هذه المحاضرة ان شاء الله سوف نقوم بعمل بعض التعليمات البرمجية في ملف Class  . في المحاضرة السابقة تعلمنا كيفية انشاء قاعدة البيانات وانشاء جدول الـ Pages  . وان شاء الله في هذه المحاضرة سوف نقوم بعمل كلاس يحاكي جدول الـ Pages  بمعنى اننا سوف نقوم ببناء خصائص تمثل اعمدة  جدول الـ Pages  وسوف نشير الى هذا الكلاس بخصائص تحاكي جدول الصفحات الـ Pages  


اهداف المحاضرة 

  1. مفهوم الكلاس وما الهدف من انشاؤه .
  2. إنشاء كلاس يعبر عن جدول الصفحات وانشاء الخصائص فيه 
  3. مفهوم الكلاسات من النوع DTO
  4. مفهوم الكلاسات من النوع View Model
  5. الفرق بين الكلاسات من النوع View Model  والنوع DTO
  6. مفهوم الـ Validation Role  وماهي المكتبة التي تحتويها 
  7. كتابة الـ Validation Role  للخصائص وذكر الغرض من ذلك 

مفهوم الكلاس وما الهدف من انشاؤه 

هو ملف يضم خصائص Properties  لمجموعة من الكائينات الـ Object  . هذه الخصائص تعرض صفات هذه الكائنيات على سبيل المثال : اعطاء خاصية اللون للسيارة ، اعطاء خاصية العنوان للصفحة  .
قد يحتوي الكلاس على دوال يمكن تمثيل سلوك هذه الكائنات فيها مثلا يمكن ان نكتب دالة في هذا الكلاس تحتوي على تعليمات برمجية لتغيير اللون للسيارة او نكتب تعليمة برمجية لتغيير العنوان للصفحة .

هذا الكلاس بمحتواه يمكن ان نستفيد منه في المشروع كاملا باستدعاء  الدوال  فيه او الخصائص ويمكن  ان نطبق فيه مايعرف بالبرمجة الكائنية او OOP  وتطبيق الوراثة وتقليل الكود البرمجي وتقسيمه 

انشاء كلاس يعبر عن جدول الصفحات وانشاء الخصائص فيه 

من بيئة الفيجوال ستوديو سوف نذهب الى مشروعنا ومنه الى Solution Explorer  ومن ومجلد الـ MODLE ننشئ مجلد يمسى Data Model    ونننشئ فيه كلاس يسمى Page DTO 
   

مفهوم الكلاس من النوع الـ DTO


لاحظ معي اسمينا هذا الكلاس PAGE DTO  اي من النوع DTO   وهي اختصار لجملة  (DATA TRANSFER OPJECT)
وغرض هذا الكلاس انه سيحاكي جدول الصفحات اي اننا سوف نقوم ببناء خصائص فيه تمثل اعمدة جدول الصفحات . وهذه الكلاسات من النوع DTO  غرضها نقل البيانات بين طبقات اخرى وفي تطبيقنا سوف تسخدم هذه الكلاسات لتمرير البيانات بين كلاسات اخرى من النوع VIEW MODEL  .
اذن الان لنقم ببناء الكلاس من النوع DTO كما هي واضحة في الصورة التالية :


في هذه الكلاس مثلنا جدول الصفحات بهذه الخصائص وهي ( رقم الصفحة حيث كتبنا عليها خاصة KEY  لنميزها على ان العمود هو مفتاح اساسي ، وكذلك اسم الصفحة بالعربي واسم الصفحة بالانجليزي ووصف الصفحة وترتيب الصفحة وهل الصفحة لها شريط  جانبي ام لا وكذلك العمود FLAG  للتحكم باخفاء الصفحة او لا 

كذلك لاحظ اننا ميزنا الجدول بكتابة الخاصية TABLE للاشارة باسم الجدول حيث عملناه بين قوسين 

وكما اشرنا سابقا ان هذا الكلاس سوف يتم تبادل البيانات بينه وبين كلاس من النوع View Mode.

مفهوم الكلاس من النوع View Model 

الكلاسات من النوع الـ View Model  … احيانا نحتاج الى عرض بعض الاعمدة الخاصة باجدول ماء وكما في مثالنا نحتاج الى عرض بعض الاعمدة مثل اسم الصفحة ووصف الصفحة والاسم بالعربي والاسم بالانجليزي .. وقد لا نحتاج على عرض بقية الاعمدة لذلك سوف نعمل كلاس غرضه عرض الاعمدة او الكنترول التي نريدها فقط .
توضيح اكثر عام 
قد نحتاج الكلاس من النوع الـ View Model  للاسباب التالية :
  • إخفاء خصائص معينة لا يفترض أن يشاهدها العملاء.
  • حذف بعض الخصائص لتقليل حجم الحمولة.
  • فصل  الطبقة عن طبقة قاعدة البيانات.
  • احيانا تسخدم لتحسين  التقارير والرسوم البيانية لاظهار الاحصائيات وقف اعمدة محددة 
لذلك سوف نقوم بعمل كلاس من النوع View Model نذهب الى المجلد الـ View Model  ثم نقوم بعمل كلاس نسميه 
Page VM
ونكتب فيه الخصائص التالية :


كما تلاحظون اننا انشأنا كلاس من النوع VIEW MODEL  وهذا الكلاس وضعنا فيه خصائص نريد ان نعرضها على المستخدم وايضا قمنا بعمل CONSTRUCTOR  لتمرير القيم الى خصائص هذا الكلاس من الكلاس المسمى PAGEDTO وكما ذكرنا سابقا ان الكلاس من النوع DTO  يقوم بتبادل الباينات من هذا الكلاس من النوع VIEW MODEL  

مفهوم الـ VALIDATION ROLE 

الـ VALIDATION ROLE  : ادوات التحقق من صحة البيانات . بمعنى انه عندما يقوم المستخدم بادخال او ترك القيم فارغة  في مربع النص فان فائدة هذه الجمل المسمى VALIDATION ROLE  تقوم بتنبيه المستخدم بانه يجب ادخال بيانات على مربع النص مثلا او تصحيح المدخلات 


وتعني الاتي : 
  1. REQURED : اي ان هذا الحقل او الخاصية مطلوب ادخال الباينات فيه ولا يمكن تركها من غير ادخال البيانات 
  2. STRING LENGTH : طول النص مطلوب ادخاله لايقل على ثلاثة حروف ولا يزيد عن خمسون حرف 
  3. DISPLAY: عرض النص اي العنوان بهذه الشكل ( اسم الصفحة بالعربي 
المكتبة التي تعرف هذه الـ VALIDATION ROLE تسمى DATAANNOTATIOS  كما هي واضحة في الصورة 


يمكنك متابعة المحاضرة على قناتنا على اليوتيوب   انشاء كلاس من النوع DTO لمشروع التسوق الاول    ولا تنسوا الاشتراك في القناة وكتابة تعليق .




انتهت محاضرتنا لهذا اليوم .. وبالاخير .. نقدم لكم اسئلة الاختبار لهذه المحاضرة 

  1. ما مفهوم الكلاس وما الهدف من انشاؤه ؟
  2. انشئ كلاس يعبر عن جدول الصفحات واكتب  الخصائص فيه ؟
  3. ما مفهوم الكلاسات من النوع DTO ؟
  4. ما مفهوم الكلاسات من النوع View Model؟
  5. اذكر الفرق  بين الكلاسات من النوعة View Model  والنوع DTO ؟ 
  6. ما مفهوم الـ Validation Role  وماهي المكتبة التي تحتويها ؟
  7. اكتب الـ Validation Role  للخصائص في الكلاس PAGEVM وذكر الغرض من ذلك 
author-img
دروس ومشاريع برمجية - جديد التقنية والابداع

تعليقات

ليست هناك تعليقات
إرسال تعليق
    google-playkhamsatmostaqltradent