原创 —工廠方法模式

<Java設計模式>—工廠方法模式 工廠方法模式是簡單工廠模式的進一步抽象化和推廣,工廠方法模式裏不再只由一個工廠類決定那一個產品類應當被實例化,這個決定被交給抽象工廠的子類去做。   來看下它的組成:         1)抽象工廠角色:

原创 Android深入理解WebView——上

版權聲明:本文原創,轉載請註明來自開源實驗室 http://www.kymjs.com/ 目錄(?)[+] 摘要 作爲Android開發者,我們都知道在手機中內置了一款高性能 webkit 內核瀏覽器,在 SDK 中封

原创 svn: E155019: Can't upgrade as it is not a pre-1.7 work解決辦法

最近遇到SVN老是報 svn: E155019: Can't upgrade  as it is not a pre-1.7 work的錯,在網上也查了資料,有的資料也不完整,所以就把自己解決的步驟分享下。 第一步:把『SVN接口』設定

原创 ---單一職責原則

1. 什麼是單一職責原則 顧名思義就是一個職責嘛,完整的來說,就是一個接口、類和方法負責的功能是單一的,簡單的。 2. 生活中的運用 其實,咱們生活中,有很多這樣的例子,就拿手機廠商造手機來說,爲了完成一部手機的製造,需要有生產c

原创 ---依賴倒置原則(DIP)

什麼是依賴倒置原則 高層模塊不應該依賴底層模塊,兩者都應該依賴器抽象。 抽象不應該依賴細節,細節應該依賴抽象。 個人理解,高層模塊和抽象對應Java裏面,應該是抽象類、接口,而底層模塊和細節對應Java裏面,應該就是具體的實現

原创 ---里斯替換原則(LSP)

什麼里斯替換原則 定義1:如果對每一個類型爲S的對象o1,都有類型T的對象o2,在程序P中,使得T定義的o1都能替代成o2,而程序P的行爲沒有發生變化,那麼類型S是類型T的子類型。 定義2:所有應用基類的地方必須能夠透明地使用其

原创 EventBus源碼研讀(上)

基礎用法 在讀代碼之前,首先你得了解它的基本用法.如果你已經能夠很熟練的使用EventBus等事件總線庫了,那麼你可以跳過本節. 首先引入依賴包,查看GitHub主頁的說明:https://github.com/greenrobot/

原创 Android源碼中final關鍵字的用法

最近在研究View的事件的分發,在看代碼的時候,經常會發現源碼中有很多的將全局變量賦值給局部變量,並且在前面添加final的情況,對於Google這樣的代碼產生疑惑,直接用就是了,搜了一下,發現很多人出現了和我一樣的疑惑。 首先解釋一下局

原创 【構建Android緩存模塊】(一)吐槽與原理分析

摘要 在我翻譯的 Google 官方系列教程中,Bitmap 系列由淺入深地介紹瞭如何正確的解碼 Bitmap ,異步線程操作以及使用 Fragments 重用等技術,並且在最後給出了非常強大的獨家祕笈:BitmapFun ,讓猿媛們

原创 Android應用架構

轉:http://www.jianshu.com/p/8ca27934c6e6 Android開發生態圈的節奏非常之快。每週都會有新的工具誕生,類庫的更新,博客的發表以及技術探討。如果你外出度假一個月,當你回來的時候可能已經發布了新版

原创 Android深入講解WebView——下

摘要 本文原創,轉載請註明地址:http://kymjs.com/code/2015/05/04/01作爲Android開發者,我們都知道在手機中內置了一款高性能 webkit 內核瀏覽器,在 SDK 中封裝爲一個叫做 WebView

原创 EventBus源碼研讀(中)

Subscribe流程 我們繼續來看EventBus類,分析完了包含的屬性,接下來我們看入口方法register() 通過查看源碼我們發現,所有的register()方法,最後都會直接或者間接的調用register()方法 /**

原创 Android大圖片裁剪終極解決方案(中:從相冊截圖)

在這篇博客中,我將向大家展示如何從相冊截圖。 上一篇博客中,我就拍照截圖這一需求進行了詳細的分析,試圖讓大家瞭解 Android 本身的限制,以及我們應當採取的實現方案。 根據我們的分析與總結,圖片的來源有拍照和相冊,而可採取的操

原创 —簡單工廠模式

<Java設計模式>—簡單工廠模式 簡單工廠模式又稱靜態工廠方法模式。重命名上就可以看出這個模式一定很簡單。它存在的目的很簡單:定義一個用於創建對象的接口。   在簡單工廠模式中,一個工廠類處於對產品類實例化調用的中心位置上,它決定那

原创 Serializable中的serialVersionUID到底有啥用

最近在研究跨進程通信的問題,於是又再一次研究了,我們熟悉而又陌生的Serializable接口。 那麼好,做過Java開發的朋友肯定對這個接口不陌生吧,Java中就是通過這個接口,來實現了序列化和反序列化的,那麼下面看看使用Seria