रिएक्टिव प्रोग्रामिंग और एमवीवीएम दो दृष्टिकोण हैं जो यूआई से डोमेन परत को अलग करने की समस्या का समाधान कर सकते हैं।
- MVVM एक व्यूमोडल को परिभाषित करके ऐसा करता है, जो UI घटकों के लिए मैप की गई डेटा संरचना है। यूआई डेटा प्रदर्शित करता है, और संभवत: उपयोगकर्ता होने पर इसे अपडेट कर सकता है।
- एक प्रतिक्रियाशील रूपरेखा वेधशालाओं के एक ग्राफ को परिभाषित करती है जो यूआई को सूचित करती है कि डेटा का कुछ टुकड़ा बदल गया है
प्रतिक्रियाशील रूपरेखा मन की हिस्सेदारी प्राप्त कर रहे हैं, दोनों मुख्यधारा के प्लेटफार्मों में (आरएक्स इन .नेट और जावा, रिएक्ट.जेएस के साथ) और अधिक प्रायोगिक स्थानों (हैस्केल में एफआरपी)।
मैंने मुख्य रूप से कोणीय के साथ MVVM का उपयोग किया है, और मुझे अभिव्यक्ति की सरलता अनुपात काफी संतोषजनक लगता है, हालांकि मैंने केवल इसके साथ छोटे / मध्यम परियोजनाओं पर काम किया है।
एक प्रतिक्रियाशील ढांचा क्या डेवलपर को खरीदता है जो mvvm नहीं करता है?
क्या वास्तव में अंतर है? उदाहरण के लिए, नॉकआउट.जेएस को एक एमवीवीएम फ्रेमवर्क के रूप में विज्ञापित किया गया है, लेकिन इसके इंटरफ़ेस में प्रतिक्रियात्मक भावना है:
this.firstName = ko.observable("John");
this.lastName = ko.observable("Smith");
this.fullName = ko.computed(function() {
return this.firstName() + " " + this.lastName();
}, this);