หากเราค้นหา Google โดยใช้วลี "อะไรคือความแตกต่างระหว่าง MVC, MVP และ MVVM รูปแบบการออกแบบ" จากนั้นเราอาจได้ URL ไม่กี่อันที่พูดถึงความแตกต่างระหว่างรูปแบบการออกแบบ MVC MVP และ MVVM ตามหลักเหตุผลเช่น :
MVP
ใช้ในสถานการณ์ที่ไม่สามารถผูกข้อมูลผ่าน datacontext ได้ Windows Forms เป็นตัวอย่างที่สมบูรณ์แบบของสิ่งนี้ ในการแยกมุมมองออกจากแบบจำลองจำเป็นต้องมีผู้นำเสนอ เนื่องจากมุมมองไม่สามารถเชื่อมโยงโดยตรงกับผู้นำเสนอได้จึงต้องส่งข้อมูลไปยังมุมมองผ่านอินเทอร์เฟซ (IView)
MVVM
ใช้ในสถานการณ์ที่ผูกพันผ่าน datacontext ได้ ทำไม? อินเทอร์เฟซ IView ต่าง ๆ สำหรับแต่ละมุมมองจะถูกเอาออกซึ่งหมายถึงรหัสน้อยกว่าเพื่อรักษา ตัวอย่างที่ MVVM มีความเป็นไปได้ ได้แก่ WPF และโปรเจ็กต์ javascript โดยใช้สิ่งที่น่าพิศวง
MVC
ใช้ในสถานการณ์ที่ไม่สามารถเชื่อมต่อระหว่างมุมมองและส่วนที่เหลือของโปรแกรมได้ (และคุณไม่สามารถใช้ MVVM หรือ MVP ได้อย่างมีประสิทธิภาพ) สิ่งนี้อธิบายอย่างชัดเจนถึงสถานการณ์ที่เว็บ API ถูกแยกออกจากข้อมูลที่ส่งไปยังเบราว์เซอร์ไคลเอ็นต์ ASP.NET MVC ของ Microsoft เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการจัดการสถานการณ์ดังกล่าวและให้กรอบ MVC ที่ชัดเจนมาก
แต่ฉันไม่ได้พบบทความเดียวที่พูดถึงความแตกต่างในทางทฤษฎีพร้อมกับรหัสตัวอย่าง
มันจะดีจริงๆถ้าฉันได้รับบทความที่พูดถึงความแตกต่างระหว่างรูปแบบการออกแบบทั้ง 3 (MVC, MVP และ MVVM) พร้อมกับรหัส
ฉันต้องการจับซอร์สโค้ดของแอพCRUD ที่คล้ายกัน 3 ตัวซึ่งได้รับการพัฒนาโดยรูปแบบการออกแบบทั้งสามนี้ (MVC, MVP & MVVM) เพื่อให้ฉันสามารถอ่านโค้ดและเข้าใจว่าควรเขียนโค้ดสำหรับลวดลายการออกแบบทั้งสามนี้อย่างไร (MVC, MVP & MVVM)
ดังนั้นหากบทความใดที่มีอยู่ซึ่งกล่าวถึงว่าโค้ดจะมีลักษณะแตกต่างกันอย่างไรสำหรับรูปแบบการออกแบบทั้งสามนี้ (MVC, MVP & MVVM) โปรดเปลี่ยนเส้นทางฉันไปยังบทความนั้น