首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
KeepCoding554
掘友等级
<input value="陈远明"/>
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
550
文章 550
沸点 0
赞
550
返回
|
搜索文章
赞
文章( 550 )
沸点( 0 )
大吉大利 :空投十个JVM核心知识点,速度捡包
写出更好更健壮的代码。 提高Java的性能,排除问题。 面试必问,要对知识有一定对深度。从宏观上来说JVM 内存区域 分为三部分线程共享区域、线程私有区域、直接内存区域。1.1.1.堆区Heap是JVM中最大的一块内存区域,基本上所有的对象实例都是在堆上分配空间。堆区细分为年轻代...
Gson 解析 Json 容错才是关键,举几个常用的实例!
一. 序 前几天写了一篇,关于利用 GSON 在 JSON 序列化和反序列化之间,数据容错的文章。最简单的利用 @SerializedName 注解来配置多个不同 JSON Key 值,或者再使用 @Expose 来配置一些例外的情况。更复杂一些的数据,可以使用 TypeAda…
AutoRegister:一种更高效的组件自动注册方案(android组件化开发)
在编译时,扫描即将打包到apk中的所有类,将所有组件类收集起来,通过修改字节码的方式生成注册代码到组件管理类中,从而实现编译时自动注册的功能,不用再关心项目中有哪些组件类了。 特点:不需要注解,不会增加新的类;性能高,不需要反射,运行时直接调用组件的构造方法;能扫描到所有类,不…
一个APP从启动到主页面显示经历了哪些过程?
本文以图文并茂的形式简单介绍一个APP从启动到主页面显示经历了哪些流程,以及实现的原理。不介绍具体源码,仅仅构建一个大体框架。 ⑦主线程在收到Message后,通过发射机制创建目标Activity,并回调Activity.onCreate()等方法。 ⑧到此,App便正式启动,…
51信用卡 Android 自动埋点实践
随着公司业务的发展,对业务团队的敏捷性和创新性提出了更高的要求,而通过大数据的手段在一定程度上可以帮助我们实现这个愿景,同时良好的数据分析可以也帮助我们进行更好更优的决策。对于数据本身,其处理流程主要可以归结为以下几点: 其中所谓的数据采集是针对特定用户行为或事件进行捕获、处理…
Android中的Gradle之玩转自定义功能
通过上一节Android中的Gradle之配置及构建优化,我们已经了解了Gradle的各个配置项的含义,知道了如何优化构建配置,但只会用别人提供好的,无法按自己的意愿实现功能。通过本章节,我们将简单介绍Groovy,了解Gradle中的Project与Task,引入gradle…
一文了解Dart语法
Flutter应用程序使用Dart语言开发,Dart是面向对象编程语言,由Google于2011年推出,目前最新版本是2.0,为了更好的使用Flutter进行应用开发,本文将详细介绍Dart语言的语法和特性。 能够放在变量中的所有内容都是对象,每个对象都是一个类的实例。甚至于数…
MainDex 优化记
该方法第一步是计算所有的 mainDexClasses;第二步是判断 userMainDexKeepFile 文件是否为空,该文件是由开发者在 gradle 配置文件中通过 multiDexKeepFile 配置的,配置规则就是直接填充 class 文件的全路径限定名;最后就是…
AOP 最后一块拼图 | AST 抽象语法树 —— 最轻量级的AOP方法
Aspect 语法难懂?ASM 字节码操作繁琐?APT 难以精准找到切入点?你该试试 AST 了!编辑器级别,效率高,更轻量。 这就是抽象语法树 AST。AST(abstract syntax tree)即抽象语法树,是源代码的抽象语法结构的树状表现形式,每一个节点代表一个语法…
下一页
个人成就
文章被阅读
359
掘力值
13
关注了
37
关注者
0
收藏集
3
关注标签
105
加入于
2015-11-07