सामान्य रूप से आपको अपडेट करने के लिए कॉल प्राप्त होने पर सभी को देखने योग्य से अपडेट करना चाहिए()। यदि यह व्यावहारिक नहीं है, तो आप ऑब्सर्वर() को सूचित करने के लिए संकेत भेज सकते हैं।
गिरोह की पुस्तक का कहना है कि पर्यवेक्षक पैटर्न के परिणामों में से एक है:।
"अप्रत्याशित अपडेट क्योंकि पर्यवेक्षकों एक दूसरे की उपस्थिति का ज्ञान नहीं है, वे बदलने की अंतिम लागत के लिए अंधा हो सकता है विषय। इस विषय पर एक प्रतीत होता है कि निर्दोष ऑपरेशन पर्यवेक्षकों और उनकी आश्रित वस्तुओं के अपडेट का एक कैस्केड हो सकता है। इसके अलावा, निर्भरता मानदंड जो अच्छी तरह से परिभाषित या रखरखाव नहीं होते हैं, आमतौर पर नकली अद्यतनों का कारण बनते हैं, जिन्हें ट्रैक करना मुश्किल हो सकता है।
यह समस्या तथ्य यह है कि सरल अद्यतन प्रोटोकॉल क्या इस विषय में बदल पर कोई विवरण प्रदान करता है। अतिरिक्त प्रोटोकॉल टी के बिना द्वारा बिगड़ जाती है o पर्यवेक्षकों को पता चलता है कि क्या बदल गया है, उन्हें परिवर्तनों को कम करने के लिए कड़ी मेहनत करने के लिए मजबूर किया जा सकता है। " कार्यान्वयन के तहत भी, वे कहते हैं:
" पर्यवेक्षक-विशिष्ट अद्यतन प्रोटोकॉल से बचें: पुश और पुल मॉडल। पर्यवेक्षक पैटर्न के कार्यान्वयन में अक्सर इस विषय के बारे में अतिरिक्त जानकारी प्रसारित होती है। विषय इस जानकारी को अपडेट करने के लिए तर्क के रूप में पास करता है। जानकारी की मात्रा व्यापक रूप से भिन्न हो सकती है।
एक चरम पर है, जो हम धक्का मॉडल कहते हैं, विषय परिवर्तन के बारे में पर्यवेक्षकों भेजता विस्तृत जानकारी, चाहे वे यह चाहते हैं या नहीं। दूसरी चरम पर पुल मॉडल है; विषय सबसे कम अधिसूचना के अलावा कुछ भी नहीं भेजता है, और पर्यवेक्षक इसके बाद स्पष्ट रूप से विवरण मांगते हैं।
पुल मॉडल, अपने पर्यवेक्षकों का विषय की अज्ञानता पर जोर देती है, जबकि धक्का मॉडल मानता विषयों उनके पर्यवेक्षकों की जरूरतों के बारे में कुछ पता है। पुश मॉडल पर्यवेक्षकों को कम पुन: प्रयोज्य बना सकता है, क्योंकि विषय वर्ग पर्यवेक्षक वर्गों के बारे में धारणाएं बनाते हैं जो हमेशा सत्य नहीं हो सकते हैं। दूसरी तरफ, पुल मॉडल अक्षम हो सकता है, क्योंकि ऑब्जर्वर कक्षाओं को पता होना चाहिए कि विषय से मदद के बिना क्या बदला गया है। "
स्रोत
2010-06-01 02:39:46