इस पर लोगों की राय पूछना चाहता था। मेरे पास uiimageview उपclass है और इसके प्रारंभकर्ता में मैं छवि दृश्य में कुछ इशारा पहचानकर्ता जोड़ता हूं, और मैं कक्षा के भीतर इशारा पहचानकर्ता प्रतिनिधि विधियों को भी शामिल करता हूं। मेरा सवाल है, क्या यह मॉडल मॉडल नियंत्रक का उल्लंघन करता है? क्या एक कोड को नियंत्रित करने के साथ सभी कोड को एक दृश्य नियंत्रक में होना चाहिए? एक दृश्य में एक बटन एक्शन विधि डालने के साथ ही कहें। किसी भी तरह, राय सुनने में रुचि रखते हैं।मॉडल दृश्य नियंत्रक का उल्लंघन करने के लिए इशारा पहचानकर्ता/क्रिया विधियों को जोड़ना?
उत्तर
एक अर्थ में, हाँ, यह एमवीसी पैटर्न का उल्लंघन करता है। जैसा कि आप कहते हैं, इस दृश्य को नियंत्रित करने के तरीके के साथ कुछ भी नहीं होना चाहिए, आवेदन के किसी अन्य भाग में ऐसे कोड को समूहित करने की बेहतर आदत है।
इसके अलावा, ओओपी के महान फायदों में से एक कक्षाओं का पुन: उपयोग करने की क्षमता है। इस तरह के दृश्यों को बिना किसी समस्या के पुन: उपयोग किया जा सकता है, क्योंकि सभी नियंत्रण कोड - एप्लिकेशन के लिए विशिष्ट - उनमें नहीं है। यदि आप अपने विचार में प्रतिनिधि विधियां शामिल करते हैं, तो आप इसका पुन: उपयोग नहीं कर पाएंगे, या आपको प्रत्येक बार प्रतिनिधि विधि बदलनी होगी!
लेकिन नियम सामान्य मामले के लिए हैं। मैक ओएस एक्स के लिए कोको फ्रेमवर्क पर नज़र डालें: आपको कोको बाइंडिंग मिल गई है जो आपको अपने मॉडल में डेटा परिवर्तन के जवाब में सीधे दृश्य सामग्री को बदलने की अनुमति देती है। यह किसी भी तरह से एमवीसी पैटर्न का भी उल्लंघन करता है।
एक अन्य उदाहरण, UIViewController देखें। यह एक नियंत्रक होना चाहिए लेकिन यह एक दृष्टिकोण से बहुत करीब से जुड़ा हुआ है कि सवाल बनी रहती है। दृश्य & नियंत्रक के बीच अलगाव उतना स्पष्ट नहीं है जितना एमवीसी इसे पसंद करेगा।
निष्कर्ष करने के लिए, मैं कहूँगा कि यह एक अच्छी आदत पैटर्न का पालन करने के लिए (जब तक वे अपनी आवश्यकताओं से मिलान) और जिस तरह से आप किसी दिए गए ढांचे का उपयोग कर इसे का पालन कर सकते हैं। लेकिन कुछ मामला है, यदि आप इसे स्पष्ट करते हैं, तो कुछ शॉर्टकट बनाने और नियमों को तोड़ना दिलचस्प हो सकता है।
एक पूरी तरह से अच्छा विचार की तरह लगता है, अगर कार्रवाई केवल दृश्य की उपस्थिति को प्रभावित करेगी। उदाहरण के लिए, इसे पैन इशारा पहचानकर्ता को चारों ओर खींचने के लिए एक दृश्य को जोड़ने के लिए एक अच्छा विचार लगता है।
हालांकि यदि यह आपके आवेदन में अधिक व्यापक प्रभाव को ट्रिगर करेगा तो शायद यह सही दृष्टिकोण नहीं है।
एप्पल डेवलपर कोर दक्षताओं डॉक (https://developer.apple.com/library/ios/documentation/General/Conceptual/DevPedia-CocoaCore/MVC.html) से:
एक दृश्य वस्तु एक आवेदन है कि उपयोगकर्ताओं को देख सकते हैं में एक वस्तु है। ऑब्जेक्ट देखें जानता है कि खुद को कैसे आकर्षित करें और उपयोगकर्ता क्रियाओं का जवाब दे सकते हैं।
व्यक्तिगत तौर पर मैं, इस व्याख्या के लिए एक दृश्य वर्ग के भीतर इशारा recognisers लिखने के लिए अपने ठीक मतलब करने के लिए प्रदान की जाती इशारा दृश्य "उपयोगकर्ता क्रियाओं का जवाब" की अनुमति के लिए है।
ऐप्पल एपीआई में कुछ उदाहरण भी हैं जो मुझे लगता है - चूंकि कुछ UIView वंशज (उदाहरण के लिए UIButton) संकेतों को पहचान सकते हैं।
- 1. वर्तमान मॉडल दृश्य नियंत्रक
- 2. केकेपीएचपी - बिना दृश्य और मॉडल के नियंत्रक
- 3. एमवीसी जहां तर्क नियंत्रक या दृश्य मॉडल
- 4. एएसपी MVC करने के लिए एक नियंत्रक कारखाने जोड़ना
- 5. एमवीसी: मॉडल, दृश्य और नियंत्रक को अलग क्यों करें?
- 6. मॉडल और दृश्य मॉडल के लिए प्रमाणीकरण सर्वोत्तम अभ्यास
- 7. पायथन/Django: कस्टम मॉडल तरीकों को जोड़ना?
- 8. एंड्रॉयड: एक और दृश्य के लिए इशारा घटना दर्रा
- 9. रेल 3.0: नियंत्रक को नई कार्रवाई जोड़ना
- 10. मॉडल-व्यू-व्यू मॉडल पैटर्न डीआरवाई का उल्लंघन?
- 11. मैं बाल दृश्य नियंत्रक से अभिभावक दृश्य नियंत्रक के दृश्य को कैसे एक्सेस कर सकता हूं?
- 12. दृश्य नियंत्रक
- 13. नियंत्रक का नाम मॉडल नाम
- 14. दृश्य नियंत्रक को प्राप्त करें जो दृश्य दृश्य नियंत्रक को धक्का देता है
- 15. मॉडल, नियंत्रक, और
- 16. वसंत: नियंत्रक से जेएसओएन को मॉडल एंडवीयू
- 17. अवहेलना रेल नियंत्रक मॉडल का नाम
- 18. मॉडल और नियंत्रक के बीच संचार - आईओएस
- 19. एएसपी.नेट एमवीसी मॉडल मेटाडाटा - क्या हम मॉडल पर यूआई का वर्णन करने के लिए विशेषताओं को डालते समय चिंताओं को अलग करने का उल्लंघन करते हैं?
- 20. एक दृश्य नियंत्रक के लिए autorotate रोकें?
- 21. संग्रह दृश्य के साथ मॉडल पर जटिल व्यूमोडेल को मानचित्रित करने के लिए ऑटोमैपर का उपयोग
- 22. मैं सीयूडीए डीएल को कॉल करने के लिए उल्लंघन उल्लंघन अपवाद से कैसे बचूं?
- 23. बैकबोन: संग्रह दृश्य से संग्रह में कोई मॉडल जोड़ना?
- 24. एमवीसी: मॉडल व्यू कंट्रोलर - क्या दृश्य मॉडल को कॉल करता है?
- 25. jqGrid और MVC3 - मॉडल सत्यापन जोड़ना
- 26. रेल में मॉडल स्कॉप्स के लिए प्रलेखन जोड़ना
- 27. एक दृश्य के साथ जुड़े एकाधिक दृश्य मॉडल
- 28. दृश्य मॉडल
- 29. एक मॉडल नियंत्रक के साथ संवाद करने के लिए अनुशंसित तरीका क्या है?
- 30. डब्ल्यूपीएफ - दृश्य मॉडल
मुझे इस तरह के प्रश्न पसंद हैं। – Morkrom