ความแตกต่างระหว่าง MVC และ MVVM (พร้อมตาราง)

สารบัญ:

Anonim

MVC และ MVVM เป็นการเริ่มต้นสองประเภทที่ใช้ในการเล่าถึงโครงการซอฟต์แวร์บางโครงการในด้านสถาปัตยกรรม พวกเขามีตัวย่อที่แตกต่างกันและยอมรับคำจำกัดความของมัน มีความแตกต่างมากมายระหว่างทั้งตัวย่อ เช่น ในความหมาย การใช้งาน ผู้ก่อตั้ง การสนับสนุน ฯลฯ ข้อมูลโดยละเอียดเกี่ยวกับ MVC และ MVVM จะกล่าวถึงด้านล่าง

MVC กับ MVVM

ความแตกต่างหลัก ระหว่าง MVC และ MVVM คือ ทั้งคู่มีความหมายต่างกัน แม้ว่าจะมีสิ่งที่เหมือนกันในด้านสถาปัตยกรรม MVC เล่าว่าคอนโทรลเลอร์เป็นเครื่องหมายรายการเดียวของแอปพลิเคชัน แต่ในทางกลับกัน MVVM เล่าว่าการดูเป็นเครื่องหมายรายการเดียวของแอปพลิเคชัน นอกจากนี้ MVC ยังเป็นคำย่อของ Model-View-Controller และ MVVM เป็นตัวย่อของ Model-View-ViewModel

MVC หมายถึงการแยกแอปพลิเคชันออกเป็นส่วนๆ เช่น โมเดล มุมมอง และตัวควบคุมตามคุณลักษณะของการพัฒนาแอปพลิเคชัน MVC เป็นตัวย่อของ Model-View-Controller MVC ใช้กันอย่างแพร่หลายในอุตสาหกรรมต่างๆ เพื่อพัฒนาโครงการของตน MVC แต่ละประเภทมีแง่มุมที่แตกต่างกันออกไป ซึ่งทำให้แต่ละประเภทมีความแตกต่างกัน แม้ว่าจะมีการเชื่อมโยงกัน

ในทางกลับกัน MVVM หมายถึงการแยกตรรกะของโปรแกรมและการควบคุมส่วนต่อประสานผู้ใช้ของแอปพลิเคชัน มันมีคุณสมบัติที่หลากหลาย เช่น คุณสมบัติการทดสอบ การใช้รหัสซ้ำ การผูกข้อมูลที่ซับซ้อน ฯลฯ โดยจัดหมวดหมู่การสื่อสารระหว่างชั้นธุรกิจและการนำเสนอได้อย่างง่ายดายและง่ายดายโดยไม่รบกวนซึ่งกันและกัน MVVM เป็นตัวย่อของ Model-View-ViewModel มีประโยชน์มากสำหรับวัตถุประสงค์ที่เกี่ยวข้องกับแอปพลิเคชันต่างๆ

ตารางเปรียบเทียบระหว่าง MVC และ MVVM

พารามิเตอร์ของการเปรียบเทียบ

MVC

MVVM

