Silverlight項目開發準則

  1. 量使用代碼控制;
  2. 可能早的計劃好所有的用戶控件;這樣可以提前預期控件之間相互運作情況,便於整合項目;
  3. 試分割不同功能到不同的用戶控件; 現在無論國內國外,開發隊伍通常來說都是3個人以上,分割不同功能到不同的用戶控件,可以減少相互之間的衝突和影響; 另外,在測試的時候發現問題,對於不同的小功能區域,方便Bug定位;另外也方便功能模塊的再利用。 這個是現在Web項目開發的一個常用規則。
  4. 量少用Loaded事件;
  5. 始化的問題; 在每個用戶控件中,需要創建Initialize和Deinitialize公共方法。  在實際項目中,你可以把Event Handlers或者必須要運行一次的代碼,添加到Initialize方法中; 另外,也可以不用添加新的構造函數,直接傳遞參數到Initialize方法,通過New MyUserControl()使用這些參數; 最後,你可以使用Deinitialize方法清空控件,如果你調用了需要自定義的控件,使用Deinitialize方法是非常必要的;
  6. 要在XAML添加Event Handles; 因爲XAML是屬於前臺設計人員,而Event Handling屬於開發人員,所以,Event Handler非常容易使用代碼進行添加;另外一個原因,如果你使用代碼添加了一個Event Handler,當該事件的控件名稱改變或者該控件被刪除,編譯器會提出錯誤說明; 但是如果把Event Handler放在XMAL,當該事件的控件名稱改變或者該控件被刪除,項目將返回一個常規異常,沒有詳細錯誤信息提示;
  7. 真設計項目佈局; 我項目起步時,浪費了許多時間,在項目佈局上,如果,佈局合理,一定能節省很多開發時間;這樣就需要開發人員對Grid,StackPanel,Canvas,Border,Popup,ScrollViewer,DockPanel等佈局控件有深刻的瞭解;通常,你會發現,Grid非常適合做Header,Footer,Sidebar等等; 而複雜的佈局結構,建議使用Canvas,需要注意的是,如果Canvas的高和寬是固定的,這樣就很容易造成佈局混亂,這點一定要注意;如果需要調整子控件的佈局,推薦使用StackPanel;設計Silverlight項目佈局,通常我們習慣使用Expression Blend,但是,強烈建議你,在使用Blend後,需要在VS下對XAML代碼進行一次覈查,這樣可以確認各個控件的參數正確,同時也可以刪除Blend自動產生的多餘代碼;
  8. 量避免使用固定的高度值和寬度值;在不設置固定的高度和寬度時候,Silverlight會根據你的解析度自適應瀏覽器界面,同時,各個控件將會自動縮放,以及排列位置; 另外,儘量不要使用負值的Margin,防止樣式變形;
  9. 要將機密信息放在代碼中; 衆所周知,Silverlight是一個客戶端技術;用戶在使用的同時,將會下載XAP文件到本地,這樣非常容易被反編譯; 所以,一定不要把敏感的機密數據放在代碼中;
  10. 要使用Image作爲按鈕控件; 在Silverlight1.1中沒有Button控件,所以我們使用Image作爲按鈕; 但是在Silverlight2或者3中,已經提供了Button控件,我們需要儘量使用Button控件; 這個原則也適合其他控件,儘量使用Silverlight提供的控件,方便狀態管理和事件管理;
  11. 項目性能上,儘量減少XAP的尺寸,提高加載項目速度,另外,減少各個用戶控件的載入時間; 避免使用Windowless=True; 使用Web Service進行服務器數據存取; 因爲Silverlight是運行在用戶主機的,所以不能直接和服務器或者數據庫進行通訊,當前有很多種方式可以存取服務器信息和數據庫,但是推薦使用Web Service(WCF),個人認爲這個方法是最簡單,最快捷的;
  12. 心使用Isolated Storage; 一定不要把機密信息放在Isolated Storage;

 

發佈了21 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章