คำถามติดแท็ก mvp

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

4
อะไรคือความแตกต่างระหว่างรูปแบบการออกแบบ MVC, MVP และ MVVM ในแง่ของการเข้ารหัส c #
หากเราค้นหา Google โดยใช้วลี "อะไรคือความแตกต่างระหว่าง MVC, MVP และ MVVM รูปแบบการออกแบบ" จากนั้นเราอาจได้ URL ไม่กี่อันที่พูดถึงความแตกต่างระหว่างรูปแบบการออกแบบ MVC MVP และ MVVM ตามหลักเหตุผลเช่น : MVP ใช้ในสถานการณ์ที่ไม่สามารถผูกข้อมูลผ่าน datacontext ได้ Windows Forms เป็นตัวอย่างที่สมบูรณ์แบบของสิ่งนี้ ในการแยกมุมมองออกจากแบบจำลองจำเป็นต้องมีผู้นำเสนอ เนื่องจากมุมมองไม่สามารถเชื่อมโยงโดยตรงกับผู้นำเสนอได้จึงต้องส่งข้อมูลไปยังมุมมองผ่านอินเทอร์เฟซ (IView) MVVM ใช้ในสถานการณ์ที่ผูกพันผ่าน datacontext ได้ ทำไม? อินเทอร์เฟซ IView ต่าง ๆ สำหรับแต่ละมุมมองจะถูกเอาออกซึ่งหมายถึงรหัสน้อยกว่าเพื่อรักษา ตัวอย่างที่ MVVM มีความเป็นไปได้ ได้แก่ WPF และโปรเจ็กต์ javascript โดยใช้สิ่งที่น่าพิศวง MVC ใช้ในสถานการณ์ที่ไม่สามารถเชื่อมต่อระหว่างมุมมองและส่วนที่เหลือของโปรแกรมได้ (และคุณไม่สามารถใช้ MVVM …

3
Model-View-Presenter ใน WinForms
ฉันพยายามใช้วิธี MVP เป็นครั้งแรกโดยใช้ WinForms ฉันพยายามเข้าใจการทำงานของแต่ละเลเยอร์ ในโปรแกรมของฉันฉันมีปุ่ม GUI ที่เมื่อคลิกแล้วจะเปิดหน้าต่าง openfiledialog ดังนั้นการใช้ MVP GUI จะจัดการกับเหตุการณ์การคลิกปุ่มแล้วเรียก Presenter.openfile (); ภายใน Presenter.openfile () ควรมอบหมายการเปิดไฟล์นั้นให้กับเลเยอร์โมเดลหรือเนื่องจากไม่มีข้อมูลหรือตรรกะในการประมวลผลควรดำเนินการตามคำขอและเปิดหน้าต่าง openfiledialog หรือไม่ อัปเดต: ฉันได้ตัดสินใจที่จะเสนอเงินรางวัลเนื่องจากฉันรู้สึกว่าต้องการความช่วยเหลือเพิ่มเติมเกี่ยวกับเรื่องนี้และควรปรับให้เหมาะกับประเด็นเฉพาะของฉันด้านล่างเพื่อให้ฉันมีบริบท เอาล่ะหลังจากอ่าน MVP แล้วฉันได้ตัดสินใจที่จะใช้ Passive View อย่างมีประสิทธิภาพฉันจะมีการควบคุมมากมายบน Winform ซึ่งจะจัดการโดยผู้นำเสนอและจากนั้นงานที่มอบหมายให้กับ Model (s) ประเด็นเฉพาะของฉันอยู่ด้านล่าง: เมื่อโหลด winform จะต้องได้รับ Treeview ฉันถูกต้องหรือไม่ที่คิดว่ามุมมองควรเรียกใช้เมธอดเช่น Presenter.gettree () สิ่งนี้จะมอบสิทธิ์ให้กับโมเดลซึ่งจะได้รับข้อมูลสำหรับ Treeview สร้างและกำหนดค่ากลับไปที่ ผู้นำเสนอซึ่งจะส่งผ่านไปยังมุมมองซึ่งจะกำหนดให้เป็นแผงพูด? สิ่งนี้จะเหมือนกันสำหรับการควบคุมข้อมูลใด ๆ บน Winform เนื่องจากฉันมี …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.