自己动手写HTTP框架

Volley,async-http-lib是好用,但是如果有附加需求你敢改么。

自己动手写HTTP框架
341人加入学习
(26人评价)
价格 ¥99.00
会员免费学 购买课程

共性代码(包括方法里的代码块)抽出,使用abstract约束子类去实现。

[展开全文]

 

构造函数限制参数的输入。

[展开全文]

request封装了http请求的所有参数

[展开全文]

封装是为了避免复制粘贴

为了降低输入参数的复杂度(参数很多很复杂的情况),创建一个实体类(javabean)作为参数的集合。

作为一个框架,暴露的api越多,对开发人员来说学习成本就越高,所以应该尽量简化调用方法。

 

[展开全文]

flexible 灵活的

portable 便携的

stable 稳定的

[展开全文]

可是这里传入的OnProgressUpdatedListener是拥有RequestTask的引用的,相当于也是间接将RequestTask的引用传递过来了。

[展开全文]
  1. 先考虑一个问题:什么情况下你会开始考虑写一个框架?-----》同个代码块不断copy(最近深有体会),为了避免重复工作。
  2. 封装请求方法的参数为JavaBean。  有利于后续可能需要增加请求参数
  3. 为了降低调用者的学习成本,四个请求方式调用统一的入口,具体请求方式在工具类中判断。
  4. 善用枚举

 

 

[展开全文]
  1. 核心工程师写的是接口,设计的是架构。初级工程师才只会调用API。
  2. 为什么要写框架?(头脑风暴)
  3. 先看一遍视频,然后不断复盘,演练,思考。
  4. 学习课程目的:提升思维能力,逻辑能力。
[展开全文]

AsyncTask的版本不同实现也不同

 

[展开全文]

异常的处理和利用的展示

 

[展开全文]
Class<?>[] interfaces = this.getClass().getSuperclass().getInterfaces();

            
[展开全文]

嗯,其实有快捷键解决for-each循环“看起来像一坨shi”:

 

headers.entrySet().for  然后再按TAB键

 

就没那么难看了。

 

[展开全文]

http://git.oschina.net/stay4it_http

[展开全文]