原创 Android——自定義簡化版ImageLoader

在上一篇我們已經先後介紹了 Bitmap 的高效加載方式、LruCache 以及 DiskLruCache,那麼我們就動手來寫一個簡化版的 ImageLoader 吧!!! 一般來說,一個優秀的 ImageLoader 應該具備如

原创 Java設計模式之——備忘錄模式

備忘錄模式簡單介紹 備忘錄模式是一種行爲模式,該模式用於保存對象當前的狀態,並且在之後可以再次恢復到此狀態,這有點像我們平時說的“後悔藥”。備忘錄模式實現的方式需要保證被保存的對象狀態不嗯呢該被對象從外部訪問,目的是爲了保護號被保

原创 Java設計模式之——組合模式

組合模式簡單介紹 組合模式也稱爲部分整體模式,結構型設計模式之一,組合模式比較簡單,它將一組相似的對象看做一個對象處理,並根據一個樹狀結構來組合對象,然後提供一個統一的方法去訪問相應的對象,以此忽略掉對象與對象集合之間的差別。生活

原创 Java設計模式之——策略模式

策略模式的簡單介紹 在軟件開發中常常遇到這樣的情況:實現某一個功能可以有多種算法或者策略,我們根據事件情況選擇不同的算法或者策略來完成該功能。例如,排序算法,可以使用插入排序、歸併排序、冒泡排序等。 這對這種情況,一個常規的方法是

原创 Android——Bitmap的加載和Cache

主要介紹內容: Bitmap的高效加載 Android 中的緩存策略 LruCache DiskLruCache Bitmap 的高效加載 如何有效地加載一個 Bitmap,這是一個很有意義的話題,由於 Bitmap 的特殊

原创 Java設計模式之——命令模式

命令模式簡單介紹 命令模式,是行爲型設計模式之一。命令模式相對於其他的設計模式來說並沒有那麼多的條條框框,其實它不是一個很“規矩”的模式,不過,就是基於這一點,命令模式相對於其他的設計模式更爲靈活多變。我們接觸比較多的命令模式個例

原创 Java設計模式之——責任鏈模式

責任鏈模式簡單介紹 責任鏈模式,是行爲性設計模式之一。什麼是“鏈”?我們將多個節點首尾相連構成的模型稱爲鏈,比如生活中常見的鎖鏈,就是由一個個圓角長方形的鐵環串起來的結構。對於鏈式結構,每個節點都可以被拆開在連接,因此,鏈式結構也

原创 Java設計模式之——抽象工廠模式

抽象工廠模式簡單介紹 抽象工廠模式也是創建型設計模式之一。在上一篇博客中我們已經對工廠方法模式進行了介紹,那麼這個抽象工廠又是怎麼一回事呢?大家聯想一下現實生活中的工廠肯定都是具體的,也就是說每個工廠都會生產某一種具體的產品,那麼

原创 Java設計模式之——面向對象六大原則

面向對象六大原則: 設計模式六大原則(1):單一職責原則 設計模式六大原則(2):開閉原則 設計模式六大原則(3):里氏替換原則 設計模式六大原則(4):依賴倒置原則 設計模式六大原則(5):接口隔離原則 設計模式六大原則(6)

原创 Java設計模式之——模板方法模式

模板方法模式簡單介紹 在面向對象開發過程中,通常會遇到這樣的一個問題,我們知道一個算法所需的關鍵步驟,並確定了這些步驟的執行順序,但是,某些步驟的具體實現是未知的,或者說某些步驟的實現是會隨着環境的變化而改變的,例如,執行程序的流

原创 Java設計模式之——工廠方法模式

工廠方法模式簡單介紹 工廠方法模式是創建型設計模式之一。工廠方法模式是一種結構簡單的模式,其在我們平時開發中應用很廣泛。如 Android 中的 Activity 裏的各個生命週期方法,以 onCreate 方法爲例,它就可以看作

原创 Java設計模式之——裝飾模式

裝飾模式簡單介紹 裝飾模式也稱爲包裝模式,結構型設計模式之一,其使用一種對客戶端透明的方式來動態地擴展對象的功能,同時它也是繼承關係的一種替代方案之一。在現實生活中你也可以看見很多裝飾模式的例子,或者可以大膽地說裝飾模式無處不在,

原创 Java設計模式之——迭代器模式

迭代器模式簡單介紹 迭代器模式又稱爲遊標模式,是行爲型設計模式之一。迭代器模式算是一個比較古老的設計模式,其源於對容器的訪問,比如 Java 中的 List、Map、數組等,我們知道對容器對象的方法必然會涉及遍歷算法,我們可以將遍

原创 Java設計模式之——狀態模式

狀態方法模式簡單介紹 狀態模式中的行爲是由狀態來決定的,不同的狀態下有不同的行爲。狀態模式和策略模式的結構幾乎完全一樣,但它們的目的、本質卻完全不一樣。狀態模式的行爲是平行的、不可替換的,策略模式的行爲是彼此獨立、可相互替換的。用

原创 Android——性能優化

主要介紹內容: 佈局優化 內存優化 常用的一些優化工具 佈局優化 系統在渲染 UI 界面的時候將消耗大量的資源,一個好的 UI 不僅應該具有良好的視覺效果,更應該具有良好的使用體驗,因此佈局優化就顯得非常重要。 第 1 招:A