IDEA 的 Debug 技巧大全 (mp.weixin.qq.com)
Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。
by @code小生 2020-04-26 20:08 分享 查看详情
Flutter Platform View:在 Flutter 中使用Android、iOS的原生 View (mp.weixin.qq.com)
我们在进行Flutter开发的时候,有时候是需要用到原生的View,比如WebView、MapView、第三方广告SDK等,Flutter提供了AndroidView、UiKitView可以实现相关功能。
by @code小生 2020-04-26 20:04 分享 查看详情
VS Code 必知必会的 20 个快捷键! (mp.weixin.qq.com)
并不是每一个开发者都有足够的时间,去了解熟悉所有的快捷键,来帮助我们提高编码效率。因为快捷键实在是太多了。
所以,下面我列出了我最喜欢的快捷键。
by @code小生 2020-04-26 19:59 分享 查看详情
又抓了一个导致频繁GC的鬼--数组动态扩容 (club.perfma.com)
系统一直在做cms gc,但是老生代一直不降下去,但是执行一次jmap -histo:live之后,也就是主动触发一次full gc之后,通过jstat -gcutil来看老生代一下就降下去了,初看下理论上不太可能,因为full gc也会对old做回收。
by @PerfMa社区 2020-04-24 16:05 分享 查看详情
MP4 视频“只闻其声,不见其人”,是怎么回事呢? (zhuanlan.zhihu.com)
H.265 能在有限带宽下传输更高质量的网络视频,只需原先 H.264 编码的一半带宽即可传输相同质量的视频。同时,4K 视频的数据量是高清的 4-8 倍,需要更高效率的压缩编码算法,而 H.265 同时支持 4K(4096×2160)和 8K(8192×4320)像素的超高清视频,编码效率是 H.264 的两倍。
by @又拍云 2020-05-09 14:07 分享 查看详情
精选Android中高级面试题 -- 终局之篇:高级干货 (mp.weixin.qq.com)
因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。
by @DataFunBoy 2020-04-22 08:39 分享 查看详情
JVM源码分析之JDK8下的僵尸(无法回收)类加载器 (club.perfma.com)
现象是有一些类加载器是作为key放到WeakHashMap里的,但是经历过多次full gc之后,依然坚挺地存在内存里,但是从代码上来说这些类加载器是应该被回收的,因为没有任何强引用可以到达这些类加载器了
by @PerfMa社区 2020-04-21 16:25 分享 查看详情
类初始化死锁导致线程被打爆!打爆!爆! (club.perfma.com)
我们线上的现象是发现非常多的线程都卡死在同一个地方,也不是在做类加载,如果是死循环,那cpu肯定上去了,但是cpu并没有上去,因此比较诡异
by @PerfMa社区 2020-05-07 14:38 分享 查看详情
Android 10 获取设备标识方案探究 (mp.weixin.qq.com)
我们在开发中可能会使用到一些第三方的应用统计SDK,用于统计应用的用户量等等,如何区分每个用户呢?当然就需要每个设备对应一个唯一的标识,Android中当然也提供了这样的API来获取到设备相关标识,但遗憾的是随着Android版本的迭代,官方对于用户隐私的权限越来越严格,在最新的Android 10版本中甚至已经无法通过原来的一些API来获取到设备相关标识了。本文就来探究一下Android中的各种设备相关标识符,介绍几种在Android 10限制下获取设备相关标识的方案。
by @code小生 2020-04-19 18:38 分享 查看详情
SQL 性能优化梳理 (mp.weixin.qq.com)
先简单梳理下Mysql的基本概念,然后分创建时和查询时这两个阶段的优化展开。
1 基本概念简述

1.1 逻辑架构
by @code小生 2020-04-19 18:38 分享 查看详情
今天,我们细说 Android 下的多线程 (mp.weixin.qq.com)
多线程是开发人员必不可少的技术点,也是初学者不太容易掌握好的一个难点。要想设计出优秀的程序,那必然需要合理的线程调度。今天就给大家细说下Android中与多线程相关的知识点,揭开多线程神秘的面纱。
by @code小生 2020-04-19 18:36 分享 查看详情
Java 初级和高级面试知识点准备 (mp.weixin.qq.com)
本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只有当反复确认能力不行才会下结论,相反,如果候选人给我的印象不错,我也会从多个角度来衡量,以免招进会说但不会干活的“大忽悠”。
by @code小生 2020-04-19 18:32 分享 查看详情
关乎 package.json 的详细介绍 (quickapp.lovejade.cn)
npm 是前端开发广泛使用的包管理工具,它让 JavaScript 开发者分享、复用代码更方便。而管理本地安装 npm 包的最好方式就是创建 package.json 文件。 package.json 文件具有:作为一个描述文件,描述了你的项目依赖哪些包;允许我们使用 “语义化版本规则”(后面介绍)指明你项目依赖包的版本;让你的构建更好地与其他开发者分享,便于重复使用。通过本篇对 package.json 的介绍,你或能对它有更深层了解。
by @杨琼璞 2020-03-31 23:52 分享 查看详情
学习JVM参数前必须了解的 (club.perfma.com)
可以把JVM想象成相机,JVM参数想象成光圈大小,快门速度之类的参数值,这些参数对程序的运行会影响挺大。
by @PerfMa社区 2020-04-16 11:08 分享 查看详情
Android 多线程技术哪家强? (mp.weixin.qq.com)
对于安卓里面的里面的任何代码,都逃不开生命周期这个话题。因为安卓的四大组件有两个都是有生命周期的,而且对于用户来说,可见的Activity或者Fragment才是他们最关心app的部分。
by @DataFunBoy 2020-04-16 08:36 分享 查看详情
10分钟用 Python 编写一个贪吃蛇小游戏 (mp.weixin.qq.com)
贪吃蛇,大家应该都玩过。当初第一次接触贪吃蛇的时候 ,还是能砸核桃的诺基亚上,当时玩的不亦乐乎。今天,我们用Python编程一个贪吃蛇游戏,下面我们先看看效果:
by @code小生 2020-04-15 19:10 分享 查看详情
干货!前端 Code Review 的最佳实践方案 (mp.weixin.qq.com)
我一直认为Code Review(代码审查)是软件开发中的最佳实践之一,可以有效提高整体代码质量,及时发现代码中可能存在的问题。包括像Google、微软这些公司,Code Review都是基本要求,代码合并之前必须要有人审查通过才行。
by @code小生 2020-04-15 19:10 分享 查看详情
MVVM 最新学习心得 (mp.weixin.qq.com)
在前几年兴起了MVVM架构设计模式,最具有代表的框架就是DataBinding,虽然这种设计架构非常新颖,但是在使用中仍然还有很多痛点,所以我当时觉得短时间这个设计架构可能不会太流行。
by @code小生 2020-04-15 19:05 分享 查看详情
Android 后台运行白名单,优雅实现保活 (mp.weixin.qq.com)
我们知道,Android 系统会存在杀后台进程的情况,并且随着系统版本的更新,杀进程的力度还有越来越大的趋势。系统这种做法本身出发点是好的,因为可以节省内存,降低功耗,也避免了一些流氓行为。
by @code小生 2020-04-15 19:03 分享 查看详情
Android 7.x Toast BadTokenException处理 (mp.weixin.qq.com)
7.x版本,对Toast添加了Token验证,这本是对的,但是调用show()显示Toast时,如果有耗时操作卡住了主线程超过5秒,就会抛出BadTokenException的异常,而8.x系统开始,Google则在内部进行了try-catch。而7.x系统则是永久的痛,只能靠我们自己来修复了。
by @code小生 2020-04-15 19:01 分享 查看详情