最近两个月读完的三本技术书籍。
深入理解Java虚拟机
一本很深的书,所谓深是指深入到底层。在这本书里或许获得不到什么立竿见影的技术提升,但是底层知识的理解一定是能够帮助上层代码设计和问题调试的。比如:
- 垃圾回收机制
- 类加载机制
- 线程安全与锁机制
可读的Java代码如何变成了机器码,又是如何运行起来的,是非常值得学习的。除此之外,本书还有专门涉及到JVM性能优化的案例章节,值得一看。
Android移动性能实战
是腾讯测试团队出的一本书。这本书让人认识到,真正的测试团队大概是比一般的开发还要厉害一些的。本书主要是以案例为主的,都是十分常见的性能优化案例。从工程师的角度来看,本书的主要意义在以下几点:
- 所有案例都是开发挖的坑,从技术角度看可以避开这些问题,提高经验
- 学习大厂的测试指标,在团队内部可以作为参考
- 抽象出其中针对各项指标的数据化、工具化和自动化的方法,提高代码质量
岗位职责有边界,但是技术没有边界。测试团队也好、开发团队也好,最终目的都是输出高质量的产品给到客户使用,相互学习和借鉴是有意义的。要说本书的缺点,主要体现在某些案例中提及到腾讯的内部测试工具,并且该工具在案例中处于核心地位,对于读者而言不是很友好——我根本不知道你们工具的原理和构成、即便你解释了一两句也没有使用过,难免云里雾里。
整体上还是值得借鉴。
程序员的自我修养
在微信读书上看完的一本技术素质类的书——或者说是个博客文集。本书包含面十分广泛,可以说是“信马由缰”。其中甚至有几个小节是讲“如何教你的孩子学习编程”——我觉得在这之前是不是写几个教程序员找女朋友的章节。虽然某些部分略显絮叨,但是也都是一个多年开发、自学设计、创业的架构师的经验之谈。
推荐使用碎片时间看这本书。