मुझे पहले बड़े पैमाने पर आकार नियंत्रकों में कोड को अनटंगल करना पड़ा है और इसने पहली बार सामग्री को नेविगेट करने की मेरी क्षमता को बाधित किया है। एक महत्वपूर्ण बात मुझे महसूस हुई कि व्यू कंट्रोलर का आकार अकेले ही अलग करने के लिए पर्याप्त नहीं था। 1 बड़ी फ़ाइल होने में जटिलता है और छोटी फ़ाइलों का एक गुच्छा होने में भी जटिलता है। किसी व्यू कंट्रोलर को छोटे भागों में तोड़ने के लिए रिफ्लेक्टर के कुछ वैध कारण इस प्रकार हैं:
MVC
व्यू कंट्रोलर व्यू और मॉडल के बीच कनेक्टिंग गोंद होने से ज्यादा कुछ नहीं करना चाहिए। यदि आप बहुत सारे नेटवर्क कनेक्शन कोड, इमेज मैनिपुलेशन कोड, आदि हैं, तो उन सहायक वर्गों को तोड़ने पर विचार करें।
डेटा कंट्रोलर के रूप में व्यू कंट्रोलर के साथ मल्टीपल कंट्रोल
यदि आपके पास स्क्रीन पर नियंत्रणों का एक गुच्छा है जो आपके व्यू कंट्रोलर को डेटा स्रोत के रूप में रखता है, तो उन्हें अलग-अलग डेटा स्रोत ऑब्जेक्ट में तोड़ने पर विचार करें और उन्हें डेटा स्रोत होना चाहिए। या आप उन्हें अलग-अलग व्यू कंट्रोलर्स में भी तोड़ सकते हैं (जैसे कि यदि आप कंट्रोलर के पास अन्य कंट्रोलर के अलावा टेबल व्यू है, तो आप उसे अपने टेबल व्यू कंट्रोलर क्लास में तोड़ सकते हैं)।
डुप्लिकेट कोड
यदि आपके पास अलग-अलग View Controllers में एक समान कोड है, तो उसे 1 साझा स्थान पर रखें। यह आपके कोड को पुन: प्रयोज्य बना देगा और जटिलता को प्रबंधित करने में मदद करेगा।
यहाँ देखें नियंत्रक जटिलता को कम करने के लिए कुछ अतिरिक्त सलाह:
प्रोग्राममैटिक की जगह स्टोरीबोर्ड
व्यू एलिमेंट्स बनाना बहुत सारे कोड हैं और फ्रेम ज्योमेट्री कोड भी बहुत काम का है। यदि पहले से ही ऑटो लेआउट बाधाओं का उपयोग करने और स्टोरीबोर्ड में व्यू तत्वों का अधिक से अधिक उपयोग करने पर विचार न करें।
अनावश्यक कोड / टिप्पणी
अनावश्यक कोड / टिप्पणियों को निकालना सुनिश्चित करें। बहुत बार एक नया व्यू कंट्रोलर फ़ाइल उन विधियों के साथ आएगा, जिनका आप उपयोग नहीं कर रहे हैं। यदि आप एक विधि का उपयोग नहीं कर रहे हैं didReceiveMemoryWarning
तो इसे बाहर निकालना सुरक्षित है। इसके अलावा, क्योंकि व्यू कंट्रोलर फ़ाइल इतनी बड़ी होती है कि कभी-कभी पुराने कोड या टिप्पणियों को हटाना डरावना होता है। कि बंद मत करो! यह केवल जटिलता में जोड़ता है।
सूचनाएं
सूचनाओं के बारे में आपके प्रश्न का उत्तर देने के लिए: अधिसूचनाएं हर चीज के साथ उपयोग करने के लिए एक स्वर्ण हथौड़ा नहीं हैं। जब कई व्यू कंट्रोलर को 1 विशेष एक्शन के कारण एक ही समय में अपडेट करने की आवश्यकता होती है, तो मुझे उपयोगी होने के लिए सूचनाएं मिल जाती हैं। हालांकि, सूचनाओं से सावधान रहें, उनके अधिक उपयोग से आपको उन्हें ट्रैक करने में बहुत दर्द हो सकता है।