Android 開發過程中總計的一些經驗教z

本文屬於收藏需要,原文見末尾鏈接。 在使用第三方類庫之前,請再次確認您確實需要使用該類庫。 如果用戶看不到這個元素,請不要繪製它。 除非必要,請不要使用數據庫。簡單的數據可以使用 SharedPreference 保存。 現在的 App 很容易就達到了 65K 的函數限制, 可以使用 multidexing 來解決該問題RxJava 是 AsyncTasks 的最佳替代方案,並且還有其他很多優點。 Retrofit 是至今最好的網絡請求庫。 使用 Retrolambda 來減少你敲鍵盤的次數。代碼看起來更加簡潔。 把 RxJava 同 Retrofit 和 Retrolambda 一起使用,您會發現生活是如此美好。 我會使用 EventBus ,並且 EventBus 也很有用。但是並不是到處都用, 用的多了代碼看起來亂透了。 用功能來組織代碼而不是層級。 儘可能的把所有操作都放到 application thread 之外的線程中去。 使用 Lint 來分析您的佈局文件,可以提高佈局性能,刪除不必要的View。 如果你使用 Gradle ,則有很多技巧可以提高 Gradle 的性能分析你的 Build 過程,看看那些階段消耗的時間比較多。 使用通用的架構。 編寫測試代碼和執行測試都需要時間,但是測試可以確保你的代碼更加健壯,所以該投入是值得的。 使用依賴注入可以把 App 變得更加模塊化,也更加容易測試。 閒暇時間聽聽 fragmented podcast 對你可以有很多幫助。 從來不要用私人Email 作爲你的開發者發佈賬號。 一定要使用恰當的輸入類型。 使用分析統計來了解用戶使用模式和查找 bug。 瞭解最新的第三方庫 使用 dryrun 可以快速的體驗這些類庫。 你應用的 services 應用只做其應該做的事情,並且儘早結束自己來釋放資源。 使用 Account Manager 來顯示建議用戶登錄的用戶名和 Email 地址。 使用 CI (Continuous Integration) 來持續發佈您的產品。 不要搭建自己的 CI 服務器,這是一個很耗費時間的過程。使用 circleci, travis 或者 shippable ,他們價格便宜並且自己不用擔心 CI 服務器的問題了。 自動部署你的應用到 Google Play。 如果一個類庫包含了很多功能,但是你只使用了其中的某一個功能,則可以使用類似 proguard 的工具來刪除沒用的代碼。 不要使用過多的模塊(modules ),Gradle 編譯的時候,每次都要檢查和編譯每個模塊,這些操作是需要時間的。編譯這些模塊比直接使用 .jar/.aar 要慢 4倍以上。 開始嘗試使用 svg 來替代 png 圖片。 使用庫封裝類接口。這樣當你需要切換到另外一個庫的時候, 只需要修改該類即可。例如 AppLogger.d(“message”) 類使用了 Log.d(TAG, message) 來顯示 log, 如果有一天你向切換到 Timber.d(message) 庫,則只需要修改 AppLogger 類即可。 監測設備的網絡連接類型。如果用戶使用的是 Wifi 則可以做更多的網絡操作。Wifi 一般是免費的,並且速度較快。 監測設備電量和充電狀態。如果正在充電,則可以儘可能多的更新數據, 如果設備快沒電了,則可以減少數據更新的頻度。 用戶界面就像講笑話一樣,如果你還需要解釋它,則說明該界面設計的不夠好。 Tests are great for performance: Write slow (but correct) implementation then verify optimizations don’t break anything with tests.

Read more: http://blog.chengyunfeng.com/?p=868#ixzz433tCrqxr
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章