首页
学习
活动
专区
工具
TVP
发布

移动开发面面观

专栏作者
80
文章
93638
阅读量
30
订阅数
RecyclerView的复用机制
RecyclerView是Android业务开发非常常用的组件。我们知道它有复用,并且设计优雅。可能看过源码的同学还知道,它有几层复用。 但看网上的博客会发现,大多只是照着源码看一遍,并不会仔细地分析和推敲,RecyclerView为什么要设计这一层缓存,每一层缓存在什么情景下使用,以及每一层缓存的设置,对RecyclerView运行真正的影响。 所以,笔者试图通过本文,讲清楚以下几个问题:
Oceanlong
2020-06-28
1.1K0
The Key of Widget in Flutter
当我们刚开始使用Flutter,我们在继承StatelessWidget和StatefulWidget时,不会关注Key。整个界面的渲染通常也不会有什么问题。但当我们想要复用Widget,想要优化我们的渲染性能时,Key就成为了一个绕不过的话题。
Oceanlong
2020-03-20
1.1K0
Flutter Notification使用说明
在Flutter进行界面开发时,我们经常会遇到数据传递的问题。由于Flutter采用节点树的方式组织页面,以致于一个普通页面的节点层级会很深。当我们需要在子节点向父节点传递一些信息时,我们不可能层层传递Listener,所以我们需要一种在子节点跨层级传递消息的方式。
Oceanlong
2020-02-25
1.4K0
InheritedWidget使用说明
在Flutter进行界面开发时,我们经常会遇到数据传递的问题。由于Flutter采用节点树的方式组织页面,以致于一个普通页面的节点层级会很深。此时,我们如果还是一层层传递数据,当需要修改数据时,就会比较麻烦。
Oceanlong
2020-02-24
1K0
Spring-boot的jdbc简单实践
Spring-boot 中为我们提供了一套非常简单易用的开发框架,本文将记录Spring-boot 中如何连接MySql。由于笔者是第一次接触后端开发,如有问题,欢迎指正。
Oceanlong
2019-05-31
4890
Spring-boot 快速开始
spring-boot以其简洁、轻快的特点迎得开发者的支持。它能帮我们快速构建服务,为后端开发提供了大量的便利。
Oceanlong
2019-05-19
4990
okhttp——RetryAndFollowUpInterceptor
okhttp的网络请求采用interceptors链的模式。每一级interceptor只处理自己的工作,然后将剩余的工作,交给下一级interceptor。本文将主要阅读okhttp中的RetryAndFollowUpInterceptor,了解它的作用和工作原理。
Oceanlong
2019-05-15
1.4K0
okhttp——BridgeInterceptor
okhttp的网络请求采用interceptors链的模式。每一级interceptor只处理自己的工作,然后将剩余的工作,交给下一级interceptor。本文将主要阅读okhttp中的BridgeInterceptor,了解它的作用和工作原理。
Oceanlong
2019-05-15
1.3K0
okhttp——任务模型
okhttp是Android中应用最广的http网络请求框架。结构优雅,性能强大。我们通过阅读它,对网络库的架构进行学习。
Oceanlong
2019-05-05
5410
okhttp——网络请求模型
okhttp是Android中应用最广的http网络请求框架。结构优雅,性能强大。我们通过阅读它,对网络库的架构进行学习。本篇主要阅读okhttp的网络请求拦截链模型。
Oceanlong
2019-04-29
8110
LeakCanary源码解析
LeakCanary是Android开发中非常常用的一个内存泄漏监测和分析工具。了解其工作原理,有助于对Android的内存泄漏有更深层次的认识。
Oceanlong
2019-03-15
9530
Android Gradle Get Start
Gradle其实是一套平台和规范,为打包提供的规范。而Android的打包,是Google写的一个Gradle插件。
Oceanlong
2019-03-12
8600
Android JNI 开发
几乎稍有经验的Android开发,都会在工作中用到JNI的开发。即使工作中没有涉及到JNI的开发,在我们使用第三方的库时,也经常需要引入.so文件。
Oceanlong
2019-02-22
1.2K0
Android 动态加载so文件
在开发中,我们时常会遇到包体积过大的情况。其中,一个大的第三方so文件,经常会让人头痛。那么,能否动态加载.so文件呢?答案是可以的。
Oceanlong
2019-02-22
3.8K0
Thread备忘录
start()用来启动一个线程,当调用start方法后,系统才会开启一个新的线程来执行用户定义的子任务,在这个过程中,会为相应的线程分配需要的资源。
Oceanlong
2019-01-28
3110
Future备忘录
Future是一个接口,它的主要目的,是为了我们能够方便的控制在线程中的任务的进度。在实际使用中,它常与Callable一起使用。本文主要为了理清,Java中,线程任务的各种类的关系。
Oceanlong
2019-01-28
3490
HTTP你需要知道的
HTTPS是在处于应用层的HTTP协议与处于传输层的TCP协议之间,增加了一层SSL。HTTPS对传输数据进行了加密,并且HTTPS需要CA机构wosign的颁发的SSL证书。
Oceanlong
2019-01-03
4970
散列函数(哈希)(转)
Hash一般翻译作散列也有直接音译作“哈希”。就是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。
Oceanlong
2018-12-28
8570
KMP算法详解
KMP是字符串匹配的经典算法。其中包含的思想,是非常有趣的。本文作为KMP算法的介绍和备忘录。
Oceanlong
2018-12-28
5600
annotationProcessor 自动生成代码(下)
在annotationProcessor 自动生成代码(上)中,我们介绍了如何通过注解和javapoet生成一个简单的HelloWorld.java。AbstractProcessor可以做的事还有很多,我们不可能一一列举。我们最重要的是明白,AbstractProcessor的运行时机、可操作范围和能提供给我们的东西。
Oceanlong
2018-12-19
1.3K0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
【玩转EdgeOne】征文进行中
限时免费体验,发文即有奖~
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档