小文字 吃饭,睡觉,溜狗头


OkHttp【二】OkHttpClient 源码分析

背景 回顾一下,在最简单的GET请求场景中,我们的程序都做了那些事情? 在不考虑个性化配置的情况下,我们只需三步: 我们首先实例化了一个OkHttpClient,如果有多个请求需要发送,这个类将会做一个单例来复用; 同时我们会构造一个Request实例,用于传入我们的请求参数; 最后通过OkHttpCLient实例,new出一个Call, 并执行(或者丢入异步队列)。 OkHttpClient client = new OkHttpClient(); String ru... 更多


MD5/SHA与进制的表达

背景 日常生活中十进制用的最多,但是编码中二进制和十六进制也是随处可见,在打开各种二进制文件数据时,经常出现十六进制, 同时表示MD5,SHA时也常用到。 Hex 与 bit 从表示范围来讲: 一个16进制数:最多可以表示16=2^4 两个16进制数:最多表示16*16=2^8 一个字节是8位,因此既可以用8位二进制数表示,也可以用2位16进制数表示; 总结一句话,2个十六进制 => 一个字节 MD5 与 Hex 在输出MD5的时候我们一般看到的是一个16进制... 更多


OkHttp 【一】开篇

前言 软件开发领域在不断产生新技术,新框架。作为Android开发者,我们经历了他的巨大演进,从2.1到如今的8.0,系统本身在变化,开源世界也在变化。 过去每个团队在使用自身封装的图片框架,网络框架,如今Picasso,Fresco已经逐步取而代之,甚至Android系统本身也内置了OkHttp的支持。 站在使用者的角度,到最后也只能是使用者,如果要更好理解这些框架背后的技术原理,有必要对其进行深度的源码剖析。 后续分析,将基于如下版本: OkHttp: http://squa... 更多


Go指南/习题解答

背景 Go Tour练习题,解答。 Go指南/解答 练习:Stringers 练习:Stringers 让 IPAddr 类型实现 fmt.Stringer 以便用点分格式输出地址。 例如,IPAddr{1, 2, 3, 4} 应当输出 "1.2.3.4"。 解答 package main import "fmt" import "strconv" type IPAddr [4]byte // TODO: Add a "String() string" m... 更多


Shell中处理方法返回值问题

背景 通过shell编程,写一些工具批处理的时候,经常需要自定义函数。更复杂点的情况下,可能有需要返回一个值。 由于在shell的世界中,并不像其他编程语言,它不支持我们所熟悉的方法返回。本文一起总结一下如何优雅的解决返回值问题? 测试程序 我们一般通过$?来获取上一个语句的输出。看一下下面得测试语句: 新建testReturn脚本 returnString(){ return $1 } returnString $1 result=$? echo "result=$result"... 更多