天天看點

SilverLight學習記錄

現在剛開始學習SilverLight的MVVM模式,有很多東西還不是很清楚,前面有很多大牛總結了一些經驗,在這裡記錄一下,友善自己現在學習和以後回過頭來總結

摘至(孫長宇個人技術部落格 http://www.cnblogs.com/tiscs/archive/2011/12/16/mvvm-and-me.html)

1   不要在View的Code-Behind中添加任何代碼,除非這段代碼沒有任何複用性且隻與目前頁面互動邏輯有關;

2   ViewModel的設計要面向業務,面向資料會增加系統實作的複雜性,面向視圖會降低ViewModel的可複用性;

3   ViewModel中不能摻雜任何與界面互動邏輯相關的東西(比如說IsExpanded,ShowDialogCommand之流);

4   Action/Behavior做為團隊整體的積累,很重要,要保證品質,積累下來的東西要保證是可複用的;

5   ViewModel和View同時面向需求去設計,這樣就能保證最終提供給View的ViewModel能夠實作需求,不要讓ViewModel為了View去做改變,一切看需求;

6   功能性的東西,可以封裝到Command中,由ViewModel組裝相應的Commands來實作某種功能;

7   ViewModel和Command粒度的劃分要根據系統複雜度确定,簡單的系統,粒度太細會增加複雜程度;

8   對于老系統改造來說,底層和資料層都要有大的改變,這是必然的;Silverlight使用同步方式與伺服器互動是一種錯誤;

9   團隊中所有成員對MVVM的認知要基本一緻,否則會做出來的東西,你自己看吧,你自己都不認識;

10 嚴格的代碼審查是很有必要的,畢竟這是一種尚未成熟的模式的實踐,團隊成員對模式的了解稍有偏差就會對代碼産生非差大的影響;