CodeGym /Java Blog /यादृच्छिक /जावा मधील डिझाइन पॅटर्न [भाग 1]
John Squirrels
पातळी 41
San Francisco

जावा मधील डिझाइन पॅटर्न [भाग 1]

यादृच्छिक या ग्रुपमध्ये प्रकाशित केले
जावा मधील डिझाईन नमुन्यांवरील हा एक छोटा लेख आहे. कोणतीही नमुना अंमलबजावणी होणार नाही, फक्त Java मधील नमुन्यांची यादी आणि प्रत्येकाच्या संक्षिप्त वर्णनासह. या विषयाशी आधीच परिचित असलेल्यांसाठी, हे पुनरावलोकन आणि सारांश म्हणून उपयुक्त ठरेल. याउलट, जे प्रथमच नमुन्यांबद्दल शिकत आहेत त्यांना या विषयाचे प्रारंभिक विहंगावलोकन म्हणून अधिक खोलवर जाण्यापूर्वी याचा फायदा होईल. जावामधील डिझाइन पॅटर्न [भाग १] - १ डिझाइन नमुनेवारंवार होत असलेल्या प्रोग्रामिंग कार्यांसाठी वापरण्यास-तयार उपाय आहेत. हा वर्ग किंवा लायब्ररी नाही जो प्रकल्पाशी जोडला जाऊ शकतो. हे आणखी काहीतरी आहे. प्रत्येक कार्यासाठी योग्य डिझाइन नमुने प्रत्येक विशिष्ट प्रकरणात लागू केले जातात. तुम्ही हे लक्षात ठेवावे की चुकीच्या पद्धतीने किंवा अयोग्य कार्यासाठी लागू केल्यावर, डिझाइन पॅटर्न अनेक समस्या निर्माण करू शकतो. तथापि, योग्यरित्या लागू केलेला नमुना तुम्हाला कार्ये सहज आणि सोप्या पद्धतीने पूर्ण करण्यात मदत करू शकतो.

नमुन्यांचे प्रकार:

  • सृजनशील
  • संरचनात्मक
  • वर्तणूक
क्रिएशनल पॅटर्न इनिशिएलायझेशन मेकॅनिझम प्रदान करतात, ज्यामुळे तुम्हाला सोयीस्कर पद्धतीने वस्तू तयार करता येतात. स्ट्रक्चरल नमुने वर्ग आणि वस्तूंमधील संबंध परिभाषित करतात, त्यांना एकत्र काम करण्याची परवानगी देतात. वर्तणूक पद्धतींचा वापर संस्थांमधील परस्परसंवाद सुलभ करण्यासाठी केला जातो.

क्रिएशनल:

  • सिंगलटन — वर्गाची निर्मिती एकाच प्रसंगासाठी प्रतिबंधित करते आणि त्या एकाच प्रसंगात प्रवेश प्रदान करते.

  • फॅक्टरी — जेव्हा आमच्याकडे एकाधिक उपवर्गांसह सुपरक्लास असतो आणि आम्हाला इनपुटवर आधारित उपवर्ग परत करणे आवश्यक असते तेव्हा वापरले जाते.

  • अ‍ॅबस्ट्रॅक्ट फॅक्टरी - कारखाने तयार करण्यासाठी सुपर फॅक्टरी वापरतो, ज्याचा वापर आपण वस्तू तयार करण्यासाठी करतो.

  • बिल्डर — साध्या वस्तू वापरून जटिल वस्तू तयार करण्यासाठी वापरला जातो. ते हळूहळू लहान, साध्या वस्तूपासून एक मोठी वस्तू तयार करते.

  • प्रोटोटाइप - डुप्लिकेट ऑब्जेक्ट्स तयार करताना कार्यप्रदर्शन सुधारण्यास मदत करते; नवीन ऑब्जेक्ट तयार करण्याऐवजी, ते विद्यमान ऑब्जेक्टचा क्लोन तयार करते आणि परत करते.

