2009-03-31 39 views
9

Tôi đang tìm ra một ứng dụng kinh doanh WPF trong đầu và một điều làm tôi hứng thú là cách tôi nên xử lý làm cho nó cực kỳ mô-đun. Ví dụ, ứng dụng chính của tôi chỉ đơn giản là chứa những điều cơ bản để bắt đầu giao diện, tải các mô-đun, kết nối với máy chủ, vv Các mô-đun này, dưới dạng các thư viện lớp, sẽ chứa các cửa sổ WPF và logic riêng của chúng. Mô-đun có thể xác định từ điển tài nguyên của riêng chúng và tất cả kéo từ từ điển tài nguyên của ứng dụng chính cho các cọ phổ biến và như vậy.Xây dựng một ứng dụng kinh doanh cao với WPF?

Cách tốt nhất để thực hiện một hệ thống có tính chất này là gì? Giao diện chính nên được xây dựng sao cho các mô-đun mà nó tải có thể thay đổi hầu như bất kỳ khía cạnh nào của giao diện người dùng và logic của nó?

Tôi nhận ra đó là một câu hỏi khá mơ hồ, nhưng tôi chỉ đơn giản là tìm kiếm đầu vào chung và động não.

Cảm ơn!

Trả lời

8

Check-out Composite Client Application Guidance

Composite Thư viện ứng dụng được thiết kế để giúp các kiến ​​trúc sư và các nhà phát triển đạt được các mục tiêu sau:

Tạo một ứng dụng phức tạp từ các module có thể được xây dựng, lắp ráp, và, tùy chọn, triển khai bởi các nhóm độc lập sử dụng WPF hoặc Silverlight.

Giảm thiểu phụ thuộc nhóm chéo và cho phép các nhóm chuyên về các lĩnh vực khác nhau, chẳng hạn như thiết kế giao diện người dùng (UI), triển khai thực hiện logic nghiệp vụ và phát triển mã cơ sở hạ tầng.

Sử dụng kiến ​​trúc khuyến khích khả năng sử dụng lại trên các nhóm độc lập.

Tăng chất lượng ứng dụng bằng cách tóm tắt các dịch vụ phổ biến khả dụng cho tất cả các nhóm.

Tăng thêm khả năng mới.

1

Có một cái nhìn tại Prism

+0

Lăng kính LÀ "Hướng dẫn ứng dụng khách hàng tổng hợp" được đề cập bởi Gulzar –

+0

Denis: Cả hai câu trả lời đều được đăng gần như cùng một lúc. –

2

Trước hết bạn có thể quan tâm SharpDevelop thực hiện. Nó dựa trên hệ thống addin riêng của nó được gọi là AddInTree. Đây là một dự án riêng biệt và có thể được sử dụng trong các giải pháp của riêng bạn miễn phí. Tất cả mọi thứ được phân chia trên các addins khác nhau, trong đó addins dễ dàng được thêm vào/gỡ bỏ/cấu hình bằng các phương tiện của file xml. SharpDevelop là một dự án nguồn mở, do đó bạn sẽ có cơ hội kiểm tra cách cơ sở hạ tầng được giới thiệu, cũng như tích hợp bus dịch vụ và tích hợp chéo. Cây addin lõi có thể dễ dàng di chuyển đến dự án WPF mà không có tác động.

Tùy chọn tiếp theo đang dùng "Composite Client Application Guidance" (aka Prism, aka CompositeWPF) đã được đề cập trước đó. Bạn sẽ nhận được Unity (Object builder) hỗ trợ out-of-box, Event Aggregation cũng như tập hợp các mẫu thiết kế có giá trị được thực hiện.

Nếu bạn muốn thực hiện một số thiết kế và kiến ​​trúc mức thấp cho mình, MEF sẽ là lựa chọn tốt nhất (mặc dù làm việc với cả ba cá nhân tôi thích cái này). Đây là những gì VS 2010 sẽ được dựa trên để bạn có thể chắc chắn rằng dự án sẽ không mất hỗ trợ trong tương lai.

Lời khuyên của tôi là xây dựng trên các phương pháp này và lựa chọn phương pháp tốt nhất và hiệu quả phù hợp nhất với nhu cầu của bạn và nhu cầu của dự án của bạn.

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