原创 阿里巴巴android開發標準

隨着公司的業務發展,項目越來越多,越來越大,複雜性也越來越高。查找一個BUG變得越發抓狂;新人熟悉一塊代碼也變得越發困難。有的時候順手寫下的一行充滿壞味道的代碼,可能當時不會出現什麼影響,而且當事人也十分清楚自己寫的東西。但是,當日積月累

原创 android開發框架總結 (二)MVP與MVVM詳細介紹與對比,如何選擇適合的框架(乾貨!)

前言 本篇文章將非常“細緻”地總結分析MVP與MVVM這兩種框架對於架構的選擇做了比較多的分析,應該是乾貨滿滿,如果你對這兩者的使用與選擇上還有迷惑之處。真的希望你能認真看完。 如果你是非常有經驗的程序猿,那就當相互學習總結,如果有不同看

原创 OkHttp源碼徹底解析(二)OkHttp架構及API源碼

      前言   OkHttp是一個處理網絡請求的開源項目,是安卓端最火熱的輕量級框架,由移動支付Square公司貢獻(該公司還貢獻了Picasso) 用於替代HttpUrlConnection和Apache HttpClient(a

原创 OkHttp源碼徹底解析(一)OkHttp請求流程

前言 OkHttp是一個處理網絡請求的開源項目,是安卓端最火熱的輕量級框架,由移動支付Square公司貢獻(該公司還貢獻了Picasso) 用於替代HttpUrlConnection和Apache HttpClient(android A

原创 OOP與AOP的理解

    本人是搞android開發的,平時對OOP運用比較多,對其思想也自然比較熟悉。相比之下大多數android開發者對AOP的比較默認,所以這裏來總結一下兩者的區別 1.概念 OOP是面向對象編程,核心思想是將客觀存在的不同事物抽象成

原创 OkHttp3.0攔截器原理——責任鏈模式

目錄 什麼是攔截器 攔截器中的類 攔截器中的源碼 攔截器源碼的邏輯流程 什麼是攔截器 攔截器是OkHttp中提供一種強大機制,它可以實現網絡監聽、請求以及響應重寫、請求失敗重試等功能。 Okhttp3.0中的攔截器有點像安卓裏面的觸控反饋

原创 OkHttp連接池

  目錄 OkHttp連接池 連接池的意義——KeepAlive機制 從攔截器流程瞭解連接池 連接池ConnectionPool的創建 連接池的緩存操作   連接池是用來管理和複用網絡連接對象的,而網絡連接的主角就是Connection/

原创 OkHttp攔截器的作用

  目錄     攔截器  OkHttp中的攔截器  失敗重連以及重定向的攔截器:RetryAndFollowUpInterceptor 橋接攔截器BridgeInterceptor 緩存攔截器CacheInterceptor 連接攔截器

原创 細數android中MVP的“七宗罪”

前言 我們都知道,MVP是在MVC的基礎上做了一次升級,相比MVC,MVP中P層與V層隔離,V層只負責UI,業務邏輯由抽象出來的P層負責,真正意義上的隔離View的細節和複雜性的模式....... 好了好了,上面是網上MVP“鼓吹”的基本

原创 RxJava 2.x 教程及源碼揭祕(四)由設計模式,揭祕Rxjava流程原理

前言      那麼本文就將對Rxjava做一次詳細的探索,相信跟隨着博主的思路帶着自己的思考,你一定也能掌握使用這個熱門技術的要領。不僅如此,我們更要深入瞭解其內部原理,做到知其然,並且知其所以然。     關於Rxjava的基本瞭解以

原创 RxJava 2.x 教程及源碼揭祕(一)入門理解及基本操作符

目錄 前言 Rxjava的介紹 Rxjava的優勢 Rxjava是觀察者模式 Rxjava是裝飾者模式 Observable Rxjava的操作符 subScribeOn與observeOn切換線程 其他操作符 補充 前言      本人

原创 RxJava 2.x 教程及源碼揭祕(三)Rxjava操作符源碼解析

本文將探究: 知道線程調度是怎麼實現的 知道操作符是怎麼實現的 RxJava最強大的莫過於它的線程調度 和 花式操作符。 map操作符 map是一個高頻的操作符,我們首先拿他開刀。 例子如下,源頭Observable發送的是String類

原创 RxJava 2.x 教程及源碼揭祕(二)RxJava+Retrofit及其他Retrofit應用場景

  RxJava 的適用場景和使用方式 1. 與 Retrofit 的結合 Retrofit 是 Square 的一個著名的網絡請求庫。沒有用過 Retrofit 的可以選擇跳過這一小節也沒關係,我舉的每種場景都只是個例子,而且例子之間

原创 Java 依賴注入的思考

什麼是依賴注入   這裏展開一下,控制反轉,依賴注入,是說把控制的主動權轉移了,不由調用者決定要調誰來實現,而是由被注入決定誰去實現   依賴注入到底有啥好處呢?   我使用過一些 依賴注入框架——但是他們的實現在我看來,就是在使用類似反

原创 onClick onTouch onTouchEvent調用順序

通過源碼查看: View – dispatchTouchEvent方法中    可以看出:  onTouchListener的接口的優先級是要高於onTouchEvent的,假若onTouchListener中的onTouch方法返回tr