ฉันได้อ่านสามวันเกี่ยวกับModel-View-Controller (MVC)และModel-View-Presenter (MVP)รูปแบบ และมีคำถามหนึ่งที่รบกวนจิตใจฉันอย่างมาก ทำไมนักออกแบบซอฟต์แวร์จึงคิดค้น MVP เมื่อมี MVC อยู่แล้ว
พวกเขาประสบปัญหาอะไรบ้าง MVC ไม่ได้แก้ปัญหา (หรือแก้ไขไม่ดี) แต่ MVP สามารถแก้ไขได้ MVP ปัญหาใดที่ตั้งใจจะแก้ไข?
ฉันได้อ่านบทความมากมายเกี่ยวกับประวัติและคำอธิบายของ MVP หรือเกี่ยวกับความแตกต่างระหว่าง MVC และ MVP แต่ไม่มีคำตอบที่ชัดเจนสำหรับคำถามของฉัน
ในหนึ่งในบทความที่ฉันอ่านมันก็บอกว่า:
ตอนนี้เข้าสู่ Model View Presenter ซึ่งเป็นการตอบสนองต่อความไม่เพียงพอของรูปแบบ MVC เมื่อนำไปใช้กับส่วนติดต่อผู้ใช้แบบกราฟิกที่ใช้องค์ประกอบที่ทันสมัย ในระบบ GUI ที่ทันสมัยส่วนประกอบของ GUI จะจัดการกับอินพุตของผู้ใช้เช่นการเคลื่อนไหวของเมาส์และการคลิกแทนที่จะเป็นตัวควบคุมส่วนกลาง
ดังนั้นฉันจึงไม่เข้าใจ แต่จริง ๆ แล้วมันสามารถเป็นไปได้ในทางอื่นเช่นองค์ประกอบ GUI ไม่จัดการกับการป้อนข้อมูลของผู้ใช้ด้วยตัวเอง? และ "จัดการกับตัวเอง" หมายความว่าอย่างไร?