स्ट्रक्चरल:

  • अडॅप्टर - दोन विसंगत वस्तूंमधील एक कनवर्टर. दोन विसंगत इंटरफेस एकत्र करण्यासाठी आम्ही अॅडॉप्टर पॅटर्न वापरू शकतो.

  • संमिश्र — झाडाच्या संरचनेचे प्रतिनिधित्व करण्यासाठी एक वर्ग वापरतो.

  • प्रॉक्सी — दुसर्‍या वर्गाची कार्यक्षमता प्रदान करते.

  • फ्लायवेट — मोठ्या संख्येने समान वस्तू तयार करण्याऐवजी वस्तूंचा पुनर्वापर करते.

  • दर्शनी भाग — क्लायंटसाठी एक साधा इंटरफेस प्रदान करतो, जो सिस्टमशी संवाद साधण्यासाठी इंटरफेस वापरतो.

  • ब्रिज - विशिष्ट वर्गांना इंटरफेस लागू करणाऱ्या वर्गांपासून स्वतंत्र बनवते.

  • डेकोरेटर - अस्तित्वात असलेल्या ऑब्जेक्टमध्ये त्याच्या संरचनेत न जोडता नवीन कार्यक्षमता जोडते.

वर्तणूक:

  • टेम्पलेट पद्धत - मूलभूत अल्गोरिदम परिभाषित करते आणि वंशजांना अल्गोरिदमच्या काही चरणांची संपूर्ण रचना न बदलता ओव्हरराइड करण्यास अनुमती देते.

  • मध्यस्थ - एक मध्यस्थ वर्ग प्रदान करतो जो विविध वर्गांमधील सर्व संवाद हाताळतो.

  • जबाबदारीची साखळी - विनंती प्रेषक आणि प्राप्तकर्ता यांच्यातील कठोर अवलंबित्व टाळणे शक्य करते; शिवाय, विनंतीवर अनेक ऑब्जेक्ट्सद्वारे प्रक्रिया केली जाऊ शकते.

  • ऑब्झर्व्हर - एका ऑब्जेक्टला इतर ऑब्जेक्ट्समध्ये घडणाऱ्या घटनांचे निरीक्षण आणि प्रतिसाद देण्याची परवानगी देतो.

  • रणनीती - रन टाइममध्ये रणनीती (अल्गोरिदम) बदलण्याची परवानगी देते.

  • कमांड - एक इंटरफेस जो विशिष्ट क्रिया करण्यासाठी पद्धत घोषित करतो.

  • राज्य - एखाद्या वस्तूला त्याच्या स्थितीनुसार त्याचे वर्तन बदलण्याची परवानगी देते.

  • अभ्यागत — संबंधित वस्तूंच्या गटांवर ऑपरेशन्स सुलभ करण्यासाठी वापरला जातो.

  • इंटरप्रिटर - समस्या डोमेनमधील सोप्या भाषेसाठी व्याकरण परिभाषित करते.

  • इटरेटर — संग्रहाचे मूळ स्वरूप जाणून न घेता त्याच्या घटकांमध्ये अनुक्रमे प्रवेश करतो.

  • स्मृतीचिन्ह - एखाद्या वस्तूची स्थिती साठवण्यासाठी वापरली जाते; हे राज्य नंतर पुनर्संचयित केले जाऊ शकते.

तुम्ही CodeGym कोर्समधून जाताना, तुम्हाला या सूचीतील काही नमुने भेटतील. नमुन्यांबद्दल मी खालील कार्यांची शिफारस करतो: 1522 , 1530 , 1631 , big01 , 2912 , 3107 ... डिझाइन पॅटर्नचा सुज्ञ वापर केल्याने अधिक विश्वासार्ह कोड मेंटेनन्स होतो, कारण, सामान्य समस्यांसाठी डिझाइन पॅटर्न हे चांगले उपाय आहेत या व्यतिरिक्त , इतर विकासक त्यांना ओळखू शकतात, विशिष्ट कोडसह कार्य करण्यासाठी लागणारा वेळ कमी करतात.
टिप्पण्या
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION