一次毕生难忘的 Java 内存泄漏排查经历 (cmsblogs.com)
人人都会犯错,但一些错误是如此的荒谬,我想不通怎么会有人犯这种错误。更没想到的是,这种事竟发生在了我们身上。当然,这种东西只有事后才能发现真相。接下来,我将讲述一系列最近在我们一个应用上犯过的这种错误。最有意思的是,一开始的迹象揭示的问题,与实际发生的问题完全不同。
by @技术头条 2019-01-01 20:49 查看详情
全网把 Map 中的 hash() 分析的最透彻的文章,别无二家 (cmsblogs.com)
你知道HashMap中hash方法的具体实现吗?

你知道HashTable、ConcurrentHashMap中hash方法的实现以及原因吗?

你知道为什么要这么实现吗?

你知道为什么JDK 7和JDK 8中hash方法实现的不同以及区别吗?

如果你不能很好的回答这些问题,那么你需要好好看看这篇文章。文中涉及到大量代码和计算机底层原理知识。绝对的干货满满。整个互联网,把hash()分析的如此透彻的,别无二家了。
by @技术头条 2019-01-01 20:49 查看详情
9个提升逼格的redis命令 (cmsblogs.com)
9个提升逼格的redis命令。
by @技术头条 2019-01-01 20:45 查看详情
码帝传 (cmsblogs.com)
有这么一片大陆,上面的人们以编码的能力来划分实力的高下。我们亲切的称呼他们为————程序员!他们用心感受天地万物的变化,在他们眼里,世间的一切都是由0和1组成的!他们沉浸在二进制的海洋里,参透万物的本质,从而重新编程,修改自己的命运!

根据编码能力的不同,又可以划分为码奴、码农,码皇,码宗,码圣,码帝等六个级别!至于码帝之后,是否有更高的级别,这或许无人知晓。
by @技术头条 2019-01-01 20:45 查看详情
OOM终结者参数调优 (cmsblogs.com)
内存溢出(Out of Memory,OOM), 是指计算机的所有可用内存(包括交换空间, swap space), 都被使用满了。 这种情况下, 默认配置会导致系统报警, 并停止正常运行. 当然, 将 /proc/sys/vm/panic_on_oom 参数设置为 0, 则告诉系统内核, 如果系统发生内存溢出, 就可以调用 oom_killer(OOM终结者)功能, 来杀掉最胖的那头进程(rogue processes, 流氓进程), 这样系统又可以继续工作了。
by @技术头条 2019-01-01 20:38 查看详情
Android 热修复,没你想的那么难 - 张涛 (www.kymjs.com)
一种动态加载最简单的实现方式,代码实现起来非常简单,重要的是这种思路和原理。
by @技术头条 2019-01-01 20:29 查看详情
kotlin基础语法 (www.kymjs.com)
在阅读以下内容前,你可能需要先了解一些Kotlin语言的特性:在语句的行尾可以不用加分号(加上也不会错),声明一个方法需要加上fun关键字,如果函数是重载父类的方法,还必须要加上override关键字,方法的参数是先写形参名后跟冒号再写形参类型;kotlin源文件不需要相匹配的目录和包,源文件可以放在任何文件目录。但是我们在写Android的Activity等类时,清单文件中的声明,必须与实际包路径相匹配。
by @技术头条 2019-01-01 20:27 查看详情
以20像素为基准的CSS网页布局实践分享 (www.zhangxinxu.com)
以20像素为基准进行CSS网页布局,说不定会让一些细节和潜能大放光彩,当然这需要体系的配合,还需要一些完整的解决方案在里面,本文就将分享这一实践心得,保证是其他地方都没有的。外甥点灯笼——照旧(舅),有demo有截图有必要的源代码展示,希望本文的内容能够对您的学习有所帮助!
by @技术头条 2019-01-01 20:27 查看详情
KJHttp框架使用讲解 - 张涛 (www.kymjs.com)
写给那些在用、想用、还没有用过KJFrame的朋友。 KJFrameForAndroid总共分为四个功能:Activity继承链的规范,Http数据请求和上传下载,Bitmap大图加载以及ListView滚动时只加载内存图片,数据库对象存储与集合对象存储。还有一个独立出来的功能CJFrame插件化开发框架,支持启动在你的手机中未安装的apk应用。
by @技术头条 2019-01-01 20:27 查看详情
Eclipse转Android Studio的过程中有必要弄明白的一些问题 (zmywly8866.github.io)
  AS出来一年多了,最近才从Eclipse转到AS,但我并不觉得使用Eclipse有多落后,它们都只是一个工具而已,哪个顺手就用哪个,用得好都能提高生产力,不会合理利用,再好的工具也是惘然。很多使用Eclipse的Android程序员不知道代码重构的快捷键、如何在运行时调试、一个Workspace一大堆工程……,我想即使转到Android Studio也并不见得比Eclipse顺手。

  下面将自己在Eclipse转AS过程中遇到的一些问题以及对各个问题的理解列出来,方便后续查阅。