คำนิยาม ซอฟต์แวร์ที่แยกโมเดล มุมมอง และตัวควบคุมออกเป็นสามประเภทเรียกว่า MVC ซอฟต์แวร์ที่แยกตรรกะของโปรแกรมและการควบคุมส่วนต่อประสานผู้ใช้ออกเป็นหมวดหมู่ต่างๆ เรียกว่า MVVM
ตัวย่อ MVC ย่อมาจาก Model-View-Controller MVVM ย่อมาจาก Model-View-ViewModel
ปีที่ก่อตั้ง MVC ก่อตั้งขึ้นในปี 1976 MVVM ก่อตั้งขึ้นในปี 2548
ผู้สร้าง ในขั้นต้น MVC ก่อตั้งโดย Trygve Reenskaug แต่ต่อมา Jim Althoff และคนอื่นๆ ได้ก่อตั้ง MVC เวอร์ชันที่อัปเกรดมากขึ้น MVVM ก่อตั้งโดยสถาปนิกสองคนของ Microsoft ชื่อ Ken Copper และ Ted Peter's
การเป็นตัวแทนของแต่ละหมวด ใน MVC แต่ละหมวดหมู่แสดงถึงสิ่งที่เป็นของตัวเอง และพวกมันคือ - แบบอย่าง: โดยทั่วไป โมเดลจะดูแลลอจิกของข้อมูล ดู: ดูดำเนินการรายละเอียดไปยังผู้ใช้จากแบบจำลอง ผู้ควบคุม: ผู้ควบคุมดำเนินการสองงาน ซึ่งรวมถึงการควบคุมการไหลของข้อมูลและข้อมูลที่อัปเดต ใน MVVM แต่ละหมวดหมู่ยังแสดงถึงลักษณะเช่น - แบบอย่าง: โมเดลนำเสนอข้อมูลของสถาบัน ดู: มุมมองจะดูแลเลเยอร์ส่วนต่อประสานผู้ใช้ ดูรุ่น: แสดงถึงความสัมพันธ์ระหว่าง View และ Model
การรับรู้ของการดู The View ให้ความใส่ใจอย่างเต็มที่และตระหนักถึงรูปแบบของแอปพลิเคชัน มุมมองนั้นใส่ใจน้อยที่สุดและไม่ได้รับรู้ถึงรูปแบบของแอปพลิเคชันเลย
การใช้งาน โดยทั่วไป ASP.NET และ JAVA Sprong ใช้ MVC โดยทั่วไป Silverlight, Angular JS และ Microsoft WPF จะใช้ MVVM
ความสัมพันธ์เพียงผู้เดียว MVC สามารถมีความสัมพันธ์ระหว่าง Controller และ View ได้ ระหว่างช่วงมาตราส่วนตั้งแต่หนึ่งถึงหลายส่วน MVVM สามารถมีความสัมพันธ์ระหว่าง View และ ViewModel ระหว่างช่วงมาตราส่วนตั้งแต่หนึ่งถึงหลายส่วน
ข้อมูลอ้างอิงของ View ใน MVC View จะไม่ขอข้อมูลอ้างอิงใด ๆ จากคอนโทรลเลอร์ ใน MVVM View จะค้นหาข้อมูลอ้างอิงจาก ViewModel
ระยะเวลา MVC เปิดตัวในช่วงต้นและด้วยเหตุนี้จึงเป็นรุ่นเก่ากว่าเล็กน้อย MVVM เปิดตัวเมื่อไม่กี่ปีก่อน ดังนั้นจึงค่อนข้างจะค่อนข้างใหม่
ความซับซ้อนของการใช้งาน MVC นั้นซับซ้อนน้อยกว่าเล็กน้อยเมื่อเปรียบเทียบกับ MVVM MVVM นั้นซับซ้อนกว่าและต้องใช้เวลาในการทำความคุ้นเคยกับฟีเจอร์ของมัน

MVC คืออะไร?

MVC เป็นซอฟต์แวร์ที่ได้รับการเปิดตัวเพื่อสร้างขอบเขตบางอย่างสำหรับโปรแกรมเมอร์ในการทำงานกับโค้ด MVC เป็นตัวย่อของ Model-View-Controller แต่ละประเภทมีข้อกำหนด ซอฟต์แวร์แยกรุ่น มุมมอง และตัวควบคุมออกเป็นสามประเภท MVC ก่อตั้งขึ้นเมื่อปี พ.ศ. 2519 ก่อตั้งและเปิดใหม่สองครั้ง หลายคนเกี่ยวข้องกับการทำ MVC ในขั้นต้น MVC ก่อตั้งโดย Trygve Reenskaug แต่ต่อมา Jim Althoff และคนอื่นๆ ได้ก่อตั้ง MVC เวอร์ชันที่อัปเกรดมากขึ้น ตอนนี้ สิ่งที่เราใช้เป็น MVC เวอร์ชันล่าสุดหรือขั้นสูง

แต่ละหมวดหมู่แสดงถึงบางสิ่งบางอย่างของตนเองและพวกเขาคือ - แบบอย่าง: โดยทั่วไป โมเดลจะดูแลลอจิกของข้อมูล ดู: ดูดำเนินการรายละเอียดไปยังผู้ใช้จากแบบจำลอง ผู้ควบคุม: ผู้ควบคุมดำเนินการสองงาน ซึ่งรวมถึงการควบคุมการไหลของข้อมูลและข้อมูลที่อัปเดต หมวดหมู่เหล่านี้ประมวลผลคุณลักษณะโดยไม่รบกวนกันและกัน แต่ละหมวดหมู่เหล่านี้ยังทำงานเฉพาะบางอย่างที่ไม่ได้ถูกมองจากที่อื่น

