Android技术架构演进与未来 (mp.weixin.qq.com)
众所周知,Android是谷歌开发的一款基于Linux的开源操作系统,每年迭代一次大版本升级。小米、华为、OPPO、VIVO、三星等各大厂商对Android原生系统进行二次开发衍生出具有各家特色的系统(比如MIUI),为手机、电视、平板电脑、手表等数十亿设备提供平台支持,使得Android作为全球最受欢迎的移动操作系统。Android诞生至今已有10余年,这一路走来Android遇到哪些问题?大版本升级朝着什么方向演进?Android的未来如何?
by @code小生 2019-10-07 15:49 分享 查看详情
RecyclerView配合DiffUtil,好用到飞 (mp.weixin.qq.com)
DIffUtils 是 Support-v7:24:2.0 中,更新的工具类。因为已经更新了一段时间了,也不好说是最新更新的。

它主要是为了配合 RecyclerView 使用,通过比对新、旧两个数据集的差异,生成旧数据到新数据的最小变动,然后对有变动的数据项,进行局部刷新。
by @code小生 2019-10-07 15:49 分享 查看详情
6张时序图!谈谈Tomcat请求处理流程 (mp.weixin.qq.com)
很多东西在时序图中体现的已经非常清楚了,没有必要再一步一步的作介绍,本文以图为主,然后对部分内容加以简单解释。
by @code小生 2019-09-22 16:58 分享 查看详情
程序员到底要不要接外包? (mp.weixin.qq.com)
之前写过一篇文章,题目叫做《窝在二线城市很难受,要杀回一线城市重造吗?》,里面提到程序员接外包这件事,于是很多小伙伴就私下问我:
by @code小生 2019-09-22 16:58 分享 查看详情
你不努力,钱都看不上你 (mp.weixin.qq.com)
关注的老读者都知道,之前这个公众号的名字叫「你未读」,于今年某月份的灵感,决定改成现在这个名字—「逆锋起笔」,当然这个并不是今天的重点。
by @code小生 2019-09-22 16:57 分享 查看详情
14 张思维导图构建 Python 核心知识体系 (mp.weixin.qq.com)
本文主要涵盖了 Python 编程的核心知识(暂不包括标准库及第三方库)。
按顺序依次展示了以下内容的一系列思维导图:基础知识,数据类型(数字,字符串,列表,元组,字典,集合),条件&循环,文件对象,错误&异常,函数,模块,面向对象编程;
by @code小生 2019-09-22 16:57 分享 查看详情
IntelliJ IDEA 2019 快捷键终极大全,速度收藏! (mp.weixin.qq.com)
自动代码

常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。
by @code小生 2019-09-22 16:57 分享 查看详情
11 个 JavaScript 技巧 (mp.weixin.qq.com)
当我开始学习JavaScript时,我把我在别人的代码、code challenge网站以及我使用的教程之外的任何地方发现的每一个节省时间的技巧都列了一个清单。
by @code小生 2019-09-22 16:56 分享 查看详情
996 会猝死,而企业家 007 却不会? (mp.weixin.qq.com)
欢迎在留言区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,学习能力的提升上有新的认识,欢迎转发分享给更多人。

聪明如你!关注我专注学习 和 成长!
by @code小生 2019-09-22 16:56 分享 查看详情
深度 | Android 整体设计及背后意义 (mp.weixin.qq.com)
架构的工程意义在于:定义并解决一类问题,为需求到实现的平稳过渡提供保障。传统意义的Android架构(图1)已被人熟知,但不同角色的视角不同,例如认为Runtime和框架是其核心、或者将Android看做是一种特异性JVM平台、还有从嵌入式出发将其看做是Linux…… 实际上,Android是极少数几个用设计来解决自身发展问题的系统,其核心在于通过硬件抽象、组件化、接口层三种能力来为发展提供基础,并为诸多变数预留大量可操作、斡旋的空间。
by @code小生 2019-09-22 16:54 分享 查看详情
JDK/Java 13 发布 (mp.weixin.qq.com)
此版本带来了以下几大新特性:

JEP 350,Dynamic CDS Archives

