原创 RxJava 2.x 教程及源碼揭祕(三)Rxjava核心源碼解析

  RxJava中最強大最核心的部分莫過於它的線程調度 和 花式操作符。可以說掌握了這部分基本就掌握了RxJava的實現過程   本文將探究: 知道線程調度是怎麼實現的 知道操作符是怎麼實現的   map操作符 map是一個高頻的操作符,

原创 android開發框架總結 (一)從java基本原則細數MVP的“七宗罪”

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

原创 OkHttp源碼徹底解析(五)OkHttp連接池

  本系列文章: OkHttp源碼徹底解析(一)OkHttp請求流程 OkHttp源碼徹底解析(二)OkHttp架構及API源碼 OkHttp源碼徹底解析(三)OkHttp3.0攔截器原理——責任鏈模式 OkHttp源碼徹底解析(四)Ok

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

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

原创 OkHttp源碼徹底解析(四)OkHttp攔截器的作用

      本系列文章: OkHttp源碼徹底解析(一)OkHttp請求流程 OkHttp源碼徹底解析(二)OkHttp架構及API源碼 OkHttp源碼徹底解析(三)OkHttp3.0攔截器原理——責任鏈模式 OkHttp源碼徹底解析(

原创 OkHttp源碼徹底解析(三)OkHttp3.0攔截器原理——責任鏈模式

  本系列文章: OkHttp源碼徹底解析(一)OkHttp請求流程 OkHttp源碼徹底解析(二)OkHttp架構及API源碼 OkHttp源碼徹底解析(三)OkHttp3.0攔截器原理——責任鏈模式 OkHttp源碼徹底解析(四)Ok

原创 SDK與NDK——JNI從入門到放棄

前言:作爲一隻想要往上爬的菜鳥,既然選擇了IT這條路,就每天都要不不停地學習新的知識,你不前進就意味着後退。。。好了,大道理人人都懂,下面進入正題。開發的時候,經常聽別人說什麼NDK,JNI什麼的,很多人對這塊內容也只是一知半解,那麼,從

原创 從源碼看OkHttp3

主要架構和流程 OKHttpClient、Call OKHttp3在項目中發起網絡請求的API如下: okHttpClient.newCall(request).execute(); OKHttpClient類: OKHttpCli

原创 java接口中變量

原文:Java中接口裏定義的成員變量在interface裏面的變量都是public static final 的。所以你可以這樣寫:public static final int i=10;或則int i=10;(可以省略掉一部分)注意在

原创 關於SQL

首先,你得知道SQL的基本使用http://www.w3school.com.cn/sql/index.asp接着,來了解下SQL中的鎖1 前言數據庫大併發操作要考慮死鎖和鎖的性能問題。看到網上大多語焉不詳(尤其更新鎖),所以這裏做個簡明

原创 MVP的一點看法

作者:知乎用戶鏈接:https://www.zhihu.com/question/45517397/answer/99293671來源:知乎著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。MVP 架構MVC的C是即持有

原创 android壓力測試工具monkey詳細介紹

對於一款成熟的app,它不僅在功能上要滿足用戶需求,他還需具備高度的穩定性。也就是說一款app上線之前,需要進行大量的壓力測試,如果這些壓力測試是我們手動去進行的,那麼必然耗費大量的時間。所以我們們來介紹下面這種高效的android壓力測

原创 Android網絡優化——應用層策略

網絡性能指標: 1.建立連接的速度  2.傳輸速度  3.到達率(TCP/IP底層已經有錯誤重傳機制,但是並不是專門爲移動端設計的)4.長連接的存活率   優化切入口: 1.DNS優化(一般是優化的首選),使用HTTPDNS替代Local

原创 Android Framework層學習——爲什麼SystemServer進程與Zygote進程通訊採用Socket而不是Binder

  目錄 一.Activity的啓動流程 二.提出問題 三.提出假設          假設1.是不是在這種應用場景下,Socket使用的性能比Binder更佳? 假設2.是不是由於某種限制,在這個場景下不適合使用Binder? 假設2.

原创 Android事件分發

public boolean dispatchTouchEvent(MotionEvent ev){ boolean result =false; if(onInterceptTouchEvent(ev)){ resu