240 发简信
IP属地:湖北
  • Resize,w 360,h 240
    AsyncTask源码分析

    基础知识点 1.线程池Executor2.Future3.Callable4.中断线程5.Handler6.枚举7.泛型8.单例模式9.可变参数...

  • Resize,w 360,h 240
    Java线程池源码分析

    1.1 为什么要线程池 我们在执行大规模任务时,如安卓中的多图下载,网络请求,都少不了使用线程。而线程作为进程下面的计算基本单位,它必然会有一些...

  • Resize,w 360,h 240
    Volley源码分析

    前言 本文是一篇日常学习总结性的文章,笔者通过分析经典网络框架Volley的源码,望以巩固Android网络框架中常见的多线程、IO、设计模式、...

  • Resize,w 360,h 240
    《生产者与消费者》

    志梳理下,生产者消费者模式 简单的模型 先从一个例子开始吧,有一些角色我先声明如下: 餐厅(Restaurant)--->载体 厨师(Chef)...

  • “Guide to app architecture” 的学习笔记

    这是一篇我学习谷歌技术博客后作的总结,它介绍了通用的应用架构原则和在移动设备上,可供参考的工程架构的最佳实践。 项目架构中常见两个的设计原则: ...

  • 一些实用的重构代码技巧

    目的 本文是来说明如何编写优秀的代码。好的代码不是一蹴而就,它需要不断重构,直到写出可读性,可测性,可拓展性的代码。 抛出代码的历史问题 这里用...

  • Resize,w 360,h 240
    Using Roboletric to build Android Unit Test

    Robolectric is a unit test framework that de-fangs the Android SDK jar s...

  • Espresso UI测试入门

    定义 一个基于instrumentation-based API 的UI测试框架,运行于AndroidJunitRunner中。 特点 One ...

  • 读《The Elements of Style》的十条总结

    1、段落作为文章的基本单位,每个段落需要有唯一的主题。 2、每个段落开头和结尾分别有一个主旨句和结尾句。主旨句用来承上启下或表达段落主旨,而结尾...

个人介绍
软件工程师,www.zengqiang.me