移動應用開發者必讀:提升應用效能的13種方式

發表於2012-06-05

原文出處:13 Ways to Improve the Performance of Your App,翻譯:webapptrend

譯者注:Matt Lacey 從事軟體開發行業已有12年之久,他專注於移動和Web開發。近期,他積累了大量基於Windows Phone 7的開發經驗。下面的這篇文章是他在開發中積累的一些提升App的效能的經驗。這會是一篇使開發人員深受其益的好文章,下面我們就進入正題。

很多方法可以幫助你提升App的效能,本篇文章不提供完整版本,筆者只提供幾種常用的方法。

筆者希望你從本篇文章中得到的最重要的資訊是:優異的效能並不是憑空而得來的,這需要你儘自己所能讓使用者取得最好的體驗。

值得注意的是,一些MVVM 純化論者可能會對以下的一些內容提出異議,但是這些規則或方法是由現實世界中的一些體驗所得來的,必然有其合理性。

1.避免使用UI執行緒–除非是必要情況,否則儘量不要使用UI執行緒,而是保持UI的響應。

2.儘量不要使用值轉換器–值轉換器帶來的效能影響遠遠大於使用直接屬性值帶來的影響。

3.在不必要的情況下,不要使用依賴屬性–如果常規屬效能夠滿足需要,那就儘量使用常規屬性,提升系統的執行速度。

4.減少外部依賴–儘量避免使用第三方元件,有利於提升系統的執行速度。

5.拆分程式集–在不必要的情況下,不要在你的App中載入所有的頁面。

6.把圖片(資料)放到快取中–下載外部資源消耗時間,會影響系統的效能。

7.使用“Boot Loader”–如果你的App很大並且啟動時需要進行大量處理,那麼請儘量將這些啟動步驟分開,這樣將大大提高啟動時的效能。

8.對資料進行預載–在情況允許的條件下,在使用者獲取資料之前載入所需的資料,這樣可以縮減使用者等待資料載入的時間。

9.載入顯示同步進行–如果資料量非常大,建議只載入你所需部分資料,不要在把時間浪費在一次性載入全部資料上,讓你的使用者空等。

10.對資料/模板進行重用(儘量避免載入XAML)–重用模板意味著增加App的效率,避免過載同樣的內容。

11.儘量不要使用XAML–若非必要情況,不要使用XAML。我經常看到一些執行速度很慢的App,它們有一個共同特點:在使用很少的控制元件就能夠解決問題的情況下,它們偏偏使用一些非常複雜而沒有使用必要的巢狀控制元件。

12.避免使用巢狀Margin–這樣可以減少佈局引擎計算元素位置的計算工作量。

13.不要使用XAML—這的確很極端,但是使用程式碼構建UI會比使用XAML為系統提供更好的效能(可以節省下解析的時間)。

過去,以上這些規則使我深受其益。希望以後,這些規則也能夠給你帶來幫助。

 

相關文章