जिस कंपनी के लिए मैं काम कर रहा हूं वह एक विशाल वर्ग (ग्लोबल्स.एम) है जो सिंगलटन है। यह ज्यादातर बुल्स का एक गुच्छा संग्रहीत करता है जिसे एनएसयूसर डीफॉल्ट में जाना चाहिए, लेकिन विभिन्न व्यू कंट्रोलर से संबंधित वीडियोप्लेयर जैसी चीजों के पॉइंटर्स भी हैं। मैं आईओएस विकास के लिए बिल्कुल नया हूं (और मैं एक कम इंटर्न हूं), लेकिन मुझे अपने आंत में पता है कि कोड उच्च स्वर्ग में गंध करता है। मैं कैसे समझा सकता हूं कि सभी चरों को स्टोर करने के लिए सिंगलटन का उपयोग क्यों खराब है?ग्लोबल वैरिएबल क्लास (सिंगलटन) खराब अभ्यास का उपयोग क्यों कर रहा है?
संपादित करें: मेरा मतलब यह नहीं है कि सिंगलेट्स खराब हैं, मेरा मतलब सिर्फ इस मामले में है। ऐप में अनिवार्य रूप से प्रत्येक महत्वपूर्ण चर इस उदाहरण में संग्रहीत किया जाता है।
एक पैटर्न सिर्फ एक पैटर्न है ... वास्तव में बुरा क्या है कुछ अंधेरे से कहना बुरा है क्योंकि आपको लगता है कि यह है ... सिंगलेट्स खराब नहीं हैं, लेकिन आप निश्चित रूप से खराब सिंगलेट का उपयोग/निर्माण कर सकते हैं ... यह निर्भर करता है कि आप उन्हें कैसे डिजाइन/उपयोग करते हैं ... – Macmade
सिंगलटन यह एक पैटर्न है ... उचित रूप से इसका उपयोग न करें और मुझे गंध है कि किसी को लगता है कि सिंगलटन का उपयोग कर रहे हैं जब वास्तव में यह सिंगलटन नहीं है –
धन्यवाद @ जोश कैसवेल, मैंने पहले देखा था , लेकिन मैंने अपने सभी बिंदुओं का काफी पालन नहीं किया। पुनरावृत्ति के लिए खेद है! – Febble