1. 程式人生 > WINDOWS開發 >中型WPF客戶端開發專案總結 - 談談MVVM框架

中型WPF客戶端開發專案總結 - 談談MVVM框架

MVVM介紹

mvvm的歷史已經很久了,現在前端3大框架也都是遵照這個模式設計,相信大家也都清楚。

mvvm這個模式最初應該就是由wpf引進的,由MVC、MVP發展而來,最主要的特性就是雙向繫結的概念。

這四個字母分別表示:m(model)模型、v(view)檢視、vm(viewmodel)檢視模型。

具體含義我也不多說,光從字面意思很好理解,實在不瞭解的可以搜尋引擎搜一下。

“框架”

關於這兩個字,我的理解如下:

1. 開發的最基礎腳手架,提供開發約束

2.在1的基礎上,提供模組化開發的能力

3.便捷的SDK和技術抽象、封裝,方便上層開發

4.其它(記起來再補充)

我的選擇

本人從事客戶端開發5年多,但研究MVVM框架的品種得著實不多,目前只使用過Prism和DevExpress自帶的框架。這兩個框架的原始碼看得也比較多(不過現在已經忘得差不多了,原因後面再講),應該算是相對比較成熟的框架了。我所知道的mvvm框架還有很多,比如近些年比較流行的`ReactiveUI`、`MvvmCross`等,都是比較優秀的,應用也很廣泛。

我這個欄目所說的專案中沒有使用mvvm框架,原因如下:

1.該專案由我一個人獨立開發,開發約定了熟於我心;

2. “框架”也是程式碼,它們能實現的,我也能實現(開源的好處);

3.模組之間的通訊有其它技術手段解決;

4.我不需要太過複雜的功能;

5.沒有框架,我可以使用自己喜歡的IOC容器、自己的`Startup`,可自定義性增強;

目前,沒有使用框架的客戶端執行十分良好。