ปฏิกิริยาการเขียนโปรแกรมและ MVVM เป็นสองวิธีที่สามารถแก้ไขปัญหาของการแยกชั้นโดเมนจาก UI
- MVVM ทำสิ่งนี้โดยกำหนด viewmodel ซึ่งเป็นโครงสร้างข้อมูลที่แม็พกับคอมโพเนนต์ UI UI แสดงข้อมูลและอาจอัปเดตเมื่อผู้ใช้เกิดขึ้น
- เฟรมเวิร์กที่ทำปฏิกิริยาจะกำหนดกราฟของสิ่งที่สังเกตได้ซึ่งแจ้งให้ UI ทราบว่ามีการเปลี่ยนแปลงข้อมูลบางส่วน
เฟรมเวิร์กปฏิกิริยาได้รับการแบ่งปันความคิดทั้งในแพลตฟอร์มหลัก (ด้วย Rx ใน. net & java, react.js) และสถานที่ทดลองเพิ่มเติม (FRP in haskell)
ฉันใช้ MVVM เป็นมุมเป็นหลักและฉันพบว่าอัตราส่วนความเรียบง่ายต่อการแสดงออกค่อนข้างน่าพอใจแม้ว่าฉันจะทำงานในโครงการขนาดเล็ก / ขนาดกลางเท่านั้น
เฟรมเวิร์กที่ตอบสนองต่อการซื้อนักพัฒนาที่ mvvm ทำไม่ได้คืออะไร
มีความแตกต่างจริงๆเหรอ? ตัวอย่างเช่น knockout.js ถูกโฆษณาเป็นเฟรมเวิร์ก mvvm แต่มีความรู้สึกโต้ตอบในอินเตอร์เฟส:
this.firstName = ko.observable("John");
this.lastName = ko.observable("Smith");
this.fullName = ko.computed(function() {
return this.firstName() + " " + this.lastName();
}, this);