डिज़ाइन पैटर्न: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 11: Line 11:
{{Blockquote|इस भाषा के एलिमेंट इकाइयां हैं जिन्हें पैटर्न कहा जाता है। प्रत्येक पैटर्न समस्या का वर्णन करता है जो हमारे वातावरण में बार-बार होती है, और फिर उस समस्या के समाधान के मूल का वर्णन करती है, इस प्रकार से कि आप इस समाधान का उपयोग एक ही विधि से दो बार किए बिना, लाखों बार कर सकते हैं। .|author=क्रिस्टोफर अलेक्जेंडर|source=''[[पैटर्न भाषा]]''<ref name="Alexander, A Pattern Language"/>}}
{{Blockquote|इस भाषा के एलिमेंट इकाइयां हैं जिन्हें पैटर्न कहा जाता है। प्रत्येक पैटर्न समस्या का वर्णन करता है जो हमारे वातावरण में बार-बार होती है, और फिर उस समस्या के समाधान के मूल का वर्णन करती है, इस प्रकार से कि आप इस समाधान का उपयोग एक ही विधि से दो बार किए बिना, लाखों बार कर सकते हैं। .|author=क्रिस्टोफर अलेक्जेंडर|source=''[[पैटर्न भाषा]]''<ref name="Alexander, A Pattern Language"/>}}


