نمط رسم خرائط البيانات
في هندسة البرمجيات ، يُعد نمط مُرَشِّح البيانات نمطًا معماريًا . وقد أطلق عليه مارتن فاولر هذا الاسم في كتابه الصادر عام 2003 بعنوان "أنماط هندسة تطبيقات المؤسسات" . [ 1 ] تتضمن واجهة الكائن المتوافق مع هذا النمط وظائف مثل الإنشاء والقراءة والتحديث والحذف، والتي تعمل على الكائنات التي تُمثل أنواع كيانات المجال في مخزن البيانات.
مُوَصِّل البيانات هو طبقة وصول إلى البيانات تُجري نقلًا ثنائي الاتجاه للبيانات بين مخزن بيانات دائم (غالبًا قاعدة بيانات علائقية ) وتمثيل بيانات في الذاكرة (طبقة المجال). يهدف هذا النمط إلى الحفاظ على استقلالية تمثيل البيانات في الذاكرة ومخزن البيانات الدائم عن بعضهما البعض وعن مُوَصِّل البيانات نفسه. يُفيد هذا عند الحاجة إلى نمذجة وتطبيق عمليات تجارية صارمة على البيانات في طبقة المجال التي لا تتوافق تمامًا مع مخزن البيانات الدائم. [ 2 ] تتكون الطبقة من مُوَصِّل واحد أو أكثر (أو كائنات وصول إلى البيانات )، تُجري عملية نقل البيانات. تختلف تطبيقات المُوَصِّلات في نطاقها. تتعامل المُوَصِّلات العامة مع أنواع عديدة من كيانات المجال، بينما تتعامل المُوَصِّلات المُخصصة مع نوع واحد أو عدد قليل منها.
التطبيقات
يمكن العثور على تطبيقات لهذا المفهوم في أطر عمل مختلفة للعديد من بيئات البرمجة.
جافا/.نت
- إطار عمل MyBatis للاستمرارية
- إطار عمل Hibernate ( NHibernate ) للاستمرارية
Node.js / TypeScript
- مكتبة Bookshelf.js
- مكتبة TypeORM
- مكتبة Massive.js
- بريزما
- مكتبة Objection.js
- مكتبة MikroORM
- أداة رسم خرائط الكائنات (OGM) من LDkit لمصادر بيانات RDF
PHP
بيرل
بايثون
- مكتبة SQLAlchemy
- مكتبة mincePy
روبي
- مكتبة DataMapper (في الواقع، طبقت هذه المكتبة نمط تصميم Active Record، وكان هدف خليفتها، DataMapper 2 (الآن ROM )، هو تطبيق نمط التصميم الذي سميت باسمه).
إكسير
- إطار استمرارية الإكتوبلازم
انظر أيضاً
- نمط السجل النشط - مفهوم في هندسة البرمجيات
- رسم خرائط الكائنات العلائقية – تقنية برمجة. صفحات تعرض أوصافًا مختصرة لأهداف إعادة التوجيه.
مراجع
- ↑ فاولر، مارتن (2003). أنماط هندسة تطبيقات المؤسسات . أديسون-ويسلي. ISBN 978-0-321-12742-6.
- ↑ "ما الفرق بين Active Record و Data Mapper؟ "
- ↑ "Atlas ORM – Atlas" .
- ↑ "Doctrine2 و ActiveRecord – Doctrine2" . Doctrine2 . مؤرشف من الأصل بتاريخ 21-07-2013 . تم الاطلاع عليه بتاريخ 02-04-2013 .
- ↑ "Cycle ORM – Cycle" . GitHub .
- ↑ "stack overflow – DBIx" .
- أنماط تصميم البرمجيات
- النمط المعماري (علوم الحاسوب)