扩展应用程序类-数据共享,以允许在 Java 应用程序执行结束时动态归档类。归档类将包括默认的基础层 CDS(class data-sharing)存档中不存在的所有已加载的应用程序类和库类。
by @code小生 2019-09-22 16:54 分享 查看详情
LiveData+Retrofit 网络请求实战 (mp.weixin.qq.com)
在出现LiveData之前,Android上实现网络请求最常用的方式是使用Retrofit+Rxjava。通常是RxJavaCallAdapterFactory将请求转成Observable(或者Flowable等)被观察者对象,调用时通过subscribe方式实现最终的请求。为了实现线程切换,需要将订阅时的线程切换成io线程,请求完成通知被观察者时切换成ui线程。代码通常如下:
by @code小生 2019-09-22 16:53 分享 查看详情
Jetpack源码解析--ViewModel基本使用及源码解析 (mp.weixin.qq.com)
截止到目前为止,JetpackNote源码分析的文章已经有四篇文章了,这一系列的文章我的初衷是想仔细研究一下Jetpack,最终使用Jetpack组件写一个Demo,上一篇已经分析了LiveData,本篇文章将分析ViewModel.
by @code小生 2019-09-22 16:53 分享 查看详情
Retrofit 动态管理和修改 BaseUrl,从未如此简单 (mp.weixin.qq.com)
需求场景

在使用retrfoit做网络请求开发的时候,如果app涉及到多个不同 BaseUrl,仅仅是baseUrl不同,retrofit的其他配置都是一样的,我们不得不创建管理多个retrofit实例,或者需要在Service接口处修改@Get @Url等传入完整的url地址。这其实不是我们所期望的,因为如果有很多不同baseurl 地址的请求,我们可能某个baseurl只有一个或者很少的service使用的到,亦或者很多接口需要频繁的调用。我们不期望管理多个retrofit实例,是否可以只创建一个retrofit对象就能解决全部问题呢?答案肯定是可以的。
by @code小生 2019-09-17 17:25 分享 查看详情
在Java 中安全使用接口引用 (mp.weixin.qq.com)
我使用Java 开发过很多项目,这其中包括一些Web 应用和Android 客户端应用。作为Android 开发人员,Java 就像我们的母语一样,但Android 世界是多元化的,并不是只有Java 才能用来写Android 程序,Kotlin 和Groovy 同样优秀,并且有着大量的粉丝。
by @code小生 2019-09-17 17:24 分享 查看详情
OkHttp3源码解析(整体流程) (mp.weixin.qq.com)
今天主要讲一下OkHttp3源码解析(整体流程),主要分为四大块:
okhttp的基本用法
OkHttpClient分析
Request分析
Call分析 {同步请求与异步请求}
by @code小生 2019-09-17 17:24 分享 查看详情
新手学习 react 迷惑的点(完整版) (mp.weixin.qq.com)
网上各种言论说 React 上手比 Vue 难,可能难就难不能深刻理解 JSX,或者对 ES6 的一些特性理解得不够深刻,导致觉得有些点难以理解,然后说 React 比较难上手,还反人类啥的,所以我打算写两篇文章来讲新手学习 React 的时候容易迷惑的点写出来,如果你还以其他的对于学习 React 很迷惑的点,可以在留言区里给我留言。
by @code小生 2019-09-17 17:24 分享 查看详情
前端 100 问:能搞懂80%的请把简历给我 (mp.weixin.qq.com)
在 2019 年 1 月 21 日这天,「壹题」项目正式开始,在这之后每个工作日都会出一道高频面试题,主要涵盖阿里、腾讯、头条、百度、网易等大公司和常见题型。得益于大家热情参与,现在每道题都有很多答案,提供的解题思路和答案也大大增长了我的见识,到现在已累积 100 道题目,『 8000+ 』Star 了,可以说你面试中遇到过的题目,在这里肯定能发现熟悉的身影。
by @code小生 2019-09-17 17:23 分享 查看详情
程序员跳槽时关于薪水的那点事 (mp.weixin.qq.com)
学历,学校
高学历,好背景,能代表你的学习能力和竞争力强
公司背景
一些大公司的出身,能够说明你的实力所在;从 hr 的角度出发,公司背景会做为筛选条件
工作年限
本质还是看个人综合能力
技术实力
解决技术问题的能力;对技术的掌握程度;对技术的态度
by @code小生 2019-09-17 17:23 分享 查看详情
Jetpack源码解析---用Lifecycles管理生命周期 (mp.weixin.qq.com)
Lifecycles是一个持有组件生命周期状态(如Activity、Fragment)信息的类,并允许其他对象观察此状态。可以帮助我们方便的管理Activity和Fragment的生命周期。
by @code小生 2019-09-17 17:22 分享 查看详情