2012-04-25 35 views
6

मैं विनफॉर्म के साथ एप्लिकेशन बनाने का इरादा रखता हूं और मैं एमवीपी पैटर्न का उपयोग करना चाहता हूं।एमवीपी पैटर्न का उपयोग कर Winforms में एक परियोजना को कैसे व्यवस्थित करें?

चूंकि मैंने पहले कभी एमवीपी पैटर्न का उपयोग नहीं किया है, मुझे यकीन नहीं है कि नई परियोजना को कैसे व्यवस्थित किया जाए।

क्या मुझे एएसपी.नेट एमवीसी में मॉडल, प्रेजेंटर्स और व्यू के लिए प्रोजेक्ट अलग-अलग फ़ोल्डर्स बनाने के समान ही सम्मेलन का उपयोग करना चाहिए, फिर शायद प्रेजेंटर क्लास के लिए नामकरण सम्मेलन का उपयोग करना ताकि उनका नाम "प्रेजेंटर" शब्द के साथ समाप्त हो जिस तरह से "नियंत्रक" के साथ एमवीसी अंत में नियंत्रकों के नाम)

या क्या मुझे प्रस्तुतकर्ता और मॉडल के लिए अलग-अलग परियोजनाएं बनाना चाहिए?

+0

यह कई कारकों पर निर्भर करेगा ... एक सम्मेलन का उपयोग करें जो आपको उपयोगी लगता है। नामों को बाद के चरण में हमेशा दोहराया जा सकता है। – Patrick

+2

आपको मॉडल और प्रेजेंटर के लिए अलग-अलग परियोजनाएं बनाने की आवश्यकता नहीं है, लेकिन इसकी अत्यधिक अनुशंसा की जाती है। नामकरण सम्मेलन केवल * सम्मेलन * हैं, जिसका अर्थ है कि यह चीजों के काम के तरीके पर सीधे प्रभाव नहीं डालता है, लेकिन यह कुछ बहुत उपयोगी है। कुछ ढांचे (जैसे एएसपी.नेट एमवीसी, या रेल) ​​इस तरह के सम्मेलनों के अनुसार एक निश्चित तरीके से व्यवहार करेंगे, लेकिन कुछ भी आपको अपने स्वयं के सम्मेलन को परिभाषित करने से रोकता है (और इसे कोड)। यहां [एमवीपी] [1] [1]: http://msdn.microsoft.com/en-us/magazine/cc188690.aspx के बारे में एक अच्छा पठन है – MilkyWayJoe

उत्तर

2

ईमानदारी से, यह एक बहुत ही व्यक्तिपरक प्रश्न है। जिस तरह से मैं आज कर रहा हूं वह अगले आवेदन के लिए ऐसा नहीं हो सकता है। यह बस मेरे लिए अच्छा काम करता है। इसके अलावा, मेरे लिए जो काम करता है वह ऐसा नहीं हो सकता है कि कोई और ऐसा करेगा - यह नहीं कि मेरा गलत, बेहतर, या बदतर है।

नामकरण सम्मेलनों में मदद मिलेगी:

  • PersonPresenter
  • PersonViewModel
  • PersonView
  • IPersonView

इसके अलावा (यदि डेटा/लिखने डेटा स्टोर करने के लिए पढ़ने के लिए है), मैं अलग किया है 3 परियोजनाओं में मेरा वर्तमान समाधान:

  • ऐप स्वयं - उस प्रोजेक्ट में एकमात्र वर्ग प्रोग्राम.cs
  • प्रेजेंटेशन मॉडल: प्रस्तुतकर्ता, इंटरफ़ेस देखें, मॉडल देखें (यदि लागू हो); सभी अपने-अपने विचारों
  • दृश्य द्वारा आयोजित फ़ोल्डर में: सिर्फ विचारों

अब के लिए एक परियोजना, समाधान है कि मैं इकाई परीक्षण के लिए संदर्भ के लिए की जरूरत का केवल कुछ भाग PresentationModels परियोजना है।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^