by @技术头条 2019-01-01 20:26 查看详情
论如何进行小程序自定义组件的单元测试 (www.alloyteam.com)
自从小程序自定义组件和 npm 功能面世之后,组件化和开源思想逐步开始萌芽了。我们可以将一些通用的部件,如自定义导航栏之类的封装到一个自定义组件中,然后借由 npm 平台开源出去给其他开发者使用,这样可以省去很多劳动。相信各位开发老爷们应该或多或少都有过使用开源包的经历,但是在使用前,这个开源包得能赢取我们的信任,一个很重要的指标就是单元测试通过率和覆盖率。

但是因为小程序独特的运行环境和不完全开源的基础款,使得对小程序自定义组件的单元测试稍微有点困难。目前市面上无论是 vue 还是 react,这些组件化框架都有一套完善的单元测试解决方案,但是对于小程序自定义组件来说却寥寥无几,因此这个工具集—— miniprogram-simulate 便应运而生了。
by @技术头条 2019-01-01 20:22 查看详情
Styled Components:让样式也成为组件 (www.alloyteam.com)
为了应对越来越复杂的web应用,组件化应运而生,React、Vue等组件化框架使我们的程序更简单更加可维护。在一个组件内会将结构、样式和逻辑写在一起,虽然这违背了关注点分离的原则,但是这有利于组件间的隔离。为了顺应组件化的潮流,人们开始考虑使用JS上编写CSS,styled components就是其中一种解决方案。styled components是一个React第三方库,作用是可以将样式写成组件的形式,实现在JS上编写CSS。
by @技术头条 2019-01-01 20:21 查看详情
可扩展的运营后台架构设计 (www.sunhaojie.com)
说起来运营后台,大家首先想到的就是增删改查,给公司内部人使用,出错了不要紧,等等想法。真的是这样吗?运营管理后台,是公司员工处理非常规操作,边界问题的工具,如果运营后台做的不够好,这些问题会向后反馈到程序员,程序员往往会采用修改代码,使用脚本,甚至直接操作数据库的手段处理问题。这个过程中会大大增加沟通成本,出错的概率,同时也会影响用户体验。
by @技术头条 2019-01-01 20:17 查看详情
如何获取 MySQL innodb 的 B+tree 的高度 (www.bo56.com)
MySQL 的 innodb 引擎之所以使用 B+tree 来存储索引,就是想尽量减少数据查询时磁盘 IO 次数。树的高度直接影响了查询的性能。一般树的高度在 3~4 层较为适宜。数据库分表的目的也是为了控制树的高度。那么如何获取树的高度呢?下面使用一个示例来说明如何获取树的高度。
by @技术头条 2019-01-01 20:14 查看详情
深度 | 朴素贝叶斯模型算法研究与实例分析 (www.52nlp.cn)
朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果。所以很受欢迎,对于朴素贝叶斯的学习,本文首先介绍理论知识即朴素贝叶斯相关概念和公式推导,为了加深理解,采用一个维基百科上面性别分类例子进行形式化描述。然后通过编程实现朴素贝叶斯分类算法,并在屏蔽社区言论、垃圾邮件、个人广告中获取区域倾向等几个方面进行应用,包括创建数据集、数据预处理、词集模型和词袋模型、朴素贝叶斯模型训练和优化等。然后结合复旦大学新闻语料进行朴素贝叶斯的应用。最后,大家熟悉其原理和实现之后,采用机器学习sklearn包进行实现和优化。由于篇幅较长,采用理论理解、案例实现、sklearn优化三个部分进行学习。
by @技术头条 2019-01-01 20:14 查看详情
实现 | 朴素贝叶斯模型算法研究与实例分析 (www.52nlp.cn)
朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果。所以很受欢迎,对于朴素贝叶斯的学习,本文首先介绍理论知识即朴素贝叶斯相关概念和公式推导,为了加深理解,采用一个维基百科上面性别分类例子进行形式化描述。然后通过编程实现朴素贝叶斯分类算法,并在屏蔽社区言论、垃圾邮件、个人广告中获取区域倾向等几个方面进行应用,包括创建数据集、数据预处理、词集模型和词袋模型、朴素贝叶斯模型训练和优化等。然后结合复旦大学新闻语料进行朴素贝叶斯的应用。最后,大家熟悉其原理和实现之后,采用机器学习sklearn包进行实现和优化。由于篇幅较长,采用理论理解、案例实现、sklearn优化三个部分进行学习。
by @技术头条 2019-01-01 20:13 查看详情
理论 | 朴素贝叶斯模型算法研究与实例分析 (www.52nlp.cn)
朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果。所以很受欢迎,对于朴素贝叶斯的学习,本文首先介绍理论知识即朴素贝叶斯相关概念和公式推导,为了加深理解,采用一个维基百科上面性别分类例子进行形式化描述。然后通过编程实现朴素贝叶斯分类算法,并在屏蔽社区言论、垃圾邮件、个人广告中获取区域倾向等几个方面进行应用,包括创建数据集、数据预处理、词集模型和词袋模型、朴素贝叶斯模型训练和优化等。然后结合复旦大学新闻语料进行朴素贝叶斯的应用。最后,大家熟悉其原理和实现之后,采用机器学习sklearn包进行实现和优化。由于篇幅较长,采用理论理解、案例实现、sklearn优化三个部分进行学习。
by @技术头条 2019-01-01 20:13 查看详情
[2分钟学个CSS小技巧] 用 CSS 实现一个宽高等比自适应容器 (www.css88.com)
不知道怎么起个标题能更加清楚的说清楚我的意图,那就打个比方吧:比如我们在手机端上方一张宽度 100% 的图片,我们如果不设置图片的高度,那么这个图片会根据图片的原始尺寸等比缩放。今天我们要讲的就是实现这么一个类似于图片等比缩放的容器。
by @技术头条 2019-01-01 20:07 查看详情
一篇文章搞定ArrayList和LinkedList所有面试问题 (cmsblogs.com)
在面试中经常碰到:ArrayList和LinkedList的特点和区别?

个人认为这个问题的回答应该分成这几部分:
1、介绍ArrayList底层实现
2、介绍LinkedList底层实现
3、两者个适用于哪些场合

本文也是按照上面这几部分组织的。
by @技术头条 2019-01-01 20:03 查看详情
如何在 Linux 上对驱动器进行分区和格式化 (linux.cn)
这里有所有你想知道的关于设置存储器而又不敢问的一切。

在大多数的计算机系统上,Linux 或者是其它,当你插入一个 USB 设备时,你会注意到一个提示驱动器存在的警告。如果该驱动器已经按你想要的进行分区和格式化,你只需要你的计算机在文件管理器或桌面上的某个地方列出驱动器。这是一个简单的要求,而且通常计算机都能满足。

然而,有时候,驱动器并没有按你想要的方式进行格式化。对于这些,你必须知道如何查找准备连接到您计算机上的存储设备。
by @技术头条 2019-01-01 20:02 查看详情