2012-04-25 35 views
6

Tôi dự định xây dựng ứng dụng với Winform và tôi muốn sử dụng mẫu MVP.Làm thế nào để cấu trúc một dự án trong Winforms bằng cách sử dụng mô hình MVP?

Vì tôi chưa bao giờ sử dụng mẫu MVP trước đây, tôi không chắc chắn cách cấu trúc dự án mới.

Tôi có nên sử dụng cùng một quy ước như trong ASP.NET MVC như tạo các thư mục riêng biệt cho Mô hình, Người trình bày và Chế độ xem không, sau đó có thể sử dụng quy ước đặt tên cho lớp Trình bày để tên của họ kết thúc bằng từ "Người trình bày" cách tên của bộ điều khiển trong MVC kết thúc bằng "Bộ điều khiển")

Hoặc tôi có nên tạo các dự án riêng cho Trình bày và Mô hình không?

+0

Điều này sẽ phụ thuộc vào nhiều yếu tố ... Sử dụng quy ước mà bạn thấy hữu ích. Tên luôn có thể được tái cấu trúc ở giai đoạn sau. – Patrick

+2

Bạn không nhất thiết phải tạo các dự án riêng biệt cho Mô hình và Trình bày, nhưng nó rất khuyến khích. Quy ước đặt tên chỉ là * quy ước *, có nghĩa là nó không ảnh hưởng trực tiếp đến cách mọi thứ hoạt động, nhưng nó rất hữu ích. Một số khung công tác (ví dụ: ASP.NET MVC hoặc đường ray) sẽ hoạt động theo một cách nhất định theo các quy ước mà nó tuân theo, nhưng không có gì ngăn bạn xác định quy ước của riêng bạn (và mã hóa nó). Dưới đây là một đọc tốt về [MVP] [1] [1]: http://msdn.microsoft.com/en-us/magazine/cc188690.aspx – MilkyWayJoe

Trả lời

2

Thành thật mà nói, đây là một câu hỏi rất chủ quan. Cách tôi làm điều này ngày hôm nay có thể không phải là cách tôi làm điều này cho các ứng dụng tiếp theo. Nó chỉ đơn giản là hoạt động tốt cho tôi. Ngoài ra, những gì làm việc cho tôi có thể không phải là cách bất cứ ai khác sẽ làm điều đó - không phải là tôi là sai, tốt hơn, hoặc tệ hơn.

ước đặt tên sẽ giúp:

  • PersonPresenter
  • PersonViewModel (nếu dữ liệu được đọc/ghi để lưu trữ dữ liệu)
  • PersonView
  • IPersonView

Ngoài ra, tôi đã tách ra giải pháp hiện tại của tôi thành 3 dự án:

  • Bản thân ứng dụng - lớp duy nhất trong dự án đó là Program.cs
  • Mô hình trình bày: người trình bày, giao diện xem, kiểu xem (nếu có); tất cả trong thư mục bằng cách quan điểm của mình
  • Lần tổ chức: một dự án chỉ dành riêng cho các quan điểm

Bây giờ, mảnh duy nhất của giải pháp mà tôi cần phải tham khảo cho kiểm tra đơn vị là dự án PresentationModels.

Các vấn đề liên quan