किसी पैटर्न का दस्तावेजीकरण करने के लिए यह अध्ययन करने के लिए की आवश्यकता होती है कि कोई विशेष स्थिति समस्याएँ क्यों उत्पन्न करती है, और समाधान देने के लिए पैटर्न के घटक एक-दूसरे से कैसे संबंधित होते हैं।<ref>{{cite web |access-date=2011-03-21 |first=James |last=Maioriello |date=2002-10-02 |title=What are design patterns and do I need them? |url=http://www.developer.com/design/article.php/1474561/What-Are-Design-Patterns-and-Do-I-Need-Them.htm |website=developer.com}}</ref> क्रिस्टोफर एलेक्जेंडर सरल डिज़ाइन समस्याओं को परस्पर एंटी बल से उत्पन्न होने वाली समस्याओं के रूप में वर्णित करते हैं- जैसे कि कक्ष में धूप होने की आवश्यकता और गर्मियों की दोपहर में इसे अधिक गर्म न होने देने के मध्य का संघर्ष पैटर्न डिज़ाइनर को यह नहीं बताएगा कि कक्ष में कितनी खिड़कियाँ लगानी हैं; इसके अतिरिक्त, यह डिज़ाइनर को ऐसे निर्णय की ओर मार्गदर्शन करने के लिए मानों का सेट प्रस्तावित करेगा जो उनके विशेष अनुप्रयोग के लिए सर्वोत्तम है। उदाहरण के लिए, अलेक्जेंडर का विचार है कि कक्ष के चारों ओर सीधी प्रकाश के लिए पर्याप्त खिड़कियाँ सम्मिलित की जानी चाहिए। वह इसे उत्तम समाधान मानते हैं क्योंकि उनका मानना ​​है कि इससे कक्ष में रहने वालों का आनंद बढ़ जाता है। अन्य लेखक भिन्न-भिन्न निष्कर्ष पर आ सकते हैं, यदि वे ऊर्जा व्यय, या सामग्री व्ययको अधिक महत्व देते हैं। ये मान, जो पैटर्न के लेखक द्वारा यह निर्धारित करने के लिए उपयोग किए जाते हैं कि कौन सा समाधान सबसे उत्तम है, जो पैटर्न के भीतर प्रलेखित किया जाना चाहिए।
किसी पैटर्न का दस्तावेजीकरण करने के लिए यह अध्ययन करने के लिए की आवश्यकता होती है कि कोई विशेष स्थिति समस्याएँ क्यों उत्पन्न करती है, और समाधान देने के लिए पैटर्न के घटक एक-दूसरे से कैसे संबंधित होते हैं।<ref>{{cite web |access-date=2011-03-21 |first=James |last=Maioriello |date=2002-10-02 |title=What are design patterns and do I need them? |url=http://www.developer.com/design/article.php/1474561/What-Are-Design-Patterns-and-Do-I-Need-Them.htm |website=developer.com}}</ref> क्रिस्टोफर एलेक्जेंडर सरल डिज़ाइन समस्याओं को परस्पर एंटी बल से उत्पन्न होने वाली समस्याओं के रूप में वर्णित करते हैं- जैसे कि कक्ष में धूप होने की आवश्यकता और गर्मियों की दोपहर में इसे अधिक गर्म न होने देने के मध्य का संघर्ष पैटर्न डिज़ाइनर को यह नहीं बताएगा कि कक्ष में कितनी खिड़कियाँ लगानी हैं; इसके अतिरिक्त, यह डिज़ाइनर को ऐसे निर्णय की ओर मार्गदर्शन करने के लिए मानों का सेट प्रस्तावित करेगा जो उनके विशेष अनुप्रयोग के लिए सर्वोत्तम है। उदाहरण के लिए, अलेक्जेंडर का विचार है कि कक्ष के चारों ओर प्रकाश के लिए पर्याप्त खिड़कियाँ सम्मिलित की जानी चाहिए। वह इसे उत्तम समाधान मानते हैं क्योंकि उनका मानना ​​है कि इससे कक्ष में रहने वालों का आनंद बढ़ जाता है। अन्य लेखक भिन्न-भिन्न निष्कर्ष पर आ सकते हैं, यदि वे ऊर्जा व्यय, या सामग्री व्यय को अधिक महत्व देते हैं। ये मान, जो पैटर्न के लेखक द्वारा यह निर्धारित करने के लिए उपयोग किए जाते हैं कि कौन सा समाधान सबसे उत्तम है, जो पैटर्न के भीतर प्रलेखित किया जाना चाहिए।


पैटर्न दस्तावेज़ीकरण को यह भी स्पष्ट करना चाहिए कि यह कब प्रारम्भ होता है। चूँकि दो घर एक-दूसरे से अधिक भिन्न हो सकते हैं, इसलिए घरों के लिए डिज़ाइन पैटर्न इतना व्यापक होना चाहिए कि उन दोनों पर प्रारम्भ हो सके, किन्तु इतना अस्पष्ट नहीं कि यह डिज़ाइनर को निर्णय लेने में सहायता न करे। स्थितियों की वह श्रृंखला जिसमें किसी पैटर्न का उपयोग किया जा सकता है उसे उसका संदर्भ कहा जाता है। कुछ उदाहरण सभी घर, सभी दो मंजिला घर, या वे सभी स्थान हो सकते हैं जहां लोग समय बिताते हैं।
पैटर्न दस्तावेज़ीकरण को यह भी स्पष्ट करना चाहिए कि यह कब प्रारम्भ होता है। चूँकि दो घर एक-दूसरे से अधिक भिन्न हो सकते हैं, इसलिए घरों के लिए डिज़ाइन पैटर्न इतना व्यापक होना चाहिए कि उन दोनों पर प्रारम्भ हो सके, किन्तु इतना अस्पष्ट नहीं कि यह डिज़ाइनर को निर्णय लेने में सहायता न करे। स्थितियों की वह श्रृंखला जिसमें किसी पैटर्न का उपयोग किया जा सकता है उसे उसका संदर्भ कहा जाता है। कुछ उदाहरण सभी घर, सभी दो मंजिला घर, या वे सभी स्थान हो सकते हैं जहां लोग समय बिताते हैं।

Revision as of 17:12, 3 July 2023

डिज़ाइन पैटर्न किसी डिज़ाइन समस्या के समाधान का पुन: प्रयोज्य रूप है। यह विचार आर्किटेक्ट क्रिस्टोफर अलेक्जेंडर द्वारा प्रस्तुत किया गया था[1] और इसे विभिन्न अन्य विषयों, विशेष रूप से सॉफ्टवेयर इंजीनियरिंग के लिए अनुकूलित किया गया है।[2]

विवरण

किसी विशेष क्षेत्र से संबंधित डिज़ाइन पैटर्न का संगठित संग्रह पैटर्न भाषा कहलाता है। यह भाषा उन स्थितियों पर वर्णन करने के लिए सामान्य शब्दावली प्रदान करती है जिनका डिजाइनरों को सामना करना पड़ता है।

इस भाषा के एलिमेंट इकाइयां हैं जिन्हें पैटर्न कहा जाता है। प्रत्येक पैटर्न समस्या का वर्णन करता है जो हमारे वातावरण में बार-बार होती है, और फिर उस समस्या के समाधान के मूल का वर्णन करती है, इस प्रकार से कि आप इस समाधान का उपयोग एक ही विधि से दो बार किए बिना, लाखों बार कर सकते हैं। .

— क्रिस्टोफर अलेक्जेंडर, पैटर्न भाषा[1]

किसी पैटर्न का दस्तावेजीकरण करने के लिए यह अध्ययन करने के लिए की आवश्यकता होती है कि कोई विशेष स्थिति समस्याएँ क्यों उत्पन्न करती है, और समाधान देने के लिए पैटर्न के घटक एक-दूसरे से कैसे संबंधित होते हैं।[3] क्रिस्टोफर एलेक्जेंडर सरल डिज़ाइन समस्याओं को परस्पर एंटी बल से उत्पन्न होने वाली समस्याओं के रूप में वर्णित करते हैं- जैसे कि कक्ष में धूप होने की आवश्यकता और गर्मियों की दोपहर में इसे अधिक गर्म न होने देने के मध्य का संघर्ष पैटर्न डिज़ाइनर को यह नहीं बताएगा कि कक्ष में कितनी खिड़कियाँ लगानी हैं; इसके अतिरिक्त, यह डिज़ाइनर को ऐसे निर्णय की ओर मार्गदर्शन करने के लिए मानों का सेट प्रस्तावित करेगा जो उनके विशेष अनुप्रयोग के लिए सर्वोत्तम है। उदाहरण के लिए, अलेक्जेंडर का विचार है कि कक्ष के चारों ओर प्रकाश के लिए पर्याप्त खिड़कियाँ सम्मिलित की जानी चाहिए। वह इसे उत्तम समाधान मानते हैं क्योंकि उनका मानना ​​है कि इससे कक्ष में रहने वालों का आनंद बढ़ जाता है। अन्य लेखक भिन्न-भिन्न निष्कर्ष पर आ सकते हैं, यदि वे ऊर्जा व्यय, या सामग्री व्यय को अधिक महत्व देते हैं। ये मान, जो पैटर्न के लेखक द्वारा यह निर्धारित करने के लिए उपयोग किए जाते हैं कि कौन सा समाधान सबसे उत्तम है, जो पैटर्न के भीतर प्रलेखित किया जाना चाहिए।

पैटर्न दस्तावेज़ीकरण को यह भी स्पष्ट करना चाहिए कि यह कब प्रारम्भ होता है। चूँकि दो घर एक-दूसरे से अधिक भिन्न हो सकते हैं, इसलिए घरों के लिए डिज़ाइन पैटर्न इतना व्यापक होना चाहिए कि उन दोनों पर प्रारम्भ हो सके, किन्तु इतना अस्पष्ट नहीं कि यह डिज़ाइनर को निर्णय लेने में सहायता न करे। स्थितियों की वह श्रृंखला जिसमें किसी पैटर्न का उपयोग किया जा सकता है उसे उसका संदर्भ कहा जाता है। कुछ उदाहरण सभी घर, सभी दो मंजिला घर, या वे सभी स्थान हो सकते हैं जहां लोग समय बिताते हैं।

उदाहरण के लिए, क्रिस्टोफर अलेक्जेंडर के कार्य में, सर्जरी सेंटर में बस स्टॉप और वेटिंग रूम दोनों ही पैटर्न ए प्लेस टू वेट के संदर्भ में हैं।

उदाहरण

बिजनेस मॉडल में डिज़ाइन पैटर्न भी होते हैं।[4] देखना बिजनेस मॉडल उदाहरण § Notes.

यह भी देखें

संदर्भ

  1. 1.0 1.1 Alexander, Christopher (1977). A Pattern Language: Towns, Buildings, Construction. Center for Environmental Structure series. Vol. 2. New York: Oxford University Press. ISBN 0-19-501919-9. OCLC 3132495.
  2. Gamma, Erich; Helm, Richard; Johnson, Ralph; Vlissides, John (1994). Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley professional computing series. Reading, Mass.: Addison-Wesley. ISBN 0-201-63361-2. OCLC 31171684. The "Gang of Four" book.
  3. Maioriello, James (2002-10-02). "What are design patterns and do I need them?". developer.com. Retrieved 2011-03-21.
  4. For example: Mettler, Tobias; Eurich, Markus (June 2012). "A 'design-pattern'–based approach for analyzing e-health business models". Health Policy and Technology. 1 (2): 77–85. doi:10.1016/j.hlpt.2012.04.005.


अग्रिम पठन