2013-03-31 4 views
23

मैं की तरह एंड्रॉयड में इस्तेमाल डिज़ाइन पैटर्न की कुछ पता है ...एंड्रॉइड में उपयोग किए गए डिज़ाइन पैटर्न क्या हैं?

  1. प्रसारण रिसीवर का उपयोग करता है ऑब्जर्वर डिजाइन पैटर्न
  2. आशय फैक्टरी डिजाइन पैटर्न का एक प्रकार
  3. देखें उपयोग करता समग्र डिजाइन पैटर्न का उपयोग करता है
  4. मीडिया फ्रेमवर्क फेकाडे डिजाइन पैटर्न

इनके अलावा एंड्रॉइड में उपयोग किए जाने वाले किसी अन्य डिज़ाइन पैटर्न का उपयोग करता है? अपने विचारों की सराहना करें

+1

सभी एडाप्टर (यानी बेसएडाप्टर, सरल एडाप्टर..एटीसी) एडाप्टर डिज़ाइन पैटर्न का उपयोग कर सकते हैं। – Pragnani

+0

एक खुले खुले प्रश्न की तरह दिखता है जो SO पर नहीं है। – nwellnhof

+1

कोड को देखकर ऐसा लगता है कि विरोधी पैटर्न किसी भी डिजाइन पैटर्न से अधिक उपयोग किए जाते हैं। हां, कुछ पैटर्न उदाहरण हैं जिनका आपने उल्लेख किया है, लेकिन अधिकांश कोड केवल यह दर्शाता है कि सॉफ़्टवेयर लिखते समय क्या करना है, विशेष रूप से एक एसडीके। अगर मैं इसे कभी प्राप्त करता हूं तो इसके बारे में एक ब्लॉग लिखना अच्छा लगेगा। – Sileria

उत्तर

8

एंड्रॉइड इसकी संरचना के पक्ष में बहुत सारे पैटर्न का उपयोग करता है।

लेयर पैटर्न का पहला पैटर्न आप लेजर पैटर्न है, इसे पोसा 1 (पैटर्न-ओरिएंटेड सॉफ्टवेयर आर्किटेक्चर 1) पुस्तक में आर्किटेक्चर पैटर्न के रूप में वर्गीकृत किया गया है। परत पैटर्न की मुख्य संरचनात्मक विशेषता यह है कि लेयर जे की सेवाओं का उपयोग केवल लेयरजे + 1 द्वारा किया जाता है, परतों के बीच कोई और प्रत्यक्ष निर्भरता नहीं होती है। यह पैटर्न कम और उच्च स्तरीय मुद्दों के मिश्रण के बारे में समस्या का समाधान करेगा, जहां उच्च स्तरीय संचालन निम्न-स्तर वाले लोगों पर भरोसा करते हैं। एंड्रॉइड बहु अमूर्त स्तर परत के ढेर पर बनाया गया है (अधिक जानकारी के लिए http://elinux.org/Android_Architecture देखें), इसलिए इस समस्या को हल करने के लिए इस डिज़ाइन को तैनात किया गया है।

एंड्रॉइड बहु प्रक्रियाओं पर बहुत सारी चीजें करता है, इसलिए एक आईपीसी (इंटर-प्रोसेस संचार) तंत्र को अच्छी तरह डिज़ाइन किया जाना चाहिए। एंड्रॉइड में, बाइंडर और संचार को निर्बाध बनाने के लिए एआईडीएल का उपयोग करते हुए हालांकि इन प्रक्रियाओं में सेवाओं को जावा, सी या सी ++ में लिखा जा सकता है। बाइंडर प्रॉक्सी (चार पुस्तकों की गिरोह में), ब्रोकर (पोसा 1 पुस्तक में) और फेकाडे रैपर पैटर्न (इस लिंक को http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf) को लागू करने के लिए लागू किया गया है। प्रॉक्सी पैटर्न क्लाइंट से संचार विवरण छुपाएगा, इसलिए एक प्रक्रिया स्थानीय संदर्भ में या नेटवर्क संदर्भ में समान रूप से ऑब्जेक्ट के साथ संवाद कर सकती है। ब्रोकर का उपयोग संचार से संबंधित चिंताओं को अलग करने के लिए किया जाता है। फेकाडे रैपर पैटर्न का उपयोग उच्च श्रेणी इंटरफ़ेस के भीतर सी लाइब्रेरी एंड्रॉइड में निम्न-स्तरीय फ़ंक्शंस और डेटा संरचनाओं को समाहित करने के लिए किया जाता है।

मल्टी थ्रेडिंग तंत्र भी बहुत सारे पैटर्न का उपयोग करता है। एक पैटर्न जिसे हम देख सकते हैं वह कमांड प्रोसेसर पैटर्न है जो लंबे समय तक चलने वाले कॉल को निष्पादित करने के लिए उपयोग किया जाता है।

पर्यवेक्षक पैटर्न का उपयोग सिस्टम से संबंधित स्थिति का ट्रैक रखने के लिए किया जाता है।

...।

वे सब जिन्हें मैं अब याद कर सकता हूं। यदि आप एंड्रॉइड डिजाइन पैटर्न में रूचि रखते हैं। आप इस कोर्स को देख सकते हैं: अधिक जानकारी के लिए Coursera पर https://class.coursera.org/posa-001/class/index

संबंधित मुद्दे