मैं मॉडल व्यू प्रेजेंटर (एमवीपी) पैटर्न के बाद मेरे आवेदन में एक परियोजना प्रबंधन प्रणाली विकसित करने की कोशिश कर रहा हूं। मेरा सवाल यह है कि, मैंने एमवीपी के कई उदाहरण देखे हैं, लेकिन मैंने एक प्रस्तुतकर्ता और एकाधिक दृश्यों में से एक को नहीं देखा है। उदाहरण के लिए जब कोई उपयोगकर्ता एक प्रोजेक्ट खोलता है तो उसी प्रोजेक्ट डेटा को ट्रीव्यूव, डेटाग्रिड और चार्ट द्वारा देखा जा सकता है। मैं इसका सामना कैसे करूं?कई विचारों के साथ विनफॉर्म एमवीपी और एक प्रस्तुतकर्ता
उत्तर
कोड को डीकॉप्लेड और बनाए रखने में आसान बनाने के लिए मैं आपको प्रत्येक दृश्य के लिए एक प्रस्तुतकर्ता होने का सुझाव दूंगा, भले ही वे बहुत समान दिखें: ताकि प्रत्येक दृश्य में अपना स्वयं का प्रस्तुति तर्क होगा। यदि आपको एक ही डेटा मिला है जिसे एक से अधिक दृश्यों पर दिखाया जाना है, तो आप प्रस्तुतकर्ताओं के बीच व्यू-मॉडल साझा कर सकते हैं लेकिन फिर मैं आपको प्रत्येक प्रस्तुतकर्ता के लिए अलग-अलग दृश्य मॉडल का उपयोग करने का सुझाव दूंगा (भले ही वे बहुत समान हों)
जिस तरह से आप इसे करेंगे, यह एक इंटरफ़ेस के पीछे रखकर अपने विचार को सारणीबद्ध करना है और फिर प्रस्तुतकर्ता को अपने दृश्य के ठोस कार्यान्वयन के साथ तार करना है।
उसने कहा, मुझे यकीन नहीं है कि आप कभी भी असली दुनिया में ऐसा करना चाहते हैं। चार्ट की तुलना में पेड़ दृश्य से निपटने के बीच अंतर का मतलब यह होगा कि आप अपने व्यू इंटरफ़ेस में चीजों को सामान्यीकृत करने और अनुबंध को पूरा करने के लिए अपने दृश्य में बहुत गन्दा कोड लिखने का अंत करते हैं।
मैं आपके प्रस्तुतकर्ता को अनुपात 1: 1 पर देखने का सुझाव दूंगा। यदि आप एक ही डेटा पर एकाधिक विचार चाहते हैं तो यह आपका मॉडल है कि आपको प्रस्तुतकर्ताओं में साझा करना चाहिए, ताकि आप एक ही डेटा को विभिन्न तरीकों से प्रदर्शित कर रहे हों।
आपको प्रति दृश्य उदाहरण के बारे में हमेशा एक प्रस्तुतकर्ता उदाहरण होना चाहिए।
कहें कि आप एक ग्राहक दृश्य और उसके ग्राहक दृश्य प्रतिनिधि को खोलें। यह प्रत्येक का एक उदाहरण है।
आप एक और ग्राहक दृश्य खोलें, और दूसरा ग्राहक दृश्य प्रस्तुतकर्ता उदाहरण। यह प्रत्येक के दो उदाहरण हैं।
इसका मतलब यह नहीं है कि किसी दिए गए प्रस्तुतकर्ता को हमेशा एक ही दृश्य का उपयोग करना पड़ता है, वास्तव में यह नहीं होना चाहिए। प्रस्तुतकर्ता को एक दृश्य इंटरफ़ेस से बात करनी चाहिए। परीक्षण के लिए आपको नकली दृश्य के लिए वास्तविक दृश्य स्वैप करने में सक्षम होना चाहिए।
- 1. एमवीपी विनफॉर्म ऐप
- 2. एमवीपी - कितने प्रस्तुतकर्ता
- 3. एमवीपी और कई उपयोगकर्ता नियंत्रण
- 4. एमवीपी, विनफॉर्म - इवेंट हैंडलर या प्रतिनिधि
- 5. एमवीपी पैटर्न, प्रस्तुतकर्ता के लिए कितने विचार हैं?
- 6. क्रिटिक मेरे सरल एमवीपी विनफॉर्म ऐप
- 7. एमवीपी - प्रस्तुतकर्ता सत्र का उपयोग करना चाहिए?
- 8. एमवीपी एमवीसी और एमवीवीएम
- 9. क्या एएसपीनेट मॉडल समय के प्रस्तुतकर्ता प्रस्तुतकर्ता है?
- 10. प्रस्तुतकर्ता एमवीपी पैटर्न में जीयूआई तर्क प्रदर्शन करता है?
- 11. Winforms में एमवीपी
- 12. एमवीपी निर्भरता इंजेक्शन
- 13. कहां और प्रस्तुतकर्ता का जन्म होना चाहिए
- 14. एमवीपी
- 15. एमवीपी
- 16. एमवीसी/एमवीपी
- 17. मॉडल-व्यू-प्रस्तुतकर्ता (सी #) पर एक सामान्य प्रश्न, मॉडल को प्रस्तुतकर्ता को जानना चाहिए?
- 18. एमवीपी और उपयोगकर्ता नियंत्रण और आमंत्रण
- 19. सी # WinForms का उपयोग कर एमवीपी में विचारों के बीच आप नेविगेट कैसे करते हैं?
- 20. एमवीपी-निष्क्रिय दृश्य और एमवीपी-पर्यवेक्षण नियंत्रक
- 21. एमवीपी: क्या दृश्य को प्रस्तुतकर्ता के इंटरफ़ेस को लागू करना चाहिए या इसके विपरीत?
- 22. सी # विनफॉर्म: कुशलतापूर्वक कई नियंत्रण प्रदर्शित करना
- 23. एमवीपी में सबसे अच्छा बाल विचारों का समन्वय कैसे किया जाता है?
- 24. (एमवीपी पैटर्न) प्रस्तुतकर्ता से देखने के लिए त्रुटि संदेश कैसे अग्रेषित करें?
- 25. कंक्रीट कोड एमवीपी
- 26. स्पष्टीकरण: MVC, एमवीपी, MVVM
- 27. एमवीपी
- 28. एमवीपी और जीडब्ल्यूटी विजेट्स के बीच संचार
- 29. क्या एमवीसी और एमवीपी पर्यवेक्षण नियंत्रक समान है?
- 30. मॉडल-व्यू-प्रस्तुतकर्ता और मॉडल संवाद बॉक्स .... कैसे करें?
तो आप मानते हैं कि कोड के दोहराव होने के बावजूद यह भी बेहतर होगा। क्या मैं सभी प्रासंगिक विचारों को अद्यतन करने के लिए पर्यवेक्षक पैटर्न का भी उपयोग करता हूं? – Dimitris
यदि पृष्ठ बिल्कुल वही हैं लेकिन आप उनमें से प्रत्येक पर "एक और लेबल" दिखाते हैं तो आप एक प्रस्तुतकर्ता, एक मॉडल और एक दृश्य बना सकते हैं। प्रस्तुतकर्ता में सही यूआई दिखाने के लिए तर्क शामिल होगा। मेरा सामान्य उत्तर है –