में एमवीसी डिज़ाइन पैटर्न को समझना आम तौर पर जब तक यह काम करता है, तब तक मैं किसी भी यादृच्छिक तरीके से एक ऐप डालता हूं, लेकिन इसका मतलब है कि मैं किसी भी डिज़ाइन पैटर्न पर कोई ध्यान नहीं देता हूं। मेरा आवेदन वर्तमान में वैश्विक चर के व्यापक उपयोग को बनाता है (मैं अपने AppDelegate.h
में घोषित संपत्तियों तक पहुंचने के लिए प्रत्येक दृश्य नियंत्रक में अपने AppDelegate
का एक उदाहरण लेता हूं)। हालांकि यह वही करता है जो मैं करना चाहता हूं, मैंने पढ़ा है कि यह एक अच्छा डिजाइन अभ्यास नहीं है।कोको टच
तो मैं अपना कोड "कानूनी" बनाना शुरू करना चाहता हूं। हालांकि, मैं वैश्विक चर के बिना अभी अपने ऐप की कल्पना नहीं कर सकता। वे ऐप के कल्याण के लिए बहुत महत्वपूर्ण हैं, लेकिन इसका मतलब यह होगा कि मैं कुछ गलत कर रहा हूं, है ना? मैं कल्पना नहीं कर सकता कि मैं कुछ और कैसे करूंगा। उदाहरण के लिए इस लें:
आप यहाँ दो दृश्य नियंत्रकों, एक SideViewController
और एक MainViewController
है। वैश्विक चर का उपयोग करना, जैसे कि पूरे एप्लिकेशन में SideViewController
और MainViewController
(appDelegate.sideViewController
और appDelegate.mainViewController
) का एक साझा उदाहरण था, मैं आसानी से दो दृश्य नियंत्रकों के बीच संवाद कर सकता हूं, ताकि अगर मैं अपने SideViewController
में "समाचार फ़ीड" दबा सकता हूं, तो मैं कर सकता हूं इसके दृश्य को पुनः लोड करने के लिए मेरे MainViewController
बताएं।
मैं कल्पना नहीं कर सकता, हालांकि, यह कैसे किया जाएगा यदि यह वैश्विक चर नहीं थे? यदि मेरे SideViewController
में कोई ईवेंट होता है, तो मैं अपने MainViewController
को डिज़ाइन मानकों के अनुसार कैसे सूचित करूं?
क्या आप नेविगेशन नियंत्रक का उपयोग कर रहे हैं? –
मैं अपने ऐप की मुख्य सामग्री के लिए एक नेविगेशन नियंत्रक का उपयोग कर रहा हूं, हालांकि मेरे साइड व्यू कंट्रोलर का वर्तमान कार्यान्वयन नेविगेशन स्टैक में नहीं जोड़ा गया है, लेकिन मुख्य एप्लिकेशन विंडो में '[appDelegate.window addSubView: sideViewController.view]' के माध्यम से जोड़ा गया है। – Snowman