डेटा मैपर पैटर्न
सॉफ्टवेयर इंजीनियरिंग में, डेटा मैपर पैटर्न एक वास्तुकला पैटर्न (कंप्यूटर विज्ञान) है। इसका नाम मार्टिन फाउलर (सॉफ्टवेयर इंजीनियर) ने अपनी 2003 की पुस्तक पैटर्न्स ऑफ एंटरप्राइज एप्लीकेशन आर्किटेक्चर में रखा था।[1] इस पैटर्न के अनुरूप किसी ऑब्जेक्ट के इंटरफ़ेस में क्रिएट, रीड, अपडेट और डिलीट जैसे फ़ंक्शंस शामिल होंगे, जो डेटा स्टोर में डोमेन इकाई प्रकारों का प्रतिनिधित्व करने वाली वस्तुओं पर काम करते हैं।
डेटा मैपर एक डेटा एक्सेस परत है जो लगातार डेटा स्टोर (अक्सर एक संबंध का डेटाबेस ) और एक इन-मेमोरी डेटा प्रतिनिधित्व (डोमेन लेयर) के बीच डेटा का द्विदिश हस्तांतरण करता है। पैटर्न का लक्ष्य इन-मेमोरी प्रतिनिधित्व और लगातार डेटा स्टोर को एक दूसरे से और डेटा मैपर से स्वतंत्र रखना है। यह तब उपयोगी होता है जब किसी को डोमेन परत में डेटा पर सख्त व्यावसायिक प्रक्रियाओं को मॉडल और लागू करने की आवश्यकता होती है जो लगातार डेटा स्टोर में बड़े करीने से मैप नहीं करते हैं।[2] परत एक या अधिक मैपर (या डेटा एक्सेस ऑब्जेक्ट) से बनी होती है, जो डेटा ट्रांसफर करती है। मैपर कार्यान्वयन दायरे में भिन्न होता है। सामान्य मैपर कई अलग-अलग डोमेन इकाई प्रकारों को संभालेंगे, समर्पित मैपर एक या कुछ को संभालेंगे।
कार्यान्वयन
कई प्रोग्रामिंग वातावरणों के लिए अवधारणा के कार्यान्वयन को विभिन्न सॉफ्टवेयर ढांचे में पाया जा सकता है।
जावा/नेट
- MyBatis दृढ़ता ढांचा
- हाइबरनेट_(ढांचा) (एनएचबेर्नेट) दृढ़ता ढांचा
नोड.जेएस / टाइपस्क्रिप्ट
- Bookshelf.js पुस्तकालय
- TypeORM लाइब्रेरी
- Massive.js लाइब्रेरी
- प्रिज्मा
- Objection.js पुस्तकालय
- MikroORM पुस्तकालय
- LDkit आरडीएफ डेटा स्रोतों के लिए ऑब्जेक्ट ग्राफ़ मैपर (ओजीएम)।
पीएचपी
- एटलस (PHP) ORM (डेटा मैपर, टेबल डेटा गेटवे, क्वेरी बिल्डर और पीडीओ रैपर)[3]
- सिद्धांत (PHP) ऑब्जेक्ट रिलेशनल मैपर (ORM) और डेटाबेस एब्स्ट्रेक्शन लेयर[4]
- Cycle ORM (PHP DataMapper ORM और डेटा मॉडलिंग इंजन)[5]
पर्ल
पायथन
- SQLAlchemy लाइब्रेरी
- mincePy लाइब्रेरी
रूबी
- DataMapper लाइब्रेरी (दरअसल इस लाइब्रेरी ने एक्टिव रिकॉर्ड डिज़ाइन पैटर्न को लागू किया, इसके उत्तराधिकारी, DataMapper 2 (अब ROM) का उद्देश्य वास्तव में इसे लागू करना है डिजाइन पैटर्न के नाम पर रखा गया था)
अमृत
- Ecto दृढ़ता ढांचा
यह भी देखें
संदर्भ
- ↑ Fowler, Martin (2003). एंटरप्राइज़ एप्लिकेशन आर्किटेक्चर के पैटर्न. Addison-Wesley. ISBN 978-0-321-12742-6.
- ↑ "What's the difference between Active Record and Data Mapper?".
{{cite web}}
: CS1 maint: url-status (link) - ↑ "Atlas ORM – Atlas".
- ↑ "Doctrine2 and ActiveRecord – Doctrine2". Doctrine2. Archived from the original on 2013-07-21. Retrieved 2013-04-02.
- ↑ "Cycle ORM – Cycle". GitHub.
- ↑ "stack overflow – DBIx".