डेटा मैपर पैटर्न: Difference between revisions

From Vigyanwiki
(Created page with "सॉफ्टवेयर इंजीनियरिंग में, डेटा मैपर पैटर्न एक वास्तुकला पैटर्...")
 
No edit summary
Line 1: Line 1:
[[सॉफ्टवेयर इंजीनियरिंग]] में, डेटा मैपर पैटर्न एक [[ वास्तुकला पैटर्न (कंप्यूटर विज्ञान) ]] है। इसका नाम [[मार्टिन फाउलर (सॉफ्टवेयर इंजीनियर)]] ने अपनी 2003 की पुस्तक पैटर्न्स ऑफ एंटरप्राइज एप्लीकेशन आर्किटेक्चर में रखा था।<ref>{{cite book |last=Fowler |first=Martin |title=एंटरप्राइज़ एप्लिकेशन आर्किटेक्चर के पैटर्न|publisher=Addison-Wesley |year=2003 |isbn=978-0-321-12742-6 |url=https://books.google.com/books?id=FyWZt5DdvFkC&dq=active+record&pg=PT187 }}</ref> इस पैटर्न के अनुरूप किसी ऑब्जेक्ट के इंटरफ़ेस में क्रिएट, रीड, अपडेट और डिलीट जैसे फ़ंक्शंस शामिल होंगे, जो डेटा स्टोर में डोमेन इकाई प्रकारों का प्रतिनिधित्व करने वाली वस्तुओं पर काम करते हैं।
[[सॉफ्टवेयर इंजीनियरिंग]] में, डेटा मैपर पैटर्न एक आर्किटेक्चरल पैटर्न है। इसका नाम [[मार्टिन फाउलर (सॉफ्टवेयर इंजीनियर)|मार्टिन फाउलर]] ने अपनी 2003 की पुस्तक पैटर्न्स ऑफ एंटरप्राइज एप्लीकेशन आर्किटेक्चर में रखा था।<ref>{{cite book |last=Fowler |first=Martin |title=एंटरप्राइज़ एप्लिकेशन आर्किटेक्चर के पैटर्न|publisher=Addison-Wesley |year=2003 |isbn=978-0-321-12742-6 |url=https://books.google.com/books?id=FyWZt5DdvFkC&dq=active+record&pg=PT187 }}</ref> इस पैटर्न के अनुरूप किसी ऑब्जेक्ट के इंटरफ़ेस में क्रिएट, रीड, अपडेट और डिलीट जैसे फ़ंक्शन शामिल होंगे, जो उन ऑब्जेक्ट पर काम करते हैं जो डेटा स्टोर में डोमेन इकाई प्रकारों का प्रतिनिधित्व करते हैं।


डेटा मैपर एक [[डेटा एक्सेस परत]] है जो लगातार डेटा स्टोर (अक्सर एक [[ संबंध का डेटाबेस ]]) और एक इन-मेमोरी डेटा प्रतिनिधित्व (डोमेन लेयर) के बीच डेटा का द्विदिश हस्तांतरण करता है। पैटर्न का लक्ष्य इन-मेमोरी प्रतिनिधित्व और लगातार डेटा स्टोर को एक दूसरे से और डेटा मैपर से स्वतंत्र रखना है। यह तब उपयोगी होता है जब किसी को डोमेन परत में डेटा पर सख्त व्यावसायिक प्रक्रियाओं को मॉडल और लागू करने की आवश्यकता होती है जो लगातार डेटा स्टोर में बड़े करीने से मैप नहीं करते हैं।<ref>{{Cite web|title=What's the difference between Active Record and Data Mapper?|url=https://www.culttt.com/2014/06/18/whats-difference-active-record-data-mapper|url-status=live}}</ref> परत एक या अधिक मैपर (या [[डेटा एक्सेस ऑब्जेक्ट]]) से बनी होती है, जो डेटा ट्रांसफर करती है। मैपर कार्यान्वयन दायरे में भिन्न होता है। सामान्य मैपर कई अलग-अलग डोमेन इकाई प्रकारों को संभालेंगे, समर्पित मैपर एक या कुछ को संभालेंगे।
 
डेटा मैपर एक डेटा एक्सेस लेयर है जो एक सतत डेटा स्टोर (अक्सर एक रिलेशनल डेटाबेस) और एक इन-मेमोरी डेटा प्रतिनिधित्व (डोमेन परत) के बीच डेटा का द्विदिशात्मक स्थानांतरण करता है। पैटर्न का लक्ष्य इन-मेमोरी प्रतिनिधित्व और लगातार डेटा स्टोर को एक-दूसरे और डेटा मैपर से स्वतंत्र रखना है। यह तब उपयोगी होता है जब किसी को डोमेन परत में डेटा पर सख्त व्यावसायिक प्रक्रियाओं को मॉडल करने और लागू करने की आवश्यकता होती है जो लगातार डेटा स्टोर में अच्छी तरह से मैप नहीं होती हैं।<ref>{{Cite web|title=What's the difference between Active Record and Data Mapper?|url=https://www.culttt.com/2014/06/18/whats-difference-active-record-data-mapper|url-status=live}}</ref> लेयर एक या एक से अधिक मैपर्स (या डेटा एक्सेस ऑब्जेक्ट) से बनी होती है, जो डेटा ट्रांसफर करती है। मैपर कार्यान्वयन का दायरा अलग-अलग होता है। जेनेरिक मैपर्स कई अलग-अलग डोमेन इकाई प्रकारों को संभालेंगे, समर्पित मैपर्स एक या कुछ को संभालेंगे।


== कार्यान्वयन ==
== कार्यान्वयन ==
कई प्रोग्रामिंग वातावरणों के लिए अवधारणा के कार्यान्वयन को विभिन्न सॉफ्टवेयर ढांचे में पाया जा सकता है।
अवधारणा का कार्यान्वयन कई प्रोग्रामिंग वातावरणों के लिए विभिन्न रूपरेखाओं में पाया जा सकता है।


=== जावा/नेट ===
=== जावा/नेट ===

Revision as of 21:31, 29 June 2023

सॉफ्टवेयर इंजीनियरिंग में, डेटा मैपर पैटर्न एक आर्किटेक्चरल पैटर्न है। इसका नाम मार्टिन फाउलर ने अपनी 2003 की पुस्तक पैटर्न्स ऑफ एंटरप्राइज एप्लीकेशन आर्किटेक्चर में रखा था।[1] इस पैटर्न के अनुरूप किसी ऑब्जेक्ट के इंटरफ़ेस में क्रिएट, रीड, अपडेट और डिलीट जैसे फ़ंक्शन शामिल होंगे, जो उन ऑब्जेक्ट पर काम करते हैं जो डेटा स्टोर में डोमेन इकाई प्रकारों का प्रतिनिधित्व करते हैं।


डेटा मैपर एक डेटा एक्सेस लेयर है जो एक सतत डेटा स्टोर (अक्सर एक रिलेशनल डेटाबेस) और एक इन-मेमोरी डेटा प्रतिनिधित्व (डोमेन परत) के बीच डेटा का द्विदिशात्मक स्थानांतरण करता है। पैटर्न का लक्ष्य इन-मेमोरी प्रतिनिधित्व और लगातार डेटा स्टोर को एक-दूसरे और डेटा मैपर से स्वतंत्र रखना है। यह तब उपयोगी होता है जब किसी को डोमेन परत में डेटा पर सख्त व्यावसायिक प्रक्रियाओं को मॉडल करने और लागू करने की आवश्यकता होती है जो लगातार डेटा स्टोर में अच्छी तरह से मैप नहीं होती हैं।[2] लेयर एक या एक से अधिक मैपर्स (या डेटा एक्सेस ऑब्जेक्ट) से बनी होती है, जो डेटा ट्रांसफर करती है। मैपर कार्यान्वयन का दायरा अलग-अलग होता है। जेनेरिक मैपर्स कई अलग-अलग डोमेन इकाई प्रकारों को संभालेंगे, समर्पित मैपर्स एक या कुछ को संभालेंगे।

कार्यान्वयन

अवधारणा का कार्यान्वयन कई प्रोग्रामिंग वातावरणों के लिए विभिन्न रूपरेखाओं में पाया जा सकता है।

जावा/नेट

नोड.जेएस / टाइपस्क्रिप्ट

पीएचपी

  • एटलस (PHP) ORM (डेटा मैपर, टेबल डेटा गेटवे, क्वेरी बिल्डर और पीडीओ रैपर)[3]
  • सिद्धांत (PHP) ऑब्जेक्ट रिलेशनल मैपर (ORM) और डेटाबेस एब्स्ट्रेक्शन लेयर[4]
  • Cycle ORM (PHP DataMapper ORM और डेटा मॉडलिंग इंजन)[5]


पर्ल


पायथन

रूबी

  • DataMapper लाइब्रेरी (दरअसल इस लाइब्रेरी ने एक्टिव रिकॉर्ड डिज़ाइन पैटर्न को लागू किया, इसके उत्तराधिकारी, DataMapper 2 (अब ROM) का उद्देश्य वास्तव में इसे लागू करना है डिजाइन पैटर्न के नाम पर रखा गया था)

अमृत

  • Ecto दृढ़ता ढांचा

यह भी देखें

संदर्भ

  1. Fowler, Martin (2003). एंटरप्राइज़ एप्लिकेशन आर्किटेक्चर के पैटर्न. Addison-Wesley. ISBN 978-0-321-12742-6.
  2. "What's the difference between Active Record and Data Mapper?".{{cite web}}: CS1 maint: url-status (link)
  3. "Atlas ORM – Atlas".
  4. "Doctrine2 and ActiveRecord – Doctrine2". Doctrine2. Archived from the original on 2013-07-21. Retrieved 2013-04-02.
  5. "Cycle ORM – Cycle". GitHub.
  6. "stack overflow – DBIx".