2010-12-10 11 views
8

मैं सिर्फ सीखने .net, WPF, WCF, और MVVM शुरू कर दिया है, और मेरे सवाल यह है:एक एमवीवीएम ढांचे का उपयोग कर अपने स्वयं के एमवीवीएम बनाम कार्यान्वित करना?

यह खुद MVVM लागू करने या, प्रिज्म MVVM लाइट टूलकिट की तरह एक MVVM ढांचे का उपयोग करने के लिए (यह भी उन्नत है बेहतर है और एकता ढांचा है (यह सुनिश्चित नहीं है कि यह कैसे विकास में मदद करता है))?

+2

अगर आपने chosing पहुंच जाएंगे पाया है है बस सीखना शुरू कर दिया। नेट, तो आखिरी चीज जो आपको सोचनी चाहिए, वह फ्रेमवर्क को फिर से शुरू करना है जो कुछ अनुभवी लोगों द्वारा बनाई गई है। –

+1

मेरे द्वारा पूछे गए इस तरह के प्रश्न में एमवीवीएम या PRISM प्रश्न के कुछ अच्छे उत्तर भी हैं - http://stackoverflow.com/questions/6251821/custom-mvvm-implementation-vs-prism – akjoshi

उत्तर

6

यदि आप वास्तव में एमवीवीएम के आंतरिक कार्यों को समझना चाहते हैं, तो अपने आप को लागू करने का प्रयास करें।

यदि आप पहले ही अवधारणाओं को समझते हैं और पहिया को फिर से आविष्कार करने की आवश्यकता महसूस नहीं करते हैं, तो फ्रेमवर्क का उपयोग करें। प्रिज्म एक ठोस विकल्प है ... इसके लिए जाओ।

+0

त्वरित उत्तर के लिए धन्यवाद। मैंने बस एमवीवीएम को स्क्रैच से लागू करने की कोशिश की। मैं कहूंगा कि मुझे कुछ छोटी चीजों के अलावा अवधारणा मिली है (मुझे गहरी खुदाई करने की ज़रूरत है) लेकिन एमवीवीएम को एक अवधारणा के रूप में मिला। लेकिन अब मेरी पसंद क्या होनी चाहिए? आवेदन पर विचार करते हुए मेरा अपना एमवीवीएम/प्रिज्म/लाइट एक बड़ा एप्लीकेशन नहीं है। – WhoIsNinja

+0

@NSingla - तब तक जब तक आप प्रिज्म के साथ प्रतिस्पर्धा करने के लिए एमवीवीएम फ्रेमवर्क बनाने के लिए खुद को चुनौती देने की कोशिश नहीं कर रहे हैं ... बस फ्रेमवर्क का उपयोग करें! अपने आप को जीवन कठिन बनाने का कोई कारण नहीं है। –

+0

बढ़िया, धन्यवाद मुझे आपका अंक मिलता है। और अगर मैं प्रिज्म में कूदता हूं तो क्या मुझे एमवीवीएम को लागू करने की कोशिश करने से पहले एकता/एमईएफ को समझने की ज़रूरत है? – WhoIsNinja

3

मैं पहिया को फिर से शुरू नहीं करता, ढांचे का मूल्यांकन नहीं करता और केवल तभी यदि आपकी आवश्यकताओं को पूरा नहीं करते हैं, तो क्या आप अपना खुद का ढांचा लिखना चाहिए।

+0

यह सही है, और यह केवल एमवीवीएम पर लागू नहीं होता है। जब तक आप मूल्य जोड़ रहे हैं, पुन: उपयोग, पुन: उपयोग, पुन: उपयोग और आधारभूत संरचना सामग्री के बजाय अपने मूल व्यापार तर्क पर ध्यान केंद्रित न करें जो दूसरों ने पहले से ही किया है। – jason

3

मैं इस बात को देखने के लिए सुझाव देंगे: (अगर आप अभी भी नहीं है) Build Your Own MVVM Framework

मैं पहली बार विभिन्न चौखटे के कुछ संसाधनों को पढ़ने का फैसला किया, तो मैं कुछ नमूना परियोजना डाउनलोड किया है Caliburn Micro के आधार पर कैसे चीजें काम किया

Caliburn एक महान रूपरेखा है समझते हैं और सब आप आरंभ करने की जरूरत के साथ प्रदान करते हैं और MVVM

में एक गहरी सवारी

मैं सुझाव देंगे कि आप शुरू करने के लिए करने के लिए इसका उपयोग करके, और शायद, जब आप पर्याप्त आरामदायक महसूस करते हैं, तो आप इसे अनुकूलित करने या इसे अपनी आवश्यकताओं/शैली के अनुरूप बनाने के लिए सरल बना सकते हैं, फिर, यदि आपके पास समय होगा, तो आप अपना स्वयं का निर्माण करेंगे =)

संपादित करें

MediaOwl सबसे अच्छा ओपन सोर्स प्रोजेक्ट मैं कार्रवाई में Caliburn माइक्रो का एक अच्छा कार्यान्वयन को देखने के लिए, यह पता जांच सुनिश्चित करें यदि आप इस ढांचे

+0

प्रिज्म/लाइट को लागू करने और काम करने के लिए यह आसान है? – WhoIsNinja

+0

http://www.japf.fr/silverlight/mvvm/index.html यह तुलनात्मक टूल दिखाता है कि कैलिबर्न माइक्रो यह अच्छा विकल्प नहीं है, इसके अनुसार कैलिबर्न या लाइट पसंद होना चाहिए। हालांकि इसमें सूची पर प्रिज्म नहीं है। – WhoIsNinja

+1

कैलिबर्न माइक्रो सरल है लेकिन वास्तव में बुनियादी ढांचा नहीं है, यह शक्तिशाली है क्योंकि इसमें अच्छी funcionalities है, एमवीवीएम लाइट बहुत बुनियादी है, और यह पैटर्न को समझने में मदद करता है। यह सच है कि कैलिबर्न माइक्रो में एमवीवीवीएम में आपकी सभी कार्यक्षमताओं की आवश्यकता नहीं है, लेकिन कैलिबर्न के पूर्ण संस्करण की तुलना में पैच/विस्तार करना आसान है। यह मेरी धारणा थी जब मैंने अपने प्रोजेक्ट में ढांचे के स्रोत कोड को उस पर नियंत्रण रखने के लिए शामिल किया था, अगर मुझे कभी भी मेरी जरूरतों के अनुरूप बेहतर व्यवहार करने या कुछ सम्मेलन को संशोधित करने की आवश्यकता होती है – BFil