原创 Java設計模式——模式與軟件設計

一、模式是什麼         人們在自己的環境中不斷髮現問題和尋找問題的解決方案的時候,發現有一些問題及其解決方案不斷變化面孔重複出現,但在這些不同的面孔後面有着共同的本質,這些共同的本質就是模式。模式化的過程是把問題抽象化,在忽略掉

原创 Android中View和ViewGroup的measure和layout過程分析

轉自:http://blog.csdn.net/aigestudio/article/details/42989325 要在數量上統計中國菜的品種,在地域上毫無爭議地劃分菜系,在今天,是一件幾乎不可能完成的事……Cut…………抱歉

原创 內存分析工具 MAT 的使用

轉自:http://blog.csdn.net/aaa2832/article/details/19419679 1 內存泄漏的排查方法 Dalvik Debug Monitor Server (DDMS) 是 ADT插件

原创 Java設計模式——迪米特法則

迪米特法則又叫作最少知識原則,就是說,一個對象應當對其他對象要有儘可能少的瞭解。 一、狹義的迪米特法則 如果兩個類不必彼此直接通信,那麼這兩個類就不應該發生直接的相互作用。如果其中的一個類需要調用另一個類的某一個方法時,可以通過第三者轉發

原创 ActionBar樣式解析

Android的裝飾風格有多種,這些風格的不同之處主要體現在標題欄區域。比如最普通的標題欄僅有圖標和標題。還有一些其他的風格,如帶進度條的標題欄等。        在Android4.0上,有了新的標題欄,名爲ActionBar,它提供

原创 Android性能優化典範(一)

2015年伊始,Google發佈了關於Android性能優化典範的專題,一共16個短視頻,每個3-5分鐘,幫助開發者創建更快更優秀的Android App。課程專題不僅僅介紹了Android系統中有關性能問題的底層工作原理,同時也介紹瞭

原创 Java設計模式——接口隔離原則

接口隔離原則講的是,使用多個專門的接口比使用單一的總接口要好。換言之,從一個客戶類的角度來講,一個類對另外一個類的依賴性應當是建立在最小的接口上的。 一、什麼是接口隔離原則? “接口”有兩種含義。一種是Java語言中的有嚴格定義的Inte

原创 Android Drawable 那些不爲人知的高效用法

轉自:http://blog.csdn.net/lmj623565791/article/details/43752383 1、概述 Drawable在我們平時的開發中,基本都會用到,而且給大家非常的有用。那麼什麼是Drawab

原创 Java設計模式——適配器模式

適配器模式是結構模式,包括類的結構模式和對象結構模式兩種。適配器模式把一個類(系統中已有的類)的接口變成客戶端所期待的另一種接口(需求,新的行爲增強功能),從而使原本因爲接口不匹配而無法再一起工作的兩個類能夠在一起工作。實質上是把已有的一

原创 Java對觀察者模式的支持——Observer和ObServable的使用

在Java中通過Observable類和Observer接口實現了觀察者模式。Observer對象是觀察者,Observable對象是被觀察者。 1. 實現觀察者模式 實現觀察者模式非常簡單, [1]創建被觀察者類,它繼承自java.ut

原创 Java設計模式——依賴倒轉原則

一、什麼是依賴倒轉原則? 依賴倒轉原則講的是,要依賴於抽象,不要依賴於具體。 實現“開-閉”原則的關鍵是抽象化,並且從抽象化導出具體化實現。“開-閉”原則是面向對象設計的目標,依賴倒轉原則是面向對象設計的主要機制。 依賴倒轉原則的另一種表

原创 Android性能優化典範(二)

Google發佈了Android性能優化典範第2季的課程,一共20個短視頻,包括的內容大致有:電量優化、網絡優化、Android Wear上如何做優化、使用對象池來提高效率、LRU Cache、Bitmap的縮放、緩存、重用、PNG壓縮

原创 Java設計模式——里氏代換原則

一、什麼是里氏代換原則? 一個軟件實體如果使用的是一個基類的話,那麼一定適用於其子類,而且它根本不能察覺出基類對象和子類對象的區別。比如,假設有兩個類,一個是Base類,另一個是Derived類,並且Derived類是Base類的子類。那

原创 如何檢測Android應用是32位還是64位

https://www.jianshu.com/p/8686931d31f0 1、前言 從Android 4.4宣佈支持64位系統以來,各終端方案廠商逐步推出了各自的64位soc解決方案。Google爲了兼容之前32位系統的應用,在64位

原创 android webview 二次驗證流程分析 shouldOverrideUrlLoading深度分析

轉自:https://blog.csdn.net/a0407240134/article/details/51482021 一. shouldOverrideUrlLoading的含義  Sdk中的解釋 public boolean sh