पैटर्न भाषा: Difference between revisions
(Created page with "{{About|the structured design approach by architect Christopher Alexander}} एक पैटर्न भाषा ''पैटर्न'' का एक संगठित...") |
No edit summary |
||
Line 1: | Line 1: | ||
{{About|the structured design approach by architect Christopher Alexander}} | {{About|the structured design approach by architect Christopher Alexander}} | ||
[[एक पैटर्न भाषा]] ''पैटर्न'' का | [[एक पैटर्न भाषा|पैटर्न भाषा]] ''पैटर्न'' का संगठित और सुसंगत सेट है, जिनमें से प्रत्येक समस्या और समाधान के मूल का वर्णन करता है जिसका उपयोग विशेषज्ञता के विशिष्ट क्षेत्र में कई तरीकों से किया जा सकता है। यह शब्द वास्तुकार [[क्रिस्टोफर अलेक्जेंडर]] द्वारा गढ़ा गया था और उनकी 1977 की पुस्तक ''ए पैटर्न लैंग्वेज'' से लोकप्रिय हुआ। | ||
पैटर्न भाषा, परस्पर जुड़े पैटर्न के सेट के माध्यम से, मानव प्रयास के विशेष क्षेत्र में जीवंतता लाने वाले गहन ज्ञान को व्यक्त करने का प्रयास भी हो सकती है। जीवंतता उस गुणवत्ता के लिए प्लेसहोल्डर शब्द है जिसका कोई नाम नहीं है: संपूर्णता, भावना या अनुग्रह की भावना, जो अलग-अलग रूप में होते हुए भी सटीक और अनुभवजन्य रूप से सत्यापन योग्य है।<ref>{{cite book |last1=Alexander |first1=Christopher |title=निर्माण का कालातीत तरीका|date=1979 |publisher=Oxford University Press |isbn=978-0-19-502402-9}}</ref> अलेक्जेंडर का दावा है कि आम लोग इस डिज़ाइन दृष्टिकोण का उपयोग करके बहुत बड़ी, जटिल डिज़ाइन समस्याओं को सफलतापूर्वक हल कर सकते हैं। | |||
==पैटर्न क्या है?== | ==पैटर्न क्या है?== | ||
{{See also|Design pattern}} | {{See also|Design pattern}} | ||
जब कोई डिज़ाइनर कुछ डिज़ाइन करता है - चाहे वह घर हो, कंप्यूटर प्रोग्राम हो, या लैंप हो - तो उसे समस्याओं को हल करने के तरीके के बारे में कई निर्णय लेने होंगे। | जब कोई डिज़ाइनर कुछ डिज़ाइन करता है - चाहे वह घर हो, कंप्यूटर प्रोग्राम हो, या लैंप हो - तो उसे समस्याओं को हल करने के तरीके के बारे में कई निर्णय लेने होंगे। एकल समस्या को उसके विशिष्ट स्थान (वाक्यविन्यास) के साथ प्रलेखित किया जाता है, और जंगल में देखे जाने वाले सबसे आम और मान्यता प्राप्त अच्छे समाधान के साथ उपयोग ([[व्याकरण]]) किया जाता है, जैसे शब्दकोश में देखे गए उदाहरण। ऐसी प्रत्येक प्रविष्टि एकल [[डिज़ाइन पैटर्न]] है। प्रत्येक पैटर्न में नाम, वर्णनात्मक प्रविष्टि और कुछ क्रॉस-रेफरेंस होते हैं, जो शब्दकोश प्रविष्टि की तरह होते हैं। प्रलेखित पैटर्न को स्पष्ट करना चाहिए कि पैटर्न के संदर्भ में वह समाधान अच्छा क्यों है। | ||
मौलिक या सार्वभौमिक पैटर्न जैसे कि दरवाजा या साझेदारी डिजाइन के बहुमुखी आदर्श हैं, या तो अनुभव में पाए जाते हैं या अभ्यास में घटकों के रूप में उपयोग के लिए, स्पष्ट रूप से आवर्ती संदर्भों और परिस्थितियों में बलों के समग्र संकल्प के रूप में वर्णित हैं, चाहे वास्तुकला, चिकित्सा, सॉफ्टवेयर विकास में हों या शासन, आदि। पैटर्न का आविष्कार किया जा सकता है या पाया और अध्ययन किया जा सकता है, जैसे कि डिजाइन के स्वाभाविक रूप से होने वाले पैटर्न जो मानव वातावरण की विशेषता रखते हैं।<ref>Henshaw, J. [http://www.synapse9.com/pub/2015_PURPLSOC-JLHfinalpub.pdf Guiding Patterns of Naturally Occurring Design: Elements. PURPLSOC 2015 proceedings, July 3-5 2015 Krems, Austria] PURPLSOC meeting on the many open scientific questions, e.g. regarding the theoretical background of patterns and the practical implementation of pattern methods in research and teaching.</ref> | मौलिक या सार्वभौमिक पैटर्न जैसे कि दरवाजा या साझेदारी डिजाइन के बहुमुखी आदर्श हैं, या तो अनुभव में पाए जाते हैं या अभ्यास में घटकों के रूप में उपयोग के लिए, स्पष्ट रूप से आवर्ती संदर्भों और परिस्थितियों में बलों के समग्र संकल्प के रूप में वर्णित हैं, चाहे वास्तुकला, चिकित्सा, सॉफ्टवेयर विकास में हों या शासन, आदि। पैटर्न का आविष्कार किया जा सकता है या पाया और अध्ययन किया जा सकता है, जैसे कि डिजाइन के स्वाभाविक रूप से होने वाले पैटर्न जो मानव वातावरण की विशेषता रखते हैं।<ref>Henshaw, J. [http://www.synapse9.com/pub/2015_PURPLSOC-JLHfinalpub.pdf Guiding Patterns of Naturally Occurring Design: Elements. PURPLSOC 2015 proceedings, July 3-5 2015 Krems, Austria] PURPLSOC meeting on the many open scientific questions, e.g. regarding the theoretical background of patterns and the practical implementation of pattern methods in research and teaching.</ref> | ||
सभी भाषाओं की तरह, | सभी भाषाओं की तरह, पैटर्न भाषा में [[शब्दावली]], वाक्यविन्यास और व्याकरण होता है - लेकिन पैटर्न भाषा संचार के अलावा कुछ जटिल गतिविधि पर लागू होती है। डिज़ाइन के लिए पैटर्न भाषाओं में, भाग इस प्रकार टूटते हैं: | ||
* भाषा विवरण - शब्दावली - रुचि के क्षेत्र में समस्याओं के नामित, वर्णित समाधानों का | * भाषा विवरण - शब्दावली - रुचि के क्षेत्र में समस्याओं के नामित, वर्णित समाधानों का संग्रह है। इन्हें डिज़ाइन पैटर्न कहा जाता है। इसलिए, उदाहरण के लिए, वास्तुकला की भाषा वस्तुओं का वर्णन करती है जैसे: बस्तियाँ, इमारतें, कमरे, खिड़कियाँ, कुंडी, आदि। | ||
* प्रत्येक समाधान में वाक्यविन्यास, | * प्रत्येक समाधान में वाक्यविन्यास, विवरण शामिल होता है जो दिखाता है कि समाधान बड़े, अधिक व्यापक या अधिक अमूर्त डिज़ाइन में कहाँ फिट बैठता है। यह स्वचालित रूप से समाधान को अन्य आवश्यक समाधानों के वेब से जोड़ता है। उदाहरण के लिए, कमरों में रोशनी पाने के तरीके और लोगों को अंदर और बाहर लाने के तरीके होते हैं। | ||
* समाधान में व्याकरण शामिल है जो बताता है कि समाधान किसी समस्या को कैसे हल करता है या लाभ पैदा करता है। इसलिए, यदि लाभ अनावश्यक है, तो समाधान का उपयोग नहीं किया जाता है। शायद पैसे या अन्य संसाधनों को बचाने के लिए डिज़ाइन के उस हिस्से को खाली छोड़ा जा सकता है; यदि लोगों को किसी कमरे में प्रवेश करने के लिए प्रतीक्षा करने की आवश्यकता नहीं है, तो | * समाधान में व्याकरण शामिल है जो बताता है कि समाधान किसी समस्या को कैसे हल करता है या लाभ पैदा करता है। इसलिए, यदि लाभ अनावश्यक है, तो समाधान का उपयोग नहीं किया जाता है। शायद पैसे या अन्य संसाधनों को बचाने के लिए डिज़ाइन के उस हिस्से को खाली छोड़ा जा सकता है; यदि लोगों को किसी कमरे में प्रवेश करने के लिए प्रतीक्षा करने की आवश्यकता नहीं है, तो साधारण द्वार प्रतीक्षा कक्ष की जगह ले सकता है। | ||
* भाषा विवरण में, व्याकरण और वाक्यविन्यास क्रॉस इंडेक्स (अक्सर पैटर्न नामों के शाब्दिक वर्णमाला सूचकांक के साथ) अन्य नामित समाधानों के लिए, ताकि डिजाइनर | * भाषा विवरण में, व्याकरण और वाक्यविन्यास क्रॉस इंडेक्स (अक्सर पैटर्न नामों के शाब्दिक वर्णमाला सूचकांक के साथ) अन्य नामित समाधानों के लिए, ताकि डिजाइनर समाधान से संबंधित, आवश्यक समाधानों के बारे में जल्दी से सोच सकें और उन्हें तार्किक तरीके से दस्तावेजित कर सकें। क्रिस्टोफर अलेक्जेंडर की पुस्तक ए पैटर्न लैंग्वेज में, पैटर्न अलग वर्णमाला सूचकांक के साथ, आकार के अनुसार घटते क्रम में हैं। | ||
* भाषा के सूचकांक में रिश्तों का जाल डिजाइन प्रक्रिया के माध्यम से कई रास्ते प्रदान करता है। | * भाषा के सूचकांक में रिश्तों का जाल डिजाइन प्रक्रिया के माध्यम से कई रास्ते प्रदान करता है। | ||
यह डिज़ाइन कार्य को सरल बनाता है क्योंकि डिज़ाइनर जिस समस्या को समझते हैं उसके किसी भी भाग से प्रक्रिया शुरू कर सकते हैं और अज्ञात भागों की ओर काम कर सकते हैं। साथ ही, यदि पैटर्न भाषा ने कई परियोजनाओं के लिए अच्छा काम किया है, तो यह विश्वास करने का कारण है कि | यह डिज़ाइन कार्य को सरल बनाता है क्योंकि डिज़ाइनर जिस समस्या को समझते हैं उसके किसी भी भाग से प्रक्रिया शुरू कर सकते हैं और अज्ञात भागों की ओर काम कर सकते हैं। साथ ही, यदि पैटर्न भाषा ने कई परियोजनाओं के लिए अच्छा काम किया है, तो यह विश्वास करने का कारण है कि डिजाइनर जो पहले डिजाइन समस्या को पूरी तरह से नहीं समझता है, वह भी डिजाइन प्रक्रिया को पूरा करेगा, और परिणाम प्रयोग करने योग्य होगा। उदाहरण के लिए, अंदर आने वाले स्कीयर को बर्फ़ गिरानी होगी और उपकरण संग्रहीत करने होंगे। गन्दी बर्फ और बूट क्लीनर को बाहर रहना चाहिए। उपकरण को देखभाल की ज़रूरत है, इसलिए रैक अंदर होने चाहिए। | ||
==कई पैटर्न | ==कई पैटर्न [[भाषा]] बनाते हैं== | ||
जिस तरह किसी बोली जाने वाली भाषा को उपयोगी बनाने के लिए [[शब्द]]ों में व्याकरण और शब्दार्थ का एक-दूसरे से संबंध होना चाहिए, उसी तरह | जिस तरह किसी बोली जाने वाली भाषा को उपयोगी बनाने के लिए [[शब्द]]ों में व्याकरण और शब्दार्थ का एक-दूसरे से संबंध होना चाहिए, उसी तरह पैटर्न भाषा बनाने के लिए डिज़ाइन पैटर्न को स्थिति और उपयोगिता क्रम में एक-दूसरे से संबंधित होना चाहिए। क्रिस्टोफर अलेक्जेंडर का काम अपघटन की प्रक्रिया का वर्णन करता है, जिसमें डिजाइनर के पास समस्या होती है (शायद व्यावसायिक असाइनमेंट), समाधान का चयन करता है, फिर बड़े समाधान के परिणामस्वरूप नई, छोटी समस्याओं की खोज करता है। कभी-कभी, छोटी समस्याओं का कोई समाधान नहीं होता है, और अलग बड़े समाधान का चयन करना पड़ता है। अंततः शेष सभी डिज़ाइन समस्याएं इतनी छोटी या इतनी नियमित हैं कि बिल्डरों द्वारा सुधार करके हल किया जा सकता है, और डिज़ाइन तैयार हो जाता है। | ||
समस्या के आधार पर वास्तविक संगठनात्मक संरचना ([[पदानुक्रम]], पुनरावृत्त विधि, आदि) को डिजाइनर के विवेक पर छोड़ दिया जाता है। यह स्पष्ट रूप से | समस्या के आधार पर वास्तविक संगठनात्मक संरचना ([[पदानुक्रम]], पुनरावृत्त विधि, आदि) को डिजाइनर के विवेक पर छोड़ दिया जाता है। यह स्पष्ट रूप से डिजाइनर को कुछ छोटे हिस्से से शुरू करके डिजाइन का पता लगाने की सुविधा देता है। जब ऐसा होता है, तो डिजाइनर के लिए यह महसूस करना आम बात है कि समस्या वास्तव में बड़े समाधान का हिस्सा है। इस बिंदु पर, डिज़ाइन लगभग हमेशा बेहतर डिज़ाइन बन जाता है। | ||
इसलिए, भाषा में, प्रत्येक पैटर्न को अन्य पैटर्न और समग्र रूप से भाषा के साथ अपने संबंधों को इंगित करना होता है। इससे भाषा का उपयोग करने वाले डिजाइनर को उन संबंधित समस्याओं के बारे में काफी मार्गदर्शन मिलता है जिन्हें हल किया जाना चाहिए। | इसलिए, भाषा में, प्रत्येक पैटर्न को अन्य पैटर्न और समग्र रूप से भाषा के साथ अपने संबंधों को इंगित करना होता है। इससे भाषा का उपयोग करने वाले डिजाइनर को उन संबंधित समस्याओं के बारे में काफी मार्गदर्शन मिलता है जिन्हें हल किया जाना चाहिए। | ||
किसी बाहरी विशेषज्ञ से | किसी बाहरी विशेषज्ञ से पैटर्न भाषा लागू कराने का सबसे कठिन हिस्सा वास्तव में हल की जाने वाली समस्याओं की विश्वसनीय, पूरी सूची प्राप्त करना है। निःसंदेह, समस्याओं से सबसे अधिक परिचित वे लोग हैं जिन्हें डिज़ाइन की आवश्यकता है। इसलिए, अलेक्जेंडर ने प्रसिद्ध रूप से संबंधित, सशक्त उपयोगकर्ताओं द्वारा साइट पर सुधार की वकालत की,<ref name="Alexander_Pattern_1977"/><ref>Alexander, Christopher, The Oregon Project</ref> बहुत व्यावहारिक बड़े पैमाने पर प्रारंभिक समाधान बनाने, डिज़ाइन की उपयोगिता को अधिकतम करने और डिज़ाइन के पुनर्कार्य को कम करने का शक्तिशाली तरीका। वास्तव में, वास्तुकला के उपयोगकर्ताओं को सशक्त बनाने की इच्छा ने अलेक्जेंडर को सबसे पहले वास्तुकला के लिए पैटर्न भाषा परियोजना शुरू करने के लिए प्रेरित किया। | ||
==किसी संदर्भ में डिज़ाइन समस्याएँ== | ==किसी संदर्भ में डिज़ाइन समस्याएँ== | ||
डिज़ाइन पैटर्न का | डिज़ाइन पैटर्न का महत्वपूर्ण पहलू उन प्रमुख विचारों की पहचान करना और दस्तावेज़ीकरण करना है जो अच्छी प्रणाली को खराब प्रणाली (जो घर, कंप्यूटर प्रोग्राम या दैनिक उपयोग की वस्तु हो सकती है) से अलग बनाते हैं, और भविष्य के डिजाइन में सहायता करते हैं। सिस्टम. पैटर्न में व्यक्त किया गया विचार इतना सामान्य होना चाहिए कि उसे उसके संदर्भ में बहुत अलग प्रणालियों में लागू किया जा सके, लेकिन फिर भी रचनात्मक मार्गदर्शन देने के लिए पर्याप्त विशिष्ट होना चाहिए। | ||
स्थितियों की वह श्रृंखला जिसमें | स्थितियों की वह श्रृंखला जिसमें पैटर्न में संबोधित समस्याएँ और समाधान लागू होते हैं, उसे उसका संदर्भ कहा जाता है। प्रत्येक पैटर्न में महत्वपूर्ण हिस्सा इस संदर्भ का वर्णन करना है। उदाहरण आगे यह स्पष्ट कर सकते हैं कि पैटर्न बहुत भिन्न स्थितियों पर कैसे लागू होता है। | ||
उदाहरण के लिए, अलेक्जेंडर का पैटर्न 'ए प्लेस टू वेट' सर्जरी में प्रतीक्षा कक्षों की तरह ही बस स्टॉप को संबोधित करता है, जबकि अभी भी सहायक और रचनात्मक समाधान प्रस्तावित करता है। डिज़ाइन पैटर्न| गामा एट अल द्वारा गैंग-ऑफ-फोर पुस्तक डिजाइन पैटर्न। ऐसे समाधान प्रस्तावित करता है जो प्रोग्रामिंग भाषा और प्रोग्राम के एप्लिकेशन डोमेन से स्वतंत्र हों। | उदाहरण के लिए, अलेक्जेंडर का पैटर्न 'ए प्लेस टू वेट' सर्जरी में प्रतीक्षा कक्षों की तरह ही बस स्टॉप को संबोधित करता है, जबकि अभी भी सहायक और रचनात्मक समाधान प्रस्तावित करता है। डिज़ाइन पैटर्न| गामा एट अल द्वारा गैंग-ऑफ-फोर पुस्तक डिजाइन पैटर्न। ऐसे समाधान प्रस्तावित करता है जो प्रोग्रामिंग भाषा और प्रोग्राम के एप्लिकेशन डोमेन से स्वतंत्र हों। | ||
फिर भी, | फिर भी, पैटर्न में वर्णित समस्याएं और समाधान तरफ अमूर्तता और व्यापकता के स्तर और दूसरी तरफ विशिष्टता के स्तर में भिन्न हो सकते हैं। अंततः यह लेखक की प्राथमिकताओं पर निर्भर करता है। हालाँकि, यहां तक कि बहुत ही अमूर्त पैटर्न में भी आमतौर पर ऐसे उदाहरण होंगे जो स्वभाव से, बिल्कुल ठोस और विशिष्ट हैं। | ||
पैटर्न इस बात में भी भिन्न हो सकते हैं कि वे वास्तविक दुनिया में कितनी दूर तक सिद्ध हैं। अलेक्जेंडर प्रत्येक पैटर्न को शून्य, | पैटर्न इस बात में भी भिन्न हो सकते हैं कि वे वास्तविक दुनिया में कितनी दूर तक सिद्ध हैं। अलेक्जेंडर प्रत्येक पैटर्न को शून्य, या दो सितारों की रेटिंग देता है, जो दर्शाता है कि वे वास्तविक दुनिया के उदाहरणों में कितने अच्छे साबित हुए हैं। आम तौर पर यह दावा किया जाता है कि सभी पैटर्न को कम से कम कुछ मौजूदा वास्तविक दुनिया के उदाहरणों की आवश्यकता होती है। हालाँकि, अभी तक लागू न किए गए विचारों को पैटर्न-जैसे प्रारूप में दस्तावेज़ित करना संभव है। | ||
अलेक्जेंडर की पुस्तक में पैटर्न भी उनके पैमाने के स्तर में भिन्न हैं - कुछ वर्णन करते हैं कि | अलेक्जेंडर की पुस्तक में पैटर्न भी उनके पैमाने के स्तर में भिन्न हैं - कुछ वर्णन करते हैं कि शहर या पड़ोस कैसे बनाया जाए, अन्य व्यक्तिगत इमारतों और कमरों के इंटीरियर से संबंधित हैं। अलेक्जेंडर निम्न-स्तर की कलाकृतियों को बड़े पैमाने की दुनिया के रचनात्मक तत्वों के रूप में देखता है, इसलिए उन्हें सहयोगी नेटवर्क (पैटर्न भाषा) में #एकत्रीकरण से जोड़ा जा सकता है। | ||
===बलों का संतुलन=== | ===बलों का संतुलन=== | ||
पैटर्न को उन समस्याओं का वर्णन करना चाहिए जिन्हें वह हल करना चाहता है, वह संदर्भ या स्थिति जहां ये समस्याएं उत्पन्न होती हैं, और वे स्थितियाँ जिनके तहत प्रस्तावित समाधानों की सिफारिश की जा सकती है। | |||
अक्सर ये समस्याएँ विभिन्न हितों या ताकतों के टकराव से उत्पन्न होती हैं। | अक्सर ये समस्याएँ विभिन्न हितों या ताकतों के टकराव से उत्पन्न होती हैं। संवाद के रूप में पैटर्न उभरता है जो तब ताकतों को संतुलित करने और अंततः निर्णय लेने में मदद करेगा। | ||
उदाहरण के लिए, वायरलेस टेलीफोन का सुझाव देने वाला | उदाहरण के लिए, वायरलेस टेलीफोन का सुझाव देने वाला पैटर्न हो सकता है। बलों को संवाद करने की आवश्यकता होगी, और ही समय में अन्य काम करने की आवश्यकता होगी (खाना बनाना, बुकशेल्फ़ का निरीक्षण करना)। बहुत विशिष्ट पैटर्न सिर्फ वायरलेस टेलीफोन होगा। अधिक सामान्य पैटर्न वायरलेस डिवाइस या माध्यमिक गतिविधि होंगे, जो सुझाव देते हैं कि माध्यमिक गतिविधि (जैसे फोन पर बात करना, या अपनी जींस की जेब का निरीक्षण करना) को अन्य गतिविधियों में हस्तक्षेप नहीं करना चाहिए। | ||
हालांकि इसके संदर्भ में काफी अनिर्दिष्ट है, माध्यमिक गतिविधि पैटर्न में बल वायरलेस टेलीफोन के समान हैं। इस प्रकार, प्रतिस्पर्धी ताकतों को | हालांकि इसके संदर्भ में काफी अनिर्दिष्ट है, माध्यमिक गतिविधि पैटर्न में बल वायरलेस टेलीफोन के समान हैं। इस प्रकार, प्रतिस्पर्धी ताकतों को पैटर्न में व्यक्त डिजाइन अवधारणा के सार के हिस्से के रूप में देखा जा सकता है। | ||
===पैटर्न का अपना तर्क होता है=== | ===पैटर्न का अपना तर्क होता है=== | ||
आम तौर पर | आम तौर पर पैटर्न में कुछ दिए गए मूल्यों का जिक्र करते हुए तर्क होता है। क्रिस्टोफर अलेक्जेंडर के लिए, उन लोगों के बारे में सोचना सबसे महत्वपूर्ण है जो वास्तुकला के टुकड़े के संपर्क में आएंगे। उनके प्रमुख मूल्यों में से इन लोगों को अधिक जीवंत महसूस कराना है। वह बिना नाम (QWAN) के गुणवत्ता के बारे में बात करते हैं। | ||
अधिक आम तौर पर, हम कह सकते हैं कि | अधिक आम तौर पर, हम कह सकते हैं कि अच्छी प्रणाली को उन लोगों द्वारा दैनिक जीवन के संवर्धन के रूप में स्वीकार किया जाना चाहिए, स्वागत किया जाना चाहिए और खुशी से अपनाया जाना चाहिए जो इसका उपयोग करना चाहते हैं, या - इससे भी बेहतर - उन सभी लोगों द्वारा जो इसे प्रभावित करते हैं। उदाहरण के लिए, सड़क कैफे पर चर्चा करते समय, अलेक्जेंडर अतिथि की संभावित इच्छाओं पर चर्चा करता है, लेकिन उन लोगों का भी उल्लेख करता है जो बस चलते हैं। | ||
यही सोच टेलीफोन और कारों जैसे तकनीकी उपकरणों, किसी प्रोजेक्ट पर काम करने वाली टीम जैसी सामाजिक संरचनाओं या कंप्यूटर प्रोग्राम के यूजर इंटरफेस पर भी लागू की जा सकती है। उदाहरण के लिए, किसी सॉफ़्टवेयर सिस्टम के गुणों का मूल्यांकन यह देखकर किया जा सकता है कि उपयोगकर्ता अपना समय सिस्टम का आनंद लेने या संघर्ष करने में बिताते हैं। | यही सोच टेलीफोन और कारों जैसे तकनीकी उपकरणों, किसी प्रोजेक्ट पर काम करने वाली टीम जैसी सामाजिक संरचनाओं या कंप्यूटर प्रोग्राम के यूजर इंटरफेस पर भी लागू की जा सकती है। उदाहरण के लिए, किसी सॉफ़्टवेयर सिस्टम के गुणों का मूल्यांकन यह देखकर किया जा सकता है कि उपयोगकर्ता अपना समय सिस्टम का आनंद लेने या संघर्ष करने में बिताते हैं। | ||
Line 59: | Line 59: | ||
==सामान्य संरचना और लेआउट== | ==सामान्य संरचना और लेआउट== | ||
आम तौर पर | आम तौर पर पैटर्न भाषा या संग्रह का लेखक इसमें मौजूद सभी पैटर्न के लिए सामान्य संरचना चुनता है, प्रत्येक को संदर्भ, समस्या कथन, समाधान इत्यादि जैसे सामान्य खंडों में तोड़ता है। | ||
उदाहरण के लिए, क्रिस्टोफर अलेक्जेंडर के पैटर्न में प्रत्येक में | उदाहरण के लिए, क्रिस्टोफर अलेक्जेंडर के पैटर्न में प्रत्येक में संक्षिप्त नाम, रेटिंग (दो '*' प्रतीकों तक), संवेदनशील चित्र, संदर्भ विवरण, समस्या विवरण, उदाहरण और स्पष्टीकरण के साथ पाठ का लंबा हिस्सा, समाधान शामिल है। कथन, रेखाचित्र और आगे के संदर्भ। इस संरचना और लेआउट को कभी-कभी अलेक्जेंड्रियन रूप के रूप में जाना जाता है। | ||
अलेक्जेंडर अपने पैटर्न के विभिन्न अनुभागों को चिह्नित करने के लिए | अलेक्जेंडर अपने पैटर्न के विभिन्न अनुभागों को चिह्नित करने के लिए विशेष टेक्स्ट लेआउट का उपयोग करता है। उदाहरण के लिए, समस्या कथन और समाधान कथन बोल्ड फ़ॉन्ट में मुद्रित होते हैं, बाद वाला हमेशा इसलिए: कीवर्ड से पहले होता है। इसके बजाय कुछ लेखक स्पष्ट लेबल का उपयोग करते हैं, जो कुछ हद तक अतिरेक पैदा करता है। | ||
===अर्थपूर्ण नाम=== | ===अर्थपूर्ण नाम=== | ||
जब डिज़ाइन | जब डिज़ाइन टीम द्वारा किया जाता है, तो पैटर्न नाम शब्दावली बनाएंगे जिसे वे साझा कर सकते हैं। इससे पैटर्न नामों को याद रखना आसान और अत्यधिक वर्णनात्मक होना आवश्यक हो जाता है। अलेक्जेंडर के कार्यों के कुछ उदाहरण हैं विंडो प्लेस (यह परिभाषित करने में मदद करता है कि कमरे में खिड़कियां कहाँ होनी चाहिए) और ए प्लेस टू वेट (उदाहरण के लिए, बस स्टॉप और अस्पताल के प्रतीक्षा कक्षों की विशेषताओं को परिभाषित करने में मदद करता है)। | ||
== | ==सहयोगी नेटवर्क में एकत्रीकरण (पैटर्न भाषा)== | ||
पैटर्न भाषा, जैसा कि अलेक्जेंडर द्वारा कल्पना की गई थी, में पैटर्न से दूसरे पैटर्न के लिंक होते हैं, इसलिए जब किसी प्रोजेक्ट में पैटर्न को लागू करने की कोशिश की जाती है, तो डिजाइनर को अन्य पैटर्न की ओर धकेल दिया जाता है जो इसके संदर्भ में सहायक माने जाते हैं। | |||
अलेक्जेंडर की पुस्तक में, ऐसे लिंक संदर्भ भाग में एकत्र किए जाते हैं, और लिंक किए गए पैटर्न के संदर्भ भाग में गूँजते हैं - इस प्रकार समग्र संरचना | अलेक्जेंडर की पुस्तक में, ऐसे लिंक संदर्भ भाग में एकत्र किए जाते हैं, और लिंक किए गए पैटर्न के संदर्भ भाग में गूँजते हैं - इस प्रकार समग्र संरचना [[निर्देशित ग्राफ]] है। पैटर्न जो संदर्भों से जुड़ा होता है, आमतौर पर निचले पैमाने की समस्या को संबोधित करता है, जिसे उच्च-पैमाने की समस्या के भाग के रूप में सुझाया जाता है। उदाहरण के लिए, सार्वजनिक आउटडोर कक्ष पैटर्न में सीढ़ी सीटों का संदर्भ है। | ||
पैटर्न विवरण के बिना भी, ये लिंक, सार्थक नामों के साथ, | पैटर्न विवरण के बिना भी, ये लिंक, सार्थक नामों के साथ, संदेश देते हैं: बाहर जगह बनाते समय जहां लोग समय बिता सकते हैं (सार्वजनिक आउटडोर कक्ष), इसे सीढ़ियों से घेरने पर विचार करें जहां लोग बैठ सकें (सीढ़ी सीटें)। यदि आप कार्यालय (कार्यशालाएं और कार्यालय) की योजना बना रहे हैं, तो कार्यस्थलों को छोटे समूहों (छोटे कार्य समूहों) में व्यवस्थित करने पर विचार करें। अलेक्जेंडर का तर्क है कि नेटवर्क में कनेक्शन को पैटर्न के पाठ से भी अधिक सार्थक माना जा सकता है। | ||
अलेक्जेंडर की पुस्तक के लिंक स्पष्ट रूप से | अलेक्जेंडर की पुस्तक के लिंक स्पष्ट रूप से पदानुक्रमित नेटवर्क में परिणत होते हैं। अलेक्जेंडर व्याकरण के पदानुक्रम के समानांतर रेखा खींचता है - यह उसके लिए पैटर्न भाषा की बात करने का तर्क है। | ||
लिंकिंग का विचार आम तौर पर पैटर्न लेखकों के बीच स्वीकार किया जाता है, हालांकि लिंक के पीछे अर्थ संबंधी तर्क भिन्न हो सकते हैं। हालाँकि, कुछ लेखक गामा एट अल को पसंद करते हैं। [[डिजाइन पैटर्न्स]] में, पैटर्न लिंकिंग का बहुत कम उपयोग करें - संभवतः इसलिए क्योंकि यह उनके पैटर्न के संग्रह के लिए उतना मायने नहीं रखता था। ऐसे मामले में हम | लिंकिंग का विचार आम तौर पर पैटर्न लेखकों के बीच स्वीकार किया जाता है, हालांकि लिंक के पीछे अर्थ संबंधी तर्क भिन्न हो सकते हैं। हालाँकि, कुछ लेखक गामा एट अल को पसंद करते हैं। [[डिजाइन पैटर्न्स]] में, पैटर्न लिंकिंग का बहुत कम उपयोग करें - संभवतः इसलिए क्योंकि यह उनके पैटर्न के संग्रह के लिए उतना मायने नहीं रखता था। ऐसे मामले में हम पैटर्न भाषा के बजाय पैटर्न कैटलॉग के बारे में बात करेंगे।<ref name="dearden">{{cite journal | author = Andy Dearden, Janet Finlay | title = Pattern Languages in HCI: A critical review | date = January 2006 | journal = Human Computer Interaction | volume = 21 | issue = 1 }}</ref> | ||
===उपयोग=== | ===उपयोग=== | ||
अलेक्जेंडर ने उन लोगों को प्रोत्साहित किया जिन्होंने उसकी प्रणाली का उपयोग अपनी भाषा को अपने स्वयं के पैटर्न के साथ विस्तारित करने के लिए किया। इसे सक्षम करने के लिए, उनकी किताबें वास्तुकला या सिविल इंजीनियरिंग पर सख्ती से ध्यान केंद्रित नहीं करती हैं; वह पैटर्न भाषाओं की सामान्य विधि भी बताते हैं। ए पैटर्न लैंग्वेज पुस्तक की मूल अवधारणा यह थी कि इसे 3-रिंग बाइंडर के रूप में प्रकाशित किया जाएगा, ताकि बाद में पेज आसानी से जोड़े जा सकें; यह प्रकाशन में अव्यवहारिक साबित हुआ।<ref>Portland Urban Architecture Research Laboratory | अलेक्जेंडर ने उन लोगों को प्रोत्साहित किया जिन्होंने उसकी प्रणाली का उपयोग अपनी भाषा को अपने स्वयं के पैटर्न के साथ विस्तारित करने के लिए किया। इसे सक्षम करने के लिए, उनकी किताबें वास्तुकला या सिविल इंजीनियरिंग पर सख्ती से ध्यान केंद्रित नहीं करती हैं; वह पैटर्न भाषाओं की सामान्य विधि भी बताते हैं। ए पैटर्न लैंग्वेज पुस्तक की मूल अवधारणा यह थी कि इसे 3-रिंग बाइंडर के रूप में प्रकाशित किया जाएगा, ताकि बाद में पेज आसानी से जोड़े जा सकें; यह प्रकाशन में अव्यवहारिक साबित हुआ।<ref>Portland Urban Architecture Research Laboratory | ||
Symposium 2009, presentation by 4 of 6 original authors of ''A Pattern Language''.</ref> विभिन्न क्षेत्रों में विशेषज्ञता का दस्तावेजीकरण करने के लिए पैटर्न भाषा दृष्टिकोण का उपयोग किया गया है। कुछ उदाहरण [[डिज़ाइन पैटर्न (वास्तुकला)]], [[डिज़ाइन पैटर्न (कंप्यूटर विज्ञान)]], [[इंटरैक्शन डिज़ाइन पैटर्न]], [[शैक्षणिक पैटर्न]], [[पैटर्न बागवानी]], सामाजिक क्रिया पैटर्न और समूह सुविधा पैटर्न हैं। महत्वपूर्ण साझा समस्याओं पर | Symposium 2009, presentation by 4 of 6 original authors of ''A Pattern Language''.</ref> विभिन्न क्षेत्रों में विशेषज्ञता का दस्तावेजीकरण करने के लिए पैटर्न भाषा दृष्टिकोण का उपयोग किया गया है। कुछ उदाहरण [[डिज़ाइन पैटर्न (वास्तुकला)]], [[डिज़ाइन पैटर्न (कंप्यूटर विज्ञान)]], [[इंटरैक्शन डिज़ाइन पैटर्न]], [[शैक्षणिक पैटर्न]], [[पैटर्न बागवानी]], सामाजिक क्रिया पैटर्न और समूह सुविधा पैटर्न हैं। महत्वपूर्ण साझा समस्याओं पर साथ काम करने वाले विविध लोगों और समुदायों के लिए कार्यों के समन्वय में मदद करके [[नागरिक बुद्धि]]मत्ता को बढ़ावा देने के तरीके के रूप में पैटर्न भाषा दृष्टिकोण की भी सिफारिश की गई है।<ref>For additional discussion of motivation and rationale as well as examples and experiments, see: {{cite web |last=Schuler |first=Douglas |url=http://publicsphereproject.org/sites/default/files/Critical%20Enablers%20of%20Civic%20Intelligence.reduced.pdf |title=Choosing success: pattern languages as critical enablers of civic intelligence |publisher=Portland Urban Architecture Research Laboratory Conference, Portland, OR, 2009 |website=publicsphereproject.org |access-date=6 March 2017}}</ref> पैटर्न भाषाओं का उपयोग करने के साथ-साथ नई भाषाओं को बनाने के लिए अलेक्जेंडर की विशिष्टताएँ प्रभावशाली बनी हुई हैं, और उनकी पुस्तकों को असंबंधित क्षेत्रों के विशेषज्ञों द्वारा शैली के लिए संदर्भित किया जाता है। | ||
यह ध्यान रखना महत्वपूर्ण है कि [[एकीकृत मॉडलिंग भाषा]] या [[प्रवाह संचित्र]] प्रतीक संग्रह जैसे नोटेशन पैटर्न भाषाएं नहीं हैं। उनकी तुलना किसी वर्णमाला से अधिक निकटता से की जा सकती है: उनके प्रतीकों का उपयोग | यह ध्यान रखना महत्वपूर्ण है कि [[एकीकृत मॉडलिंग भाषा]] या [[प्रवाह संचित्र]] प्रतीक संग्रह जैसे नोटेशन पैटर्न भाषाएं नहीं हैं। उनकी तुलना किसी वर्णमाला से अधिक निकटता से की जा सकती है: उनके प्रतीकों का उपयोग पैटर्न भाषा का दस्तावेजीकरण करने के लिए किया जा सकता है, लेकिन वे स्वयं भाषा नहीं हैं। नुस्खा या चरणों का अन्य अनुक्रमिक सेट, जिसका प्रारंभ से अंत तक केवल ही सही पथ हो, पैटर्न भाषा नहीं है। हालाँकि, नई [[ व्यंजन विधि |व्यंजन विधि]] को डिज़ाइन करने की प्रक्रिया में पैटर्न भाषा के उपयोग से लाभ हो सकता है। | ||
=== | ===पैटर्न का सरल उदाहरण=== | ||
*नाम: चॉकलेटचिपरेशियो | *नाम: चॉकलेटचिपरेशियो | ||
*संदर्भ: आप परिवार और दोस्तों के लिए छोटे बैचों में चॉकलेट चिप कुकीज़ पका रहे हैं | *संदर्भ: आप परिवार और दोस्तों के लिए छोटे बैचों में चॉकलेट चिप कुकीज़ पका रहे हैं | ||
*पहले इन पैटर्नों पर विचार करें: शुगर रेशियो, आटा रेशियो, एग रेशियो | *पहले इन पैटर्नों पर विचार करें: शुगर रेशियो, आटा रेशियो, एग रेशियो | ||
*समस्या: चॉकलेट चिप्स और कुकी आटा का इष्टतम अनुपात निर्धारित करें | *समस्या: चॉकलेट चिप्स और कुकी आटा का इष्टतम अनुपात निर्धारित करें | ||
*समाधान: ध्यान दें कि ज्यादातर लोग चॉकलेट को चॉकलेट चिप कुकी का सबसे अच्छा हिस्सा मानते हैं। यह भी देखें कि बहुत अधिक चॉकलेट कुकी को | *समाधान: ध्यान दें कि ज्यादातर लोग चॉकलेट को चॉकलेट चिप कुकी का सबसे अच्छा हिस्सा मानते हैं। यह भी देखें कि बहुत अधिक चॉकलेट कुकी को साथ टिकने से रोक सकती है, जिससे उसका आकर्षण कम हो सकता है। चूंकि आप छोटे बैचों में खाना बना रहे हैं, इसलिए लागत पर विचार नहीं किया जाता है। इसलिए, अधिकतम मात्रा में चॉकलेट चिप्स का उपयोग करें जिसके परिणामस्वरूप वास्तव में मजबूत कुकी बनती है। | ||
*अगले पर विचार करें: NutRatio या CookingTime या FreezingMethod | *अगले पर विचार करें: NutRatio या CookingTime या FreezingMethod | ||
==उत्पत्ति== | ==उत्पत्ति== | ||
क्रिस्टोफर अलेक्जेंडर, | क्रिस्टोफर अलेक्जेंडर, वास्तुकार और लेखक, ने पैटर्न भाषा शब्द गढ़ा।<ref name="Alexander_Pattern_1977">{{Cite book | publisher = [[Oxford University Press]], USA | isbn = 978-0-19-501919-3 | last = Alexander | first = Christopher | title = एक पैटर्न भाषा: कस्बे, इमारतें, निर्माण| year = 1977 | page = [https://archive.org/details/patternlanguage00chri/page/1216 1216] | url-access = registration | url = https://archive.org/details/patternlanguage00chri/page/1216 }}</ref> उन्होंने इसका उपयोग इमारतों और कस्बों के [[ डिज़ाइन |डिज़ाइन]] और [[निर्माण]] की सामान्य समस्याओं और उन्हें कैसे हल किया जाना चाहिए, इसका उल्लेख करने के लिए किया। पुस्तक में प्रस्तावित समाधानों में शहरों और कस्बों की संरचना कैसे की जानी चाहिए से लेकर कमरे में खिड़कियाँ कहाँ रखी जानी चाहिए जैसे सुझाव शामिल हैं। | ||
पैटर्न भाषा दृष्टिकोण की रूपरेखा और दर्शन को शुरुआत में ए पैटर्न लैंग्वेज पुस्तक में लोकप्रिय बनाया गया था, जिसे 1970 के दशक के अंत में कैलिफोर्निया के बर्कले में सेंटर फॉर एनवायर्नमेंटल स्ट्रक्चर में क्रिस्टोफर अलेक्जेंडर और पांच सहयोगियों द्वारा लिखा गया था। जबकि ए पैटर्न लैंग्वेज में पहले पैटर्न, इंडिपेंडेंट रीजन (सबसे सामान्य) से लेकर आखिरी, थिंग्स फ्रॉम योर लाइफ तक 253 पैटर्न शामिल हैं, अलेक्जेंडर की पुस्तक [[निर्माण का कालातीत तरीका]] काम की प्रेरणा और उद्देश्य के बारे में अधिक गहराई से बताती है। पैटर्न और पैटर्न भाषा की निम्नलिखित परिभाषाएँ A पैटर्न भाषा से ली गई हैं:<ref name="Alexander_Pattern_1977"/><ब्लॉककोट> | पैटर्न भाषा दृष्टिकोण की रूपरेखा और दर्शन को शुरुआत में ए पैटर्न लैंग्वेज पुस्तक में लोकप्रिय बनाया गया था, जिसे 1970 के दशक के अंत में कैलिफोर्निया के बर्कले में सेंटर फॉर एनवायर्नमेंटल स्ट्रक्चर में क्रिस्टोफर अलेक्जेंडर और पांच सहयोगियों द्वारा लिखा गया था। जबकि ए पैटर्न लैंग्वेज में पहले पैटर्न, इंडिपेंडेंट रीजन (सबसे सामान्य) से लेकर आखिरी, थिंग्स फ्रॉम योर लाइफ तक 253 पैटर्न शामिल हैं, अलेक्जेंडर की पुस्तक [[निर्माण का कालातीत तरीका]] काम की प्रेरणा और उद्देश्य के बारे में अधिक गहराई से बताती है। पैटर्न और पैटर्न भाषा की निम्नलिखित परिभाषाएँ A पैटर्न भाषा से ली गई हैं:<ref name="Alexander_Pattern_1977"/><ब्लॉककोट> पैटर्न इमारत के संदर्भ में आवर्ती समस्या के बारहमासी समाधान का सावधानीपूर्वक वर्णन है, जो इमारत में जीवन लाने वाले कॉन्फ़िगरेशन में से का वर्णन करता है। प्रत्येक पैटर्न समस्या का वर्णन करता है जो हमारे वातावरण में बार-बार होती है, और फिर उस समस्या के मूल समाधान का वर्णन करती है, इस तरह से कि आप समाधान को ही तरीके से दो बार किए बिना, लाखों बार उपयोग कर सकते हैं।<ref name="Alexander_Pattern_1977"/></ब्लॉककोट> | ||
पैटर्न भाषा पैटर्न का नेटवर्क है जो दूसरे को बुलाती है। पैटर्न हमें डिज़ाइन के बारे में अंतर्दृष्टि और ज्ञान को याद रखने में मदद करते हैं और समाधान बनाने के लिए संयोजन में उपयोग किया जा सकता है। | |||
== अनुप्रयोग डोमेन == | == अनुप्रयोग डोमेन == | ||
क्रिस्टोफर अलेक्जेंडर के विचार को अन्य विषयों में अपनाया गया है, अक्सर मूल [[पैटर्न (वास्तुकला)]] की तुलना में बहुत अधिक, जैसा कि ए पैटर्न लैंग्वेज पुस्तक में दर्शाया गया है।<ref name="Alexander_Pattern_1977"/>1990 के दशक के उदाहरणों में सॉफ़्टवेयर इंजीनियरिंग में [[सॉफ़्टवेयर डिज़ाइन पैटर्न]] और, अधिक सामान्यतः, आर्किटेक्चरल पैटर्न (कंप्यूटर विज्ञान), साथ ही इंटरेक्शन डिज़ाइन पैटर्न शामिल हैं। 1990 के दशक के उत्तरार्ध से, शिक्षण में अच्छी प्रथाओं का दस्तावेजीकरण करने के लिए [[शैक्षणिक पैटर्न]] का उपयोग किया गया है।<ref>{{cite journal |last=Fincher |first=Sally |date=September 1999 |title=Analysis of design: an exploration of patterns and pattern languages for pedagogy |journal=Journal of Computers in Mathematics and Science Teaching |volume=18 |issue=3 |pages=331–348 |url=https://www.learntechlib.org/primary/p/15198/}}</ref> कम से कम 2000 के दशक के मध्य से, पैटर्न भाषा का विचार [[सिस्टम आर्किटेक्चर]] डिज़ाइन में पेश किया गया था <ref>{{cite journal |last1=Cloutier |first1=Robert J. |last2=Verma |first2=Dinesh |date=June 2007 |title=सिस्टम आर्किटेक्चर में पैटर्न की अवधारणा को लागू करना|journal=Systems Engineering |volume=10 |issue=2 |pages=138–154 |doi=10.1002/sys.20066|s2cid=16218191 }}</ref><ref>{{cite journal |last1=Cloutier |first1=Robert J. |last2=Muller |first2=Gerrit |last3=Verma |first3=Dinesh |last4=Nilchiani |first4=Roshanak |last5=Hole |first5=Eirik |last6=Bone |first6=Mary |date=March 2010 |title=संदर्भ आर्किटेक्चर की अवधारणा|journal=Systems Engineering |volume=13 |issue=1 |pages=14–27 |doi=10.1002/sys.20129|s2cid=10835558 }}</ref> और 66 पैटर्न के साथ [[विजय वैष्णवी]] और विलियम कुचलर द्वारा लिखित पुस्तक में डिजाइन विज्ञान (पद्धति) पैटर्न;<ref>Vaishnavi, V.K. and Kuechler, W. [http://www.crcpress.com/product/isbn/9781420059328?source=igodigital Design Science Research Methods and Patterns], Auerbach Publications, October 2007, 248 pages </ref> इस पुस्तक का दूसरा संशोधित एवं विस्तारित संस्करण 84 पैटर्न के साथ 2015 में प्रकाशित किया गया है।<ref>Vaishnavi. V.K. and Kuechler, W. [http://www.crcpress.com/product/isbn/9781498715256 Design Science Research Methods and Patterns, 2nd Edition], CRC Press, 2015, 415 pages</ref> पुस्तक लिबरेटिंग वॉयस: ए पैटर्न लैंग्वेज फॉर कम्युनिकेशन रिवोल्यूशन, जिसमें स्थिरता, लोकतंत्र और सकारात्मक सामाजिक परिवर्तन को बढ़ावा देने के लिए सूचना और संचार का उपयोग करने के लिए 136 पैटर्न शामिल हैं, 2008 में और भी अधिक पैटर्न वाली | क्रिस्टोफर अलेक्जेंडर के विचार को अन्य विषयों में अपनाया गया है, अक्सर मूल [[पैटर्न (वास्तुकला)]] की तुलना में बहुत अधिक, जैसा कि ए पैटर्न लैंग्वेज पुस्तक में दर्शाया गया है।<ref name="Alexander_Pattern_1977"/>1990 के दशक के उदाहरणों में सॉफ़्टवेयर इंजीनियरिंग में [[सॉफ़्टवेयर डिज़ाइन पैटर्न]] और, अधिक सामान्यतः, आर्किटेक्चरल पैटर्न (कंप्यूटर विज्ञान), साथ ही इंटरेक्शन डिज़ाइन पैटर्न शामिल हैं। 1990 के दशक के उत्तरार्ध से, शिक्षण में अच्छी प्रथाओं का दस्तावेजीकरण करने के लिए [[शैक्षणिक पैटर्न]] का उपयोग किया गया है।<ref>{{cite journal |last=Fincher |first=Sally |date=September 1999 |title=Analysis of design: an exploration of patterns and pattern languages for pedagogy |journal=Journal of Computers in Mathematics and Science Teaching |volume=18 |issue=3 |pages=331–348 |url=https://www.learntechlib.org/primary/p/15198/}}</ref> कम से कम 2000 के दशक के मध्य से, पैटर्न भाषा का विचार [[सिस्टम आर्किटेक्चर]] डिज़ाइन में पेश किया गया था <ref>{{cite journal |last1=Cloutier |first1=Robert J. |last2=Verma |first2=Dinesh |date=June 2007 |title=सिस्टम आर्किटेक्चर में पैटर्न की अवधारणा को लागू करना|journal=Systems Engineering |volume=10 |issue=2 |pages=138–154 |doi=10.1002/sys.20066|s2cid=16218191 }}</ref><ref>{{cite journal |last1=Cloutier |first1=Robert J. |last2=Muller |first2=Gerrit |last3=Verma |first3=Dinesh |last4=Nilchiani |first4=Roshanak |last5=Hole |first5=Eirik |last6=Bone |first6=Mary |date=March 2010 |title=संदर्भ आर्किटेक्चर की अवधारणा|journal=Systems Engineering |volume=13 |issue=1 |pages=14–27 |doi=10.1002/sys.20129|s2cid=10835558 }}</ref> और 66 पैटर्न के साथ [[विजय वैष्णवी]] और विलियम कुचलर द्वारा लिखित पुस्तक में डिजाइन विज्ञान (पद्धति) पैटर्न;<ref>Vaishnavi, V.K. and Kuechler, W. [http://www.crcpress.com/product/isbn/9781420059328?source=igodigital Design Science Research Methods and Patterns], Auerbach Publications, October 2007, 248 pages </ref> इस पुस्तक का दूसरा संशोधित एवं विस्तारित संस्करण 84 पैटर्न के साथ 2015 में प्रकाशित किया गया है।<ref>Vaishnavi. V.K. and Kuechler, W. [http://www.crcpress.com/product/isbn/9781498715256 Design Science Research Methods and Patterns, 2nd Edition], CRC Press, 2015, 415 pages</ref> पुस्तक लिबरेटिंग वॉयस: ए पैटर्न लैंग्वेज फॉर कम्युनिकेशन रिवोल्यूशन, जिसमें स्थिरता, लोकतंत्र और सकारात्मक सामाजिक परिवर्तन को बढ़ावा देने के लिए सूचना और संचार का उपयोग करने के लिए 136 पैटर्न शामिल हैं, 2008 में और भी अधिक पैटर्न वाली वेबसाइट के साथ प्रकाशित हुई थी।<ref>{{cite web |url=http://www.publicsphereproject.org/patterns/ |title=मुक्तिदायक आवाज़ पैटर्न भाषा|website=publicsphereproject.org |access-date=6 March 2017}}</ref> डेक ग्रुप वर्क्स: मीटिंग्स एंड अदर गैदरिंग्स में जीवन लाने के लिए पैटर्न भाषा 2011 में प्रकाशित हुई थी।<ref>{{cite web |url=http://groupworksdeck.org/ |title=समूह पैटर्न भाषा परियोजना|website=groupworksdeck.org |access-date=6 March 2017}}</ref> पैटर्न भाषा का विचार [[पर्माकल्चर]] डिज़ाइन में भी लागू किया गया है।<ref>{{cite book |last1=Jacke |first1=Dave |author-link1=Dave Jacke |last2=Toensmeier |first2=Eric |author-link2=Eric Toensmeier |date=2005 |chapter=A Forest Garden Pattern Language |title=Edible Forest Gardens, Volume II: Ecological Design And Practice for Temperate-Climate Permaculture |location=White River Junction, VT |publisher=[[Chelsea Green Publishing]] |pages=63–139 |isbn=1-931498-80-6 }}</ref>2020 में, [https://eitherorg.org/Ether/Org] परियोजना ने संगठनात्मक डिजाइन के लिए पैटर्न भाषा का दस्तावेजीकरण करना शुरू किया। | ||
[[ सप्ताह | सप्ताह]] के आविष्कारक, [[वार्ड कनिंघम]] ने [[माइकल महफ़ी]] के साथ मिलकर पेपर लिखा था जिसमें तर्क दिया गया था कि विकी और पैटर्न भाषाओं के बीच गहरे संबंध हैं, और विकी को वास्तव में पैटर्न के कुशल साझाकरण और संशोधन की सुविधा के लिए उपकरण के रूप में विकसित किया गया था।<ref>{{cite book |last1=Cunningham |first1=Ward |author-link1=Ward Cunningham |last2=Mehaffy |first2=Michael W. |author-link2=Michael Mehaffy |date=2013 |chapter=Wiki as pattern language |title=Proceedings of the 20th Conference on Pattern Languages of Programs, October 23–26, 2013, Monticello, Illinois |series=PLoP '13 |location=Corryton, TN |publisher=[[The Hillside Group]] |pages=32:1–32:14 |isbn=9781941652008 |chapter-url=http://dl.acm.org/citation.cfm?id=2725669.2725707|title-link=Pattern Languages of Programs }}</ref> | |||
==यह भी देखें== | ==यह भी देखें== | ||
{{Div col|colwidth=20em}} | {{Div col|colwidth=20em}} | ||
Line 138: | Line 136: | ||
===सामान्य तौर पर पैटर्न के बारे में=== | ===सामान्य तौर पर पैटर्न के बारे में=== | ||
* [https://hillside.net/index.php/a-pattern-भाषा-के लिए-पैटर्न-लेखन पैटर्न लेखन के लिए | * [https://hillside.net/index.php/a-pattern-भाषा-के लिए-पैटर्न-लेखन पैटर्न लेखन के लिए पैटर्न भाषा] जेरार्ड मेस्ज़ारोस और जिम डोबल द्वारा | ||
* [https://www.acadmedia.edu/1354848/PROJECT_ICARUS_STAKEHOLDER_SCENARIOS_FOR_AN_INTERSTELLAR_EXPLORATION_PROGRAM बड़े पैमाने पर एयरोस्पेस परियोजनाओं के लिए परिदृश्य विकास के लिए पैटर्न का उपयोग] | * [https://www.acadmedia.edu/1354848/PROJECT_ICARUS_STAKEHOLDER_SCENARIOS_FOR_AN_INTERSTELLAR_EXPLORATION_PROGRAM बड़े पैमाने पर एयरोस्पेस परियोजनाओं के लिए परिदृश्य विकास के लिए पैटर्न का उपयोग] | ||
* [http://torgronsund.wordpress.com/2010/01/06/lean-startup-business-model-pattern/ लीन स्टार्टअप बिजनेस मॉडल पैटर्न] | * [http://torgronsund.wordpress.com/2010/01/06/lean-startup-business-model-pattern/ लीन स्टार्टअप बिजनेस मॉडल पैटर्न] | ||
Line 145: | Line 143: | ||
===ऑनलाइन पैटर्न संग्रह=== | ===ऑनलाइन पैटर्न संग्रह=== | ||
* [http://www.pattermlangage.com/ पैटर्नभाषा.कॉम], पर्यावरण संरचना केंद्र द्वारा | * [http://www.pattermlangage.com/ पैटर्नभाषा.कॉम], पर्यावरण संरचना केंद्र द्वारा | ||
* [http://www.fusedgrid.ca/ फ़्यूज्ड ग्रिड] - | * [http://www.fusedgrid.ca/ फ़्यूज्ड ग्रिड] - समकालीन शहरी पैटर्न, पड़ोस के पैटर्न का संग्रह और संश्लेषण | ||
* [http://www.hcipatterns.org/ hcipatterns.org] - एचसीआई के लिए पैटर्न | * [http://www.hcipatterns.org/ hcipatterns.org] - एचसीआई के लिए पैटर्न | ||
* [http://www.c2.com/cgi/wiki?PatternIndex पोर्टलैंड पैटर्न रिपॉजिटरी] | * [http://www.c2.com/cgi/wiki?PatternIndex पोर्टलैंड पैटर्न रिपॉजिटरी] | ||
* [http://groupworksdeck.org समूह कार्य: बैठकों और अन्य समारोहों में जान डालने के लिए | * [http://groupworksdeck.org समूह कार्य: बैठकों और अन्य समारोहों में जान डालने के लिए पैटर्न भाषा] - समूह प्रक्रिया की पैटर्न भाषा | ||
* [http://liveingreatness.com/core-protocols/ कोर प्रोटोकॉल] - टीम संचार पैटर्न का | * [http://liveingreatness.com/core-protocols/ कोर प्रोटोकॉल] - टीम संचार पैटर्न का सेट | ||
* [http://www.publicsphereproject.org/patterns/lv मुक्त आवाज़ें! पैटर्न भाषा परियोजना] - [http://www.publicsphereproject.org/patterns_arabic अरबी], [http://www.publicsphereproject.org/patterns_chinese चीनी], और [http://www.publicsphereproject] में उपलब्ध पैटर्न के लघु संस्करण .org/patterns_spanish स्पैनिश] | * [http://www.publicsphereproject.org/patterns/lv मुक्त आवाज़ें! पैटर्न भाषा परियोजना] - [http://www.publicsphereproject.org/patterns_arabic अरबी], [http://www.publicsphereproject.org/patterns_chinese चीनी], और [http://www.publicsphereproject] में उपलब्ध पैटर्न के लघु संस्करण .org/patterns_spanish स्पैनिश] | ||
Revision as of 19:35, 3 July 2023
पैटर्न भाषा पैटर्न का संगठित और सुसंगत सेट है, जिनमें से प्रत्येक समस्या और समाधान के मूल का वर्णन करता है जिसका उपयोग विशेषज्ञता के विशिष्ट क्षेत्र में कई तरीकों से किया जा सकता है। यह शब्द वास्तुकार क्रिस्टोफर अलेक्जेंडर द्वारा गढ़ा गया था और उनकी 1977 की पुस्तक ए पैटर्न लैंग्वेज से लोकप्रिय हुआ।
पैटर्न भाषा, परस्पर जुड़े पैटर्न के सेट के माध्यम से, मानव प्रयास के विशेष क्षेत्र में जीवंतता लाने वाले गहन ज्ञान को व्यक्त करने का प्रयास भी हो सकती है। जीवंतता उस गुणवत्ता के लिए प्लेसहोल्डर शब्द है जिसका कोई नाम नहीं है: संपूर्णता, भावना या अनुग्रह की भावना, जो अलग-अलग रूप में होते हुए भी सटीक और अनुभवजन्य रूप से सत्यापन योग्य है।[1] अलेक्जेंडर का दावा है कि आम लोग इस डिज़ाइन दृष्टिकोण का उपयोग करके बहुत बड़ी, जटिल डिज़ाइन समस्याओं को सफलतापूर्वक हल कर सकते हैं।
पैटर्न क्या है?
जब कोई डिज़ाइनर कुछ डिज़ाइन करता है - चाहे वह घर हो, कंप्यूटर प्रोग्राम हो, या लैंप हो - तो उसे समस्याओं को हल करने के तरीके के बारे में कई निर्णय लेने होंगे। एकल समस्या को उसके विशिष्ट स्थान (वाक्यविन्यास) के साथ प्रलेखित किया जाता है, और जंगल में देखे जाने वाले सबसे आम और मान्यता प्राप्त अच्छे समाधान के साथ उपयोग (व्याकरण) किया जाता है, जैसे शब्दकोश में देखे गए उदाहरण। ऐसी प्रत्येक प्रविष्टि एकल डिज़ाइन पैटर्न है। प्रत्येक पैटर्न में नाम, वर्णनात्मक प्रविष्टि और कुछ क्रॉस-रेफरेंस होते हैं, जो शब्दकोश प्रविष्टि की तरह होते हैं। प्रलेखित पैटर्न को स्पष्ट करना चाहिए कि पैटर्न के संदर्भ में वह समाधान अच्छा क्यों है।
मौलिक या सार्वभौमिक पैटर्न जैसे कि दरवाजा या साझेदारी डिजाइन के बहुमुखी आदर्श हैं, या तो अनुभव में पाए जाते हैं या अभ्यास में घटकों के रूप में उपयोग के लिए, स्पष्ट रूप से आवर्ती संदर्भों और परिस्थितियों में बलों के समग्र संकल्प के रूप में वर्णित हैं, चाहे वास्तुकला, चिकित्सा, सॉफ्टवेयर विकास में हों या शासन, आदि। पैटर्न का आविष्कार किया जा सकता है या पाया और अध्ययन किया जा सकता है, जैसे कि डिजाइन के स्वाभाविक रूप से होने वाले पैटर्न जो मानव वातावरण की विशेषता रखते हैं।[2] सभी भाषाओं की तरह, पैटर्न भाषा में शब्दावली, वाक्यविन्यास और व्याकरण होता है - लेकिन पैटर्न भाषा संचार के अलावा कुछ जटिल गतिविधि पर लागू होती है। डिज़ाइन के लिए पैटर्न भाषाओं में, भाग इस प्रकार टूटते हैं:
- भाषा विवरण - शब्दावली - रुचि के क्षेत्र में समस्याओं के नामित, वर्णित समाधानों का संग्रह है। इन्हें डिज़ाइन पैटर्न कहा जाता है। इसलिए, उदाहरण के लिए, वास्तुकला की भाषा वस्तुओं का वर्णन करती है जैसे: बस्तियाँ, इमारतें, कमरे, खिड़कियाँ, कुंडी, आदि।
- प्रत्येक समाधान में वाक्यविन्यास, विवरण शामिल होता है जो दिखाता है कि समाधान बड़े, अधिक व्यापक या अधिक अमूर्त डिज़ाइन में कहाँ फिट बैठता है। यह स्वचालित रूप से समाधान को अन्य आवश्यक समाधानों के वेब से जोड़ता है। उदाहरण के लिए, कमरों में रोशनी पाने के तरीके और लोगों को अंदर और बाहर लाने के तरीके होते हैं।
- समाधान में व्याकरण शामिल है जो बताता है कि समाधान किसी समस्या को कैसे हल करता है या लाभ पैदा करता है। इसलिए, यदि लाभ अनावश्यक है, तो समाधान का उपयोग नहीं किया जाता है। शायद पैसे या अन्य संसाधनों को बचाने के लिए डिज़ाइन के उस हिस्से को खाली छोड़ा जा सकता है; यदि लोगों को किसी कमरे में प्रवेश करने के लिए प्रतीक्षा करने की आवश्यकता नहीं है, तो साधारण द्वार प्रतीक्षा कक्ष की जगह ले सकता है।
- भाषा विवरण में, व्याकरण और वाक्यविन्यास क्रॉस इंडेक्स (अक्सर पैटर्न नामों के शाब्दिक वर्णमाला सूचकांक के साथ) अन्य नामित समाधानों के लिए, ताकि डिजाइनर समाधान से संबंधित, आवश्यक समाधानों के बारे में जल्दी से सोच सकें और उन्हें तार्किक तरीके से दस्तावेजित कर सकें। क्रिस्टोफर अलेक्जेंडर की पुस्तक ए पैटर्न लैंग्वेज में, पैटर्न अलग वर्णमाला सूचकांक के साथ, आकार के अनुसार घटते क्रम में हैं।
- भाषा के सूचकांक में रिश्तों का जाल डिजाइन प्रक्रिया के माध्यम से कई रास्ते प्रदान करता है।
यह डिज़ाइन कार्य को सरल बनाता है क्योंकि डिज़ाइनर जिस समस्या को समझते हैं उसके किसी भी भाग से प्रक्रिया शुरू कर सकते हैं और अज्ञात भागों की ओर काम कर सकते हैं। साथ ही, यदि पैटर्न भाषा ने कई परियोजनाओं के लिए अच्छा काम किया है, तो यह विश्वास करने का कारण है कि डिजाइनर जो पहले डिजाइन समस्या को पूरी तरह से नहीं समझता है, वह भी डिजाइन प्रक्रिया को पूरा करेगा, और परिणाम प्रयोग करने योग्य होगा। उदाहरण के लिए, अंदर आने वाले स्कीयर को बर्फ़ गिरानी होगी और उपकरण संग्रहीत करने होंगे। गन्दी बर्फ और बूट क्लीनर को बाहर रहना चाहिए। उपकरण को देखभाल की ज़रूरत है, इसलिए रैक अंदर होने चाहिए।
कई पैटर्न भाषा बनाते हैं
जिस तरह किसी बोली जाने वाली भाषा को उपयोगी बनाने के लिए शब्दों में व्याकरण और शब्दार्थ का एक-दूसरे से संबंध होना चाहिए, उसी तरह पैटर्न भाषा बनाने के लिए डिज़ाइन पैटर्न को स्थिति और उपयोगिता क्रम में एक-दूसरे से संबंधित होना चाहिए। क्रिस्टोफर अलेक्जेंडर का काम अपघटन की प्रक्रिया का वर्णन करता है, जिसमें डिजाइनर के पास समस्या होती है (शायद व्यावसायिक असाइनमेंट), समाधान का चयन करता है, फिर बड़े समाधान के परिणामस्वरूप नई, छोटी समस्याओं की खोज करता है। कभी-कभी, छोटी समस्याओं का कोई समाधान नहीं होता है, और अलग बड़े समाधान का चयन करना पड़ता है। अंततः शेष सभी डिज़ाइन समस्याएं इतनी छोटी या इतनी नियमित हैं कि बिल्डरों द्वारा सुधार करके हल किया जा सकता है, और डिज़ाइन तैयार हो जाता है।
समस्या के आधार पर वास्तविक संगठनात्मक संरचना (पदानुक्रम, पुनरावृत्त विधि, आदि) को डिजाइनर के विवेक पर छोड़ दिया जाता है। यह स्पष्ट रूप से डिजाइनर को कुछ छोटे हिस्से से शुरू करके डिजाइन का पता लगाने की सुविधा देता है। जब ऐसा होता है, तो डिजाइनर के लिए यह महसूस करना आम बात है कि समस्या वास्तव में बड़े समाधान का हिस्सा है। इस बिंदु पर, डिज़ाइन लगभग हमेशा बेहतर डिज़ाइन बन जाता है।
इसलिए, भाषा में, प्रत्येक पैटर्न को अन्य पैटर्न और समग्र रूप से भाषा के साथ अपने संबंधों को इंगित करना होता है। इससे भाषा का उपयोग करने वाले डिजाइनर को उन संबंधित समस्याओं के बारे में काफी मार्गदर्शन मिलता है जिन्हें हल किया जाना चाहिए।
किसी बाहरी विशेषज्ञ से पैटर्न भाषा लागू कराने का सबसे कठिन हिस्सा वास्तव में हल की जाने वाली समस्याओं की विश्वसनीय, पूरी सूची प्राप्त करना है। निःसंदेह, समस्याओं से सबसे अधिक परिचित वे लोग हैं जिन्हें डिज़ाइन की आवश्यकता है। इसलिए, अलेक्जेंडर ने प्रसिद्ध रूप से संबंधित, सशक्त उपयोगकर्ताओं द्वारा साइट पर सुधार की वकालत की,[3][4] बहुत व्यावहारिक बड़े पैमाने पर प्रारंभिक समाधान बनाने, डिज़ाइन की उपयोगिता को अधिकतम करने और डिज़ाइन के पुनर्कार्य को कम करने का शक्तिशाली तरीका। वास्तव में, वास्तुकला के उपयोगकर्ताओं को सशक्त बनाने की इच्छा ने अलेक्जेंडर को सबसे पहले वास्तुकला के लिए पैटर्न भाषा परियोजना शुरू करने के लिए प्रेरित किया।
किसी संदर्भ में डिज़ाइन समस्याएँ
डिज़ाइन पैटर्न का महत्वपूर्ण पहलू उन प्रमुख विचारों की पहचान करना और दस्तावेज़ीकरण करना है जो अच्छी प्रणाली को खराब प्रणाली (जो घर, कंप्यूटर प्रोग्राम या दैनिक उपयोग की वस्तु हो सकती है) से अलग बनाते हैं, और भविष्य के डिजाइन में सहायता करते हैं। सिस्टम. पैटर्न में व्यक्त किया गया विचार इतना सामान्य होना चाहिए कि उसे उसके संदर्भ में बहुत अलग प्रणालियों में लागू किया जा सके, लेकिन फिर भी रचनात्मक मार्गदर्शन देने के लिए पर्याप्त विशिष्ट होना चाहिए।
स्थितियों की वह श्रृंखला जिसमें पैटर्न में संबोधित समस्याएँ और समाधान लागू होते हैं, उसे उसका संदर्भ कहा जाता है। प्रत्येक पैटर्न में महत्वपूर्ण हिस्सा इस संदर्भ का वर्णन करना है। उदाहरण आगे यह स्पष्ट कर सकते हैं कि पैटर्न बहुत भिन्न स्थितियों पर कैसे लागू होता है।
उदाहरण के लिए, अलेक्जेंडर का पैटर्न 'ए प्लेस टू वेट' सर्जरी में प्रतीक्षा कक्षों की तरह ही बस स्टॉप को संबोधित करता है, जबकि अभी भी सहायक और रचनात्मक समाधान प्रस्तावित करता है। डिज़ाइन पैटर्न| गामा एट अल द्वारा गैंग-ऑफ-फोर पुस्तक डिजाइन पैटर्न। ऐसे समाधान प्रस्तावित करता है जो प्रोग्रामिंग भाषा और प्रोग्राम के एप्लिकेशन डोमेन से स्वतंत्र हों।
फिर भी, पैटर्न में वर्णित समस्याएं और समाधान तरफ अमूर्तता और व्यापकता के स्तर और दूसरी तरफ विशिष्टता के स्तर में भिन्न हो सकते हैं। अंततः यह लेखक की प्राथमिकताओं पर निर्भर करता है। हालाँकि, यहां तक कि बहुत ही अमूर्त पैटर्न में भी आमतौर पर ऐसे उदाहरण होंगे जो स्वभाव से, बिल्कुल ठोस और विशिष्ट हैं।
पैटर्न इस बात में भी भिन्न हो सकते हैं कि वे वास्तविक दुनिया में कितनी दूर तक सिद्ध हैं। अलेक्जेंडर प्रत्येक पैटर्न को शून्य, या दो सितारों की रेटिंग देता है, जो दर्शाता है कि वे वास्तविक दुनिया के उदाहरणों में कितने अच्छे साबित हुए हैं। आम तौर पर यह दावा किया जाता है कि सभी पैटर्न को कम से कम कुछ मौजूदा वास्तविक दुनिया के उदाहरणों की आवश्यकता होती है। हालाँकि, अभी तक लागू न किए गए विचारों को पैटर्न-जैसे प्रारूप में दस्तावेज़ित करना संभव है।
अलेक्जेंडर की पुस्तक में पैटर्न भी उनके पैमाने के स्तर में भिन्न हैं - कुछ वर्णन करते हैं कि शहर या पड़ोस कैसे बनाया जाए, अन्य व्यक्तिगत इमारतों और कमरों के इंटीरियर से संबंधित हैं। अलेक्जेंडर निम्न-स्तर की कलाकृतियों को बड़े पैमाने की दुनिया के रचनात्मक तत्वों के रूप में देखता है, इसलिए उन्हें सहयोगी नेटवर्क (पैटर्न भाषा) में #एकत्रीकरण से जोड़ा जा सकता है।
बलों का संतुलन
पैटर्न को उन समस्याओं का वर्णन करना चाहिए जिन्हें वह हल करना चाहता है, वह संदर्भ या स्थिति जहां ये समस्याएं उत्पन्न होती हैं, और वे स्थितियाँ जिनके तहत प्रस्तावित समाधानों की सिफारिश की जा सकती है।
अक्सर ये समस्याएँ विभिन्न हितों या ताकतों के टकराव से उत्पन्न होती हैं। संवाद के रूप में पैटर्न उभरता है जो तब ताकतों को संतुलित करने और अंततः निर्णय लेने में मदद करेगा।
उदाहरण के लिए, वायरलेस टेलीफोन का सुझाव देने वाला पैटर्न हो सकता है। बलों को संवाद करने की आवश्यकता होगी, और ही समय में अन्य काम करने की आवश्यकता होगी (खाना बनाना, बुकशेल्फ़ का निरीक्षण करना)। बहुत विशिष्ट पैटर्न सिर्फ वायरलेस टेलीफोन होगा। अधिक सामान्य पैटर्न वायरलेस डिवाइस या माध्यमिक गतिविधि होंगे, जो सुझाव देते हैं कि माध्यमिक गतिविधि (जैसे फोन पर बात करना, या अपनी जींस की जेब का निरीक्षण करना) को अन्य गतिविधियों में हस्तक्षेप नहीं करना चाहिए।
हालांकि इसके संदर्भ में काफी अनिर्दिष्ट है, माध्यमिक गतिविधि पैटर्न में बल वायरलेस टेलीफोन के समान हैं। इस प्रकार, प्रतिस्पर्धी ताकतों को पैटर्न में व्यक्त डिजाइन अवधारणा के सार के हिस्से के रूप में देखा जा सकता है।
पैटर्न का अपना तर्क होता है
आम तौर पर पैटर्न में कुछ दिए गए मूल्यों का जिक्र करते हुए तर्क होता है। क्रिस्टोफर अलेक्जेंडर के लिए, उन लोगों के बारे में सोचना सबसे महत्वपूर्ण है जो वास्तुकला के टुकड़े के संपर्क में आएंगे। उनके प्रमुख मूल्यों में से इन लोगों को अधिक जीवंत महसूस कराना है। वह बिना नाम (QWAN) के गुणवत्ता के बारे में बात करते हैं।
अधिक आम तौर पर, हम कह सकते हैं कि अच्छी प्रणाली को उन लोगों द्वारा दैनिक जीवन के संवर्धन के रूप में स्वीकार किया जाना चाहिए, स्वागत किया जाना चाहिए और खुशी से अपनाया जाना चाहिए जो इसका उपयोग करना चाहते हैं, या - इससे भी बेहतर - उन सभी लोगों द्वारा जो इसे प्रभावित करते हैं। उदाहरण के लिए, सड़क कैफे पर चर्चा करते समय, अलेक्जेंडर अतिथि की संभावित इच्छाओं पर चर्चा करता है, लेकिन उन लोगों का भी उल्लेख करता है जो बस चलते हैं।
यही सोच टेलीफोन और कारों जैसे तकनीकी उपकरणों, किसी प्रोजेक्ट पर काम करने वाली टीम जैसी सामाजिक संरचनाओं या कंप्यूटर प्रोग्राम के यूजर इंटरफेस पर भी लागू की जा सकती है। उदाहरण के लिए, किसी सॉफ़्टवेयर सिस्टम के गुणों का मूल्यांकन यह देखकर किया जा सकता है कि उपयोगकर्ता अपना समय सिस्टम का आनंद लेने या संघर्ष करने में बिताते हैं।
मानव जीवन पर प्रभावों पर ध्यान केंद्रित करके, हम उन पैटर्न की पहचान कर सकते हैं जो बदलती प्रौद्योगिकी से स्वतंत्र हैं, और इस प्रकार कालातीत गुणवत्ता (अलेक्जेंडर) पा सकते हैं।
सामान्य संरचना और लेआउट
आम तौर पर पैटर्न भाषा या संग्रह का लेखक इसमें मौजूद सभी पैटर्न के लिए सामान्य संरचना चुनता है, प्रत्येक को संदर्भ, समस्या कथन, समाधान इत्यादि जैसे सामान्य खंडों में तोड़ता है।
उदाहरण के लिए, क्रिस्टोफर अलेक्जेंडर के पैटर्न में प्रत्येक में संक्षिप्त नाम, रेटिंग (दो '*' प्रतीकों तक), संवेदनशील चित्र, संदर्भ विवरण, समस्या विवरण, उदाहरण और स्पष्टीकरण के साथ पाठ का लंबा हिस्सा, समाधान शामिल है। कथन, रेखाचित्र और आगे के संदर्भ। इस संरचना और लेआउट को कभी-कभी अलेक्जेंड्रियन रूप के रूप में जाना जाता है।
अलेक्जेंडर अपने पैटर्न के विभिन्न अनुभागों को चिह्नित करने के लिए विशेष टेक्स्ट लेआउट का उपयोग करता है। उदाहरण के लिए, समस्या कथन और समाधान कथन बोल्ड फ़ॉन्ट में मुद्रित होते हैं, बाद वाला हमेशा इसलिए: कीवर्ड से पहले होता है। इसके बजाय कुछ लेखक स्पष्ट लेबल का उपयोग करते हैं, जो कुछ हद तक अतिरेक पैदा करता है।
अर्थपूर्ण नाम
जब डिज़ाइन टीम द्वारा किया जाता है, तो पैटर्न नाम शब्दावली बनाएंगे जिसे वे साझा कर सकते हैं। इससे पैटर्न नामों को याद रखना आसान और अत्यधिक वर्णनात्मक होना आवश्यक हो जाता है। अलेक्जेंडर के कार्यों के कुछ उदाहरण हैं विंडो प्लेस (यह परिभाषित करने में मदद करता है कि कमरे में खिड़कियां कहाँ होनी चाहिए) और ए प्लेस टू वेट (उदाहरण के लिए, बस स्टॉप और अस्पताल के प्रतीक्षा कक्षों की विशेषताओं को परिभाषित करने में मदद करता है)।
सहयोगी नेटवर्क में एकत्रीकरण (पैटर्न भाषा)
पैटर्न भाषा, जैसा कि अलेक्जेंडर द्वारा कल्पना की गई थी, में पैटर्न से दूसरे पैटर्न के लिंक होते हैं, इसलिए जब किसी प्रोजेक्ट में पैटर्न को लागू करने की कोशिश की जाती है, तो डिजाइनर को अन्य पैटर्न की ओर धकेल दिया जाता है जो इसके संदर्भ में सहायक माने जाते हैं।
अलेक्जेंडर की पुस्तक में, ऐसे लिंक संदर्भ भाग में एकत्र किए जाते हैं, और लिंक किए गए पैटर्न के संदर्भ भाग में गूँजते हैं - इस प्रकार समग्र संरचना निर्देशित ग्राफ है। पैटर्न जो संदर्भों से जुड़ा होता है, आमतौर पर निचले पैमाने की समस्या को संबोधित करता है, जिसे उच्च-पैमाने की समस्या के भाग के रूप में सुझाया जाता है। उदाहरण के लिए, सार्वजनिक आउटडोर कक्ष पैटर्न में सीढ़ी सीटों का संदर्भ है।
पैटर्न विवरण के बिना भी, ये लिंक, सार्थक नामों के साथ, संदेश देते हैं: बाहर जगह बनाते समय जहां लोग समय बिता सकते हैं (सार्वजनिक आउटडोर कक्ष), इसे सीढ़ियों से घेरने पर विचार करें जहां लोग बैठ सकें (सीढ़ी सीटें)। यदि आप कार्यालय (कार्यशालाएं और कार्यालय) की योजना बना रहे हैं, तो कार्यस्थलों को छोटे समूहों (छोटे कार्य समूहों) में व्यवस्थित करने पर विचार करें। अलेक्जेंडर का तर्क है कि नेटवर्क में कनेक्शन को पैटर्न के पाठ से भी अधिक सार्थक माना जा सकता है।
अलेक्जेंडर की पुस्तक के लिंक स्पष्ट रूप से पदानुक्रमित नेटवर्क में परिणत होते हैं। अलेक्जेंडर व्याकरण के पदानुक्रम के समानांतर रेखा खींचता है - यह उसके लिए पैटर्न भाषा की बात करने का तर्क है।
लिंकिंग का विचार आम तौर पर पैटर्न लेखकों के बीच स्वीकार किया जाता है, हालांकि लिंक के पीछे अर्थ संबंधी तर्क भिन्न हो सकते हैं। हालाँकि, कुछ लेखक गामा एट अल को पसंद करते हैं। डिजाइन पैटर्न्स में, पैटर्न लिंकिंग का बहुत कम उपयोग करें - संभवतः इसलिए क्योंकि यह उनके पैटर्न के संग्रह के लिए उतना मायने नहीं रखता था। ऐसे मामले में हम पैटर्न भाषा के बजाय पैटर्न कैटलॉग के बारे में बात करेंगे।[5]
उपयोग
अलेक्जेंडर ने उन लोगों को प्रोत्साहित किया जिन्होंने उसकी प्रणाली का उपयोग अपनी भाषा को अपने स्वयं के पैटर्न के साथ विस्तारित करने के लिए किया। इसे सक्षम करने के लिए, उनकी किताबें वास्तुकला या सिविल इंजीनियरिंग पर सख्ती से ध्यान केंद्रित नहीं करती हैं; वह पैटर्न भाषाओं की सामान्य विधि भी बताते हैं। ए पैटर्न लैंग्वेज पुस्तक की मूल अवधारणा यह थी कि इसे 3-रिंग बाइंडर के रूप में प्रकाशित किया जाएगा, ताकि बाद में पेज आसानी से जोड़े जा सकें; यह प्रकाशन में अव्यवहारिक साबित हुआ।[6] विभिन्न क्षेत्रों में विशेषज्ञता का दस्तावेजीकरण करने के लिए पैटर्न भाषा दृष्टिकोण का उपयोग किया गया है। कुछ उदाहरण डिज़ाइन पैटर्न (वास्तुकला), डिज़ाइन पैटर्न (कंप्यूटर विज्ञान), इंटरैक्शन डिज़ाइन पैटर्न, शैक्षणिक पैटर्न, पैटर्न बागवानी, सामाजिक क्रिया पैटर्न और समूह सुविधा पैटर्न हैं। महत्वपूर्ण साझा समस्याओं पर साथ काम करने वाले विविध लोगों और समुदायों के लिए कार्यों के समन्वय में मदद करके नागरिक बुद्धिमत्ता को बढ़ावा देने के तरीके के रूप में पैटर्न भाषा दृष्टिकोण की भी सिफारिश की गई है।[7] पैटर्न भाषाओं का उपयोग करने के साथ-साथ नई भाषाओं को बनाने के लिए अलेक्जेंडर की विशिष्टताएँ प्रभावशाली बनी हुई हैं, और उनकी पुस्तकों को असंबंधित क्षेत्रों के विशेषज्ञों द्वारा शैली के लिए संदर्भित किया जाता है।
यह ध्यान रखना महत्वपूर्ण है कि एकीकृत मॉडलिंग भाषा या प्रवाह संचित्र प्रतीक संग्रह जैसे नोटेशन पैटर्न भाषाएं नहीं हैं। उनकी तुलना किसी वर्णमाला से अधिक निकटता से की जा सकती है: उनके प्रतीकों का उपयोग पैटर्न भाषा का दस्तावेजीकरण करने के लिए किया जा सकता है, लेकिन वे स्वयं भाषा नहीं हैं। नुस्खा या चरणों का अन्य अनुक्रमिक सेट, जिसका प्रारंभ से अंत तक केवल ही सही पथ हो, पैटर्न भाषा नहीं है। हालाँकि, नई व्यंजन विधि को डिज़ाइन करने की प्रक्रिया में पैटर्न भाषा के उपयोग से लाभ हो सकता है।
पैटर्न का सरल उदाहरण
- नाम: चॉकलेटचिपरेशियो
- संदर्भ: आप परिवार और दोस्तों के लिए छोटे बैचों में चॉकलेट चिप कुकीज़ पका रहे हैं
- पहले इन पैटर्नों पर विचार करें: शुगर रेशियो, आटा रेशियो, एग रेशियो
- समस्या: चॉकलेट चिप्स और कुकी आटा का इष्टतम अनुपात निर्धारित करें
- समाधान: ध्यान दें कि ज्यादातर लोग चॉकलेट को चॉकलेट चिप कुकी का सबसे अच्छा हिस्सा मानते हैं। यह भी देखें कि बहुत अधिक चॉकलेट कुकी को साथ टिकने से रोक सकती है, जिससे उसका आकर्षण कम हो सकता है। चूंकि आप छोटे बैचों में खाना बना रहे हैं, इसलिए लागत पर विचार नहीं किया जाता है। इसलिए, अधिकतम मात्रा में चॉकलेट चिप्स का उपयोग करें जिसके परिणामस्वरूप वास्तव में मजबूत कुकी बनती है।
- अगले पर विचार करें: NutRatio या CookingTime या FreezingMethod
उत्पत्ति
क्रिस्टोफर अलेक्जेंडर, वास्तुकार और लेखक, ने पैटर्न भाषा शब्द गढ़ा।[3] उन्होंने इसका उपयोग इमारतों और कस्बों के डिज़ाइन और निर्माण की सामान्य समस्याओं और उन्हें कैसे हल किया जाना चाहिए, इसका उल्लेख करने के लिए किया। पुस्तक में प्रस्तावित समाधानों में शहरों और कस्बों की संरचना कैसे की जानी चाहिए से लेकर कमरे में खिड़कियाँ कहाँ रखी जानी चाहिए जैसे सुझाव शामिल हैं।
पैटर्न भाषा दृष्टिकोण की रूपरेखा और दर्शन को शुरुआत में ए पैटर्न लैंग्वेज पुस्तक में लोकप्रिय बनाया गया था, जिसे 1970 के दशक के अंत में कैलिफोर्निया के बर्कले में सेंटर फॉर एनवायर्नमेंटल स्ट्रक्चर में क्रिस्टोफर अलेक्जेंडर और पांच सहयोगियों द्वारा लिखा गया था। जबकि ए पैटर्न लैंग्वेज में पहले पैटर्न, इंडिपेंडेंट रीजन (सबसे सामान्य) से लेकर आखिरी, थिंग्स फ्रॉम योर लाइफ तक 253 पैटर्न शामिल हैं, अलेक्जेंडर की पुस्तक निर्माण का कालातीत तरीका काम की प्रेरणा और उद्देश्य के बारे में अधिक गहराई से बताती है। पैटर्न और पैटर्न भाषा की निम्नलिखित परिभाषाएँ A पैटर्न भाषा से ली गई हैं:[3]<ब्लॉककोट> पैटर्न इमारत के संदर्भ में आवर्ती समस्या के बारहमासी समाधान का सावधानीपूर्वक वर्णन है, जो इमारत में जीवन लाने वाले कॉन्फ़िगरेशन में से का वर्णन करता है। प्रत्येक पैटर्न समस्या का वर्णन करता है जो हमारे वातावरण में बार-बार होती है, और फिर उस समस्या के मूल समाधान का वर्णन करती है, इस तरह से कि आप समाधान को ही तरीके से दो बार किए बिना, लाखों बार उपयोग कर सकते हैं।[3]</ब्लॉककोट>
पैटर्न भाषा पैटर्न का नेटवर्क है जो दूसरे को बुलाती है। पैटर्न हमें डिज़ाइन के बारे में अंतर्दृष्टि और ज्ञान को याद रखने में मदद करते हैं और समाधान बनाने के लिए संयोजन में उपयोग किया जा सकता है।
अनुप्रयोग डोमेन
क्रिस्टोफर अलेक्जेंडर के विचार को अन्य विषयों में अपनाया गया है, अक्सर मूल पैटर्न (वास्तुकला) की तुलना में बहुत अधिक, जैसा कि ए पैटर्न लैंग्वेज पुस्तक में दर्शाया गया है।[3]1990 के दशक के उदाहरणों में सॉफ़्टवेयर इंजीनियरिंग में सॉफ़्टवेयर डिज़ाइन पैटर्न और, अधिक सामान्यतः, आर्किटेक्चरल पैटर्न (कंप्यूटर विज्ञान), साथ ही इंटरेक्शन डिज़ाइन पैटर्न शामिल हैं। 1990 के दशक के उत्तरार्ध से, शिक्षण में अच्छी प्रथाओं का दस्तावेजीकरण करने के लिए शैक्षणिक पैटर्न का उपयोग किया गया है।[8] कम से कम 2000 के दशक के मध्य से, पैटर्न भाषा का विचार सिस्टम आर्किटेक्चर डिज़ाइन में पेश किया गया था [9][10] और 66 पैटर्न के साथ विजय वैष्णवी और विलियम कुचलर द्वारा लिखित पुस्तक में डिजाइन विज्ञान (पद्धति) पैटर्न;[11] इस पुस्तक का दूसरा संशोधित एवं विस्तारित संस्करण 84 पैटर्न के साथ 2015 में प्रकाशित किया गया है।[12] पुस्तक लिबरेटिंग वॉयस: ए पैटर्न लैंग्वेज फॉर कम्युनिकेशन रिवोल्यूशन, जिसमें स्थिरता, लोकतंत्र और सकारात्मक सामाजिक परिवर्तन को बढ़ावा देने के लिए सूचना और संचार का उपयोग करने के लिए 136 पैटर्न शामिल हैं, 2008 में और भी अधिक पैटर्न वाली वेबसाइट के साथ प्रकाशित हुई थी।[13] डेक ग्रुप वर्क्स: मीटिंग्स एंड अदर गैदरिंग्स में जीवन लाने के लिए पैटर्न भाषा 2011 में प्रकाशित हुई थी।[14] पैटर्न भाषा का विचार पर्माकल्चर डिज़ाइन में भी लागू किया गया है।[15]2020 में, [1] परियोजना ने संगठनात्मक डिजाइन के लिए पैटर्न भाषा का दस्तावेजीकरण करना शुरू किया।
सप्ताह के आविष्कारक, वार्ड कनिंघम ने माइकल महफ़ी के साथ मिलकर पेपर लिखा था जिसमें तर्क दिया गया था कि विकी और पैटर्न भाषाओं के बीच गहरे संबंध हैं, और विकी को वास्तव में पैटर्न के कुशल साझाकरण और संशोधन की सुविधा के लिए उपकरण के रूप में विकसित किया गया था।[16]
यह भी देखें
संदर्भ
- ↑ Alexander, Christopher (1979). निर्माण का कालातीत तरीका. Oxford University Press. ISBN 978-0-19-502402-9.
- ↑ Henshaw, J. Guiding Patterns of Naturally Occurring Design: Elements. PURPLSOC 2015 proceedings, July 3-5 2015 Krems, Austria PURPLSOC meeting on the many open scientific questions, e.g. regarding the theoretical background of patterns and the practical implementation of pattern methods in research and teaching.
- ↑ 3.0 3.1 3.2 3.3 3.4 Alexander, Christopher (1977). एक पैटर्न भाषा: कस्बे, इमारतें, निर्माण. Oxford University Press, USA. p. 1216. ISBN 978-0-19-501919-3.
- ↑ Alexander, Christopher, The Oregon Project
- ↑ Andy Dearden, Janet Finlay (January 2006). "Pattern Languages in HCI: A critical review". Human Computer Interaction. 21 (1).
- ↑ Portland Urban Architecture Research Laboratory Symposium 2009, presentation by 4 of 6 original authors of A Pattern Language.
- ↑ For additional discussion of motivation and rationale as well as examples and experiments, see: Schuler, Douglas. "Choosing success: pattern languages as critical enablers of civic intelligence" (PDF). publicsphereproject.org. Portland Urban Architecture Research Laboratory Conference, Portland, OR, 2009. Retrieved 6 March 2017.
- ↑ Fincher, Sally (September 1999). "Analysis of design: an exploration of patterns and pattern languages for pedagogy". Journal of Computers in Mathematics and Science Teaching. 18 (3): 331–348.
- ↑ Cloutier, Robert J.; Verma, Dinesh (June 2007). "सिस्टम आर्किटेक्चर में पैटर्न की अवधारणा को लागू करना". Systems Engineering. 10 (2): 138–154. doi:10.1002/sys.20066. S2CID 16218191.
- ↑ Cloutier, Robert J.; Muller, Gerrit; Verma, Dinesh; Nilchiani, Roshanak; Hole, Eirik; Bone, Mary (March 2010). "संदर्भ आर्किटेक्चर की अवधारणा". Systems Engineering. 13 (1): 14–27. doi:10.1002/sys.20129. S2CID 10835558.
- ↑ Vaishnavi, V.K. and Kuechler, W. Design Science Research Methods and Patterns, Auerbach Publications, October 2007, 248 pages
- ↑ Vaishnavi. V.K. and Kuechler, W. Design Science Research Methods and Patterns, 2nd Edition, CRC Press, 2015, 415 pages
- ↑ "मुक्तिदायक आवाज़ पैटर्न भाषा". publicsphereproject.org. Retrieved 6 March 2017.
- ↑ "समूह पैटर्न भाषा परियोजना". groupworksdeck.org. Retrieved 6 March 2017.
- ↑ Jacke, Dave; Toensmeier, Eric (2005). "A Forest Garden Pattern Language". Edible Forest Gardens, Volume II: Ecological Design And Practice for Temperate-Climate Permaculture. White River Junction, VT: Chelsea Green Publishing. pp. 63–139. ISBN 1-931498-80-6.
- ↑ Cunningham, Ward; Mehaffy, Michael W. (2013). "Wiki as pattern language". Proceedings of the 20th Conference on Pattern Languages of Programs, October 23–26, 2013, Monticello, Illinois. PLoP '13. Corryton, TN: The Hillside Group. pp. 32:1–32:14. ISBN 9781941652008.
अग्रिम पठन
- Christopher Alexander, Sara Ishikawa, Murray Silverstein (1974). 'A Collection of Patterns which Generate Multi-Service Centres' in Declan and Margrit Kennedy (eds.): The Inner City. Architects Year Book 14, Elek, London. ISBN 0 236 15431 1.
- Alexander, C. (1977). A Pattern Language: Towns, Buildings, Construction. USA: Oxford University Press. ISBN 978-0-19-501919-3.
- Alexander, C. (1979). The Timeless Way of Building. USA: Oxford University Press. ISBN 978-0-19-502402-9.
- Schuler, D. (2008). Liberating Voices: A Pattern Language for Communication Revolution. USA: MIT Press. ISBN 978-0-262-69366-0.
- Leitner, Helmut (2015): Pattern Theory: Introduction and Perspectives on the Tracks of Christopher Alexander. ISBN 1505637430.
बाहरी संबंध
सामान्य तौर पर पैटर्न के बारे में
- लिए-पैटर्न-लेखन पैटर्न लेखन के लिए पैटर्न भाषा जेरार्ड मेस्ज़ारोस और जिम डोबल द्वारा
- बड़े पैमाने पर एयरोस्पेस परियोजनाओं के लिए परिदृश्य विकास के लिए पैटर्न का उपयोग
- लीन स्टार्टअप बिजनेस मॉडल पैटर्न
- गुणवत्ता उपयोग केस क्या है? प्रभावी उपयोग मामलों के लिए पैटर्न पुस्तक से
ऑनलाइन पैटर्न संग्रह
- पैटर्नभाषा.कॉम, पर्यावरण संरचना केंद्र द्वारा
- फ़्यूज्ड ग्रिड - समकालीन शहरी पैटर्न, पड़ोस के पैटर्न का संग्रह और संश्लेषण
- hcipatterns.org - एचसीआई के लिए पैटर्न
- पोर्टलैंड पैटर्न रिपॉजिटरी
- समूह कार्य: बैठकों और अन्य समारोहों में जान डालने के लिए पैटर्न भाषा - समूह प्रक्रिया की पैटर्न भाषा
- कोर प्रोटोकॉल - टीम संचार पैटर्न का सेट
- मुक्त आवाज़ें! पैटर्न भाषा परियोजना - अरबी, चीनी, और [2] में उपलब्ध पैटर्न के लघु संस्करण .org/patterns_spanish स्पैनिश]
श्रेणी:वास्तुकला सिद्धांत श्रेणी:साइबरनेटिक्स श्रेणी:डिज़ाइन श्रेणी:ज्ञान प्रतिनिधित्व फाई: सुन्नितेलुमल्ली