2011-06-20 47 views
1

我即將啓動一個大型項目,其中相同的數據庫將被三個不同的應用程序/來源查詢。爲微軟嵌入式手持6.5.3設備開發 - 體系結構?

對於WPF我想我會去與MVVM模式(或將MVP更有意義,也許?),但是當涉及到哈ndheld設備,我不知道要選擇哪種模式/ arcitecture。在這樣的設備上還有可能存在某種類型的電弧嗎?

任何人都有這方面的經驗? :-)

任何幫助/提示表示讚賞!

/博

回答

2

如果你打算使用Windows Mobile 6.5,.NET Compact Framework的3.5 SP1一起(在Visual Studio 2008),最常見的方法是使用Windows窗體(精簡版)。如果你打算使用C++,你可以忽略這個答案的其餘部分,因爲我不確定C++的最佳實踐。

用於.NET CF的Windows Forms與完整的框架Windows Forms相似,但功能和開箱即用的工具更受限制。實際上,舊版Windows Mobile平臺沒有WPF/Silverlight/MVVM選項,但如果您勇敢的話,您可以嘗試推出自己的MVVM類型框架,但我可能不會認爲MVVM可以更好地與WPF配合使用或Silverlight,並且可能無法映射到Windows窗體以及其他選項。

有幾個MVC或MVP的例子或基本框架在那裏爲.NET CF窗體,但我還沒有看到一個真正全功能的。您可以從微軟的模式&實踐團隊嘗試Windows Mobile的「智能客戶端軟件工廠」,但我不確定我會走那條路線,因爲它可能過於複雜。搜索谷歌的「Windows Mobile MVC或MVP」。很多時候,MVC/MVP示例只顯示一個屏幕,它並不能讓你知道作者打算如何處理應用程序屏幕轉換,全局事件等。

我可能會建議通過MVC的MVP模式因爲MVP適用於Windows Forms。 MVC對於Forms來說可能有些尷尬,除非你非常小心地做。這是我在.NET CF使用MVP Compact Framework中發現了一個多屏應用的最好的例子:

https://github.com/derickbailey/appcontroller.cf

這是一個很好的例子,因爲它使用像國際奧委會和現代的最佳實踐UI事件聚合。這個例子的另一個好處是,它爲單元測試和UI開發的良好實踐設定了舞臺。