AudioVideo
EP07 - Data Access - Part 2 - MicroORMs
About this episode
في الجزء الثاني من نقاش Data Access، يستكمل محمد الشريف وأحمد الملط وتامر زكي الحديث عن Micro ORM ولماذا قد تكون خيارًا عمليًا عندما يكون المطلوب تمرير البيانات بسرعة بين قاعدة البيانات وواجهة المستخدم دون طبقات معقدة. تناقش الحلقة الفرق بين المرونة والبساطة من جهة، وفقدان بعض ضمانات الأنواع والتحقق وقت الترجمة من جهة أخرى. كما تتناول تحديات ORM التقليدية في إدارة الجلسات، وUnit of Work، والتخزين المؤقت، وتحميل العلاقات بين الكيانات. يشرح النقاش مخاطر Lazy Loading مثل مشكلة الاستعلامات المتكررة عند عرض العملاء وطلبات كل منهم، وأهمية اختيار استراتيجية تحميل مناسبة، إضافة إلى mapping وترحيل تغييرات مخطط قاعدة البيانات واختيار ORM وفق احتياجات التطبيق.
Episode notes
• مفهوم Micro ORM ومقارنته بنماذج ORM التقليدية الأكثر شمولًا
• تأثير اللغات الديناميكية على تقليل الحاجة إلى توليد الكود عند mapping البيانات
• متى يكون المسار المباشر من الاستعلام إلى واجهة المستخدم مناسبًا للتطبيقات
• المفاضلة بين بساطة التطوير وضمانات الأنواع واكتشاف الأخطاء وقت الترجمة
• إدارة الجلسات وUnit of Work وتتبع تغييرات الكائنات في ORM
• التخزين المؤقت على مستوى الجلسة ومشكلات التزامن عند التعامل مع البيانات
• Lazy Loading وEager Loading وأثرهما على أداء قاعدة البيانات
• مثال العملاء والطلبات ومشكلة الاستعلامات المتكررة عند تحميل العلاقات
• أساليب mapping بين الجداول والكائنات، والابتعاد عن ربط نموذج التطبيق بتفاصيل قاعدة البيانات
• ترحيل تغييرات مخطط قاعدة البيانات والتخطيط للترقيات دون تعقيد أو توقف كبير
http://facebook.com/askdeveloper
http://www.askdeveloper.com
https://itunes.apple.com/us/podcast/ask-developer-podcast/id627390638
http://soundcloud.com/askdeveloper