Silverlight體積優化
Silverlight是運作在用戶端的富媒體應用程式,他可以使表現形式更加的豐富多彩,相應的開發人員需要寫大量的XAML、代買添加很多圖檔以及一些其他的資源檔案。這就直接導緻了應用程式體積的增大。在所有的檔案都要從伺服器上下載下傳的情況下,這是一個極為嚴重的問題。如果你的應用大于5MB 加載時間過長的話會直接導緻訪客的流失。
這裡将談論一下如何減少應用程式的體積。
<b>體積優化</b>
<b>移除未使用的程式集</b>
Visual Studio在建立sl應用後預設情況下加了很多的程式集,有些可能是你根本就用不上的。
首先除了System引用将所有其他的删除掉,然後重新編譯應用,将缺失的DLL重新添加回來。有很多的錯誤可能是由于添加了命名空間的引用,這裡有一個簡單的來去掉未使用的命名空間(usings),右鍵點選一個類名,然後選擇Organize usings / Remove unused usings。

<b>重新打包XAP檔案“越小越好”</b>
我們知道Silverlight的XAP包實質上就是一個标準的ZIP包,包内有一個AppManifest使得他在Silverlgith運作時中可正确的被解析。但是Visual Studio 2008在做XAP打包時并沒有做壓縮。
這裡我們要做的是Winzip活Winrar将這個XAP解包,然後再做壓縮打包,将擴充名改成xap替換原始檔案。
<b>将素材放在sl應用外部</b>
<b>使用程式集緩存</b>
使用程式集緩存的辦法很簡單隻需要在sl的屬性頁面,将library Caching設定為true即可
<b>動态加載XAP</b>
在silverlight開發的過程中可以将子產品話,分解成多個xap檔案,有一個主xap來調用其他的xap做動态的加載.
舉一個例子,讓我們看看Photoshop這個網站,他是用flex技術完成的。
我們可以看出他的容器、類庫以及樣式都是動态的加載進去的。
這裡我使用了Prism架構來開發我的一個項目,可以來看一下效果。
可以看出各個子產品是逐個加載的。
<b></b>
參考資料
<a target="_blank" href="http://www.cnblogs.com/hackerttao/archive/2009/10/16/1584537.html">http://www.cnblogs.com/hackerttao/archive/2009/10/16/1584537.html</a>
<a target="_blank" href="http://msdn.microsoft.com/en-us/library/dd833069%28VS.95%29.aspx">http://msdn.microsoft.com/en-us/library/dd833069%28VS.95%29.aspx</a>
作者:Nasa
版權聲明:本文的版權歸作者與部落格園共有。轉載時須注明本文的詳細連結,否則作者将保留追究其法律責任。