Windows程序设计:MFC 、Winform 和 WPF 比较
MFC生成本機代碼,自然是很快,可是消息循環減緩了界面顯示速度。
WinForm封裝了win32的api,多次進行P/invoke操作(大部分使用p/invoke操作封裝),速度慢。
WPF是一種新的模型,不再使用win32模型,自己新建模型,使用dx作為新的顯示技術,直接訪問驅動程序,加快了運行速度,可是,這種模型,需要支持dx9的顯卡,硬件要求高(你還能找到現代機器不支持dx9的嗎?)
開發效率上,MFC < WPF < WinForm
盡管MFC開發界面執行效率高但是開發效率低,作為現在的項目開發來說時間跟開發效率往往能決定項目的成敗,所以除非有特別的需求,否則都回盡量避免用MFC來做開發,MFC只是一個弱封裝器。
開發成本,MFC > WPF > WinForm
用MFC開發成本太高,對開發者能力要求更高,作為客服當然希望開發的費用越少越好,開發者當然希望錢賺得越多越好,這樣一比,這也是MFC沒落的一個很大的原因。
界面執行效率上,MFC == WPF > WinForm
隨著計算機硬件的性能提高,多核cpu的普及,它們的差距會越來越小。
開發靈活性上:WPF > MFC > WinForm
美觀上:WPF > WinForm > MFC
這一項中MFC下要開發出一個華麗的ui極其困難,也許你可以說你可以用控件,但是商業開發控件是要收費的!!MFC要寫出這種效果不知要寫到何年何月。這樣一來MFC存在的價值就更低了。效率和美觀不如WPF,開發效率又不如WinForm。
內存使用上:WPF > WinForm > MFC
隨著計算機硬件的性能提高WPF這個缺點會被忽略。
使用范圍:WPF > MFC == WinForm
有以上可知:WPF大有取代WinForm和MFC之勢,從未來net的發展來看,MFC以后只會變成一種經典,作為一種技術來供開發者學習,WinForm和WPF兩者會并存發展,但最終都會被WPF取代,最終實現桌面應用程序和瀏覽器應用程序的統一。
總結
以上是生活随笔為你收集整理的Windows程序设计:MFC 、Winform 和 WPF 比较的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware Workstation提示
- 下一篇: Windows程序设计之创建窗口示例