ซอฟต์แวร์นี้ใช้ในซอฟต์แวร์การเขียนโปรแกรมคอมพิวเตอร์อื่นๆ เช่น Smalltalk, ASP.NET เป็นต้น นอกจากนี้ สิ่งแรกที่กระทบผู้ใช้คือ Controller ดังนั้น ตัวควบคุมจึงถูกเรียกว่าเป็นจุดเริ่มต้นหลักของ MVC

MVVM คืออะไร?

MVVM เป็นซอฟต์แวร์ที่แบ่งตัวย่อออกเป็นสามประเภท ตัวย่อของ MVVM ย่อมาจาก Model-View-ViewModel และข้อกำหนดเหล่านี้แสดงถึงซอฟต์แวร์สามประเภทที่มีการเป็นตัวแทน แต่ละประเภทยังแสดงถึงลักษณะเช่น - แบบอย่าง: โมเดลนำเสนอข้อมูลของสถาบัน ดู: มุมมองจะดูแลเลเยอร์ส่วนต่อประสานผู้ใช้ ดูรุ่น: แสดงถึงความสัมพันธ์ระหว่าง View และ Model

เป็นครั้งแรกที่ก่อตั้งโดยสถาปนิก Microsoft สองคน Mr. Ken Copper และ Red Peters ในปี 2548 เป็นซอฟต์แวร์ที่เพิ่งเปิดตัวใหม่ มันมีทั้งข้อดีและข้อเสียของมันเอง มันค่อนข้างซับซ้อนและต้องใช้เวลาในการทำความคุ้นเคยกับคุณลักษณะสำหรับการใช้งาน ซอฟต์แวร์นี้แยกตรรกะของโปรแกรมและการควบคุมส่วนต่อประสานผู้ใช้ออกเป็นหมวดหมู่ต่างๆ เรียกว่า MVVM

MVVM เชื่อมโยงกับงานต่างๆ เช่น คุณลักษณะการทดสอบ การเชื่อมโยงข้อมูลที่ซับซ้อน ให้ UI ที่ดี เป็นต้น โดยทั่วไป Silverlight, Angular JS และ Microsoft WPF ใช้ MVVM ใน MVVM งานนี้สามารถทำงานร่วมกันได้สำเร็จ นอกจากนี้ยังเป็นเรื่องง่ายและสะดวกในการบำรุงรักษาการใช้งาน นอกจากนี้ยังสามารถปรับมุมมองและลดคุณภาพเพื่อวัตถุประสงค์ทางธุรกิจต่างๆ ได้อีกด้วย

ความแตกต่างหลักระหว่าง MVC และ MVVM

บทสรุป

MVC และ MVVM คือรูปแบบที่ใช้ในแอปพลิเคชัน ทั้ง MVM และ MVVM มีความแตกต่างกัน พวกเขาทั้งคู่เปิดตัวในยุคที่ต่างกัน และยังมีผู้ก่อตั้งที่แตกต่างกันด้วย ความแตกต่างของ MVM แบ่งตัวเองออกเป็นสามส่วน ได้แก่ Model, View และ Controller คำย่อแต่ละคำมีความหมายและการทำงานเฉพาะ ในทางกลับกัน MVVM ยังแบ่งออกเป็นสามส่วน ได้แก่ Model, View และ ModelView แต่ละหมวดหมู่จะแตกต่างกันไปตามหมวดหมู่ของ MVM ทั้งสองมีข้อดีและข้อเสียของกันและกัน ในแง่ของความชอบ รูปแบบทั้งสองทำงานได้อย่างน่าอัศจรรย์ แต่ MVC ค่อนข้างซับซ้อนน้อยกว่า MVVM นอกจากนี้รูปแบบทั้งสองยังใช้ในระบบโปรแกรมคอมพิวเตอร์ต่างๆ

ความแตกต่างระหว่าง MVC และ MVVM (พร้อมตาราง)