引子
今天,翻完《分布式系统原理介绍.ppt》了最后一页,感觉有点失落:又一本好书看完了(不知,大伙儿是否也是这样的)。惆怅中,才发现,自去年10月,进入美菜后,7个月的时间,已经看完了6-7本书了,这个战绩绝对是之前无法想像的,但是它就是发生了。
说起,看书这事儿吧,也前吧,也不爱,觉得程序员,就应该看代码,撸代码,还是受到前任领导(我们都叫他:惠丰)与 前任同事(我们都叫他:大师)的影响。
与前任领导,一起工作了8-9年,见证了他,因为读书而优秀,因为优秀而读书。
大师,有钱而优秀的大师,经常看书,看到11,12点,因为他说,如果不做这行,只能回家管生意。原来,工作可以不仅仅是为了生活。
在读书过程中,也遇到一个现同事,我们叫他猴哥,第一次,看到他ipad上的几百页的读书笔记,逻辑清晰,字迹漂亮,原来ipad,可以这么用。
当然,还有一个重要原因:媳妇儿,也开始天天看书,我自然也不能落后了。
以下,给大伙儿,分享下,我们的读书清单,也希望大伙儿,给推荐一些书籍。
Java编程思想
这应该是相当经典的一本书了,据说做为java程序员,都应该看好几遍,在大学就蠢蠢欲动,当时,睡我对面的军军同学(这也是唯一,现在还能,一起吃饭聊天的大学朋友了),也买了一本;最终,自己也没去看,也许是因为,时候未到吧(哈哈)。
在上一份工作的,最后两月里,终于,从同事的显示器下(经典,居然用来垫显示器),拿起了这本书,这是一本,你拿起来,就很难放下的书,因为太厚,两个“厚”,800多页,肯定厚,另一个,就是内容非常丰富,每点节都讲得非常详细。比如,
内部类一章,比如 Class 类一节。
印象最深的,也是关于 讲 Class 类 的一节,以前,觉得 <> 就是表示list,因为只会写 List<String> list =
new ArrayList<>(), 理解 Class 类,才能继续理解 泛型,以及 .class文件,与 Class的关系。
最终,在6月25号,算是看了第一遍,从哈米到美菜,历时差不多9个月,收货良多。
深入理解Java虚拟机:JVM高级特性与最佳实践
进入美菜后,总会遇到一些,线上问题,关于Cpu,内存之类,总是感觉无从下手,一次与小王子(一活泼同事,熟称小王子)聊天时,他推荐了这本书。这是一本,你拿起来,就不会放下的书,原理清晰,理论结合实践。
对于各种垃圾回收器工作流程介绍,由浅入深,让人记忆深刻。
Class文件结构介绍,虽然无法逃脱枯燥,但是这也是各类字节码操作的基础,值得枯燥。
对于锁的底层实现,有相当细致的讲解,对后面,学习并发编程中,锁的概念,与实现,就会轻松不少。
因为是看的电子书,非常方便随地阅读,其中不少章节,来回看了好多遍,任感觉意犹未尽。值得,多读几遍。
虽然截图是,15小时,阅读完成,加上一些代码实操,时间也不少。于,4月10号首次阅读完成。
Java并发编程的艺术
并发,是一个java程序员,绕不开的话题,本来想看《并发编程实战》,苦于没有电子书,什么百度读书,豆瓣读书,多看阅读,都找了,就是没有,看pdf文件吧,又感觉没有哪个app,在手机上有好的体验。最后就退而求其次了,选择了这本。
以前,总是对volatile,不是特别理解,为什么叫轻量锁;Synchronized实现原理说不明白,Lock为什么能在有竞争时,性能优于Synchronized;Lock与AQS是什么关系。。。
带着这些疑问,翻开这本书,显示,翻了几遍后,这些问题,你会从根上理解他,真正的理解,那种不会忘记的理解。
对于,volatile 的理解,与应用场景算,是印象比较深的几个点之一了,从字节码指令,中可以很明显看到,为什么volatile修饰的变量,不能用于,做++ 操作。因为,它的可见性,你会取到正确的值,但是变量放到栈中后,其他线程修改了此变量,
栈中的值,可能就是最新值了,所以++,操作会有问题。也就说明,它的应该场景,应该局限在,不依赖原始值的情况。
看完本书,项目有设计并发,多线程,Lock等问题时,就踏实多了,4月26号第一次读完成,敲了书中不少demo,受益不少。
MySQL技术内幕:InnoDB存储引擎
读完前一本书后,开始焦虑,接下来读什么书了,感觉像上瘾了一样,哈哈,
正巧,团队中来了一个以前阿里的,我们叫他燊哥(【
shēn】,很复杂的一个字),混熟了之后,推荐了几本,这就是其中一本,正感觉缺mysql知识,就果断读了这本,也刚好,微信读书里,有这个电子书。
本书第二章节讲了,一些体系架构,相关线程,文件结构之类的,相当枯燥,阅读进度非常缓慢,用了很长时间,磨到第三章中,实在看不动了,一度想放弃了;最后,果断的,从第一页,重新开始阅读,
第二遍,明显轻松了许多,一些原来跳过的,重新回味,感觉别有一翻滋味了。
这本书,最大的收获,应该算时,关于索引原理,以及其内部结构,一张表是如何用B+树组织起来,辅助索引,与主键索引如何关连的。
也对索引优化,有了感性的认识,也恰好,最近手头的项目的数据,都是千万级的数据查询问题(可能对各位看官来说,都是小数目,对我,确实是挺大的数据了),这些准备如及时雨一般,
感觉,生活就是么这多巧合组成了。于6月3号看完第一遍,虽然此时,燊哥已经不在美菜,在此,谢过!
TCP/IP入门经典
在阅读过程中,现任领导,我们都叫他雷老大,推荐一个书单,感觉如获至宝,因为,未来好长一段时间,都有书可读了。但是,细看,那些书,比如
netty,分布式等都与tcp/ip相关,再想想,大学那会学的网络知识,早已经不知去向了。
本来书单里,有一本是关于这方便的,它叫:TCP/IP详解。一来,此书,没有找到电子书;二来,这书太厚了,我感觉,我也用不到书那么多内容;于是,选择了一本,轻松,简单的。旨在了解,基本知识。
书中重点看了,tcp/ip协议系统,对于基本体系有了感性的认识,特别是TCP建立链接的3次握手,从数据报内容层面,简单了解了,总算明白了 ACK 与ack
,SYN 与syn的含义,以看其他文章,总是不明白。
另外,也了解了,之前一个算法题目:找出一个二进制里1的个数(使用 n & (&-1) 可以让时间复杂度 小于 O(n) ),应用场景:奇偶校验。
这书,后面几10几章,就没有什么用处了,看了前几章,虽是入门级的,对我来说够用了,能方便理解一些网络模型就行了。这书,就不推荐了。
分布式系统原理介绍.ppt
这书为什么没有图片,因为这只一个ppt,所有没有封面,但是它,不仅仅是一个ppt。这也是雷老大,推荐书单里的一本,在此,再一次感谢雷老大,他现在应该正在家里抱着刚出生二胎,估计忙得不亦乐乎吧。
这个70页的ppt,讲述了分布式基本原理,让我们这些小白,能顺利理解,书中,内容不少,但是泛而不糙,原理分析明的,粗中带着细腻。
看完本书,会对 TCC, 2PC 等概念,有一些非具象的认识。
会对 X/Open DTP , XA 协议 等一些分布式基础知识,有简单的认识。
你会发现, 0/1 direcory的实现 与 垃圾回收中 复制算法 真是异曲同工。
对于 分布式中 常用用机制 如 quorum, Lease 等。有基本认识,以后你会在很多地方看到他们的影子。
看书本ppt,你就可以开始分布式更多深入的学习了。
因为,这是一个ppt,手机上不方便,都在电脑上阅读,花了大概2周时间,与7月4号阅读完成。这是一本好书,值得阅读。
中文小说
在看技术书籍时,也偶尔想换换风格,中间也看了些小说。
流浪地球,电影热播时,听说,小说,很多短,果断看了一遍,感觉小说有感觉,比电影感觉还好,特别是反动武装,“打赢”之时,"氦闪"来临的一刹那...
倚天屠龙记,新版出来时,好多吐槽,为了吐槽,有水平,又看了大部分小说,看小说,画面感十足,并且金老,手法奇特,真有点停不下来。最后,感觉时间用得有点多,才理智的停下了
英文小说
看到英文两个字,大伙,有没有诧异,其实都是一些初级的小说,想着,小孩子快3岁了,要开始接触英文了,自己也就开始准备了。
特意买了金山词霸的会员,因为生词本可以自动生成,太方便了。
比如:Robinson Crusose, Sherlock Holmes Short Stories, Sherlock Holmes the
Dukes Son,Skyjack, Formula One,,
当然,这些其实算不上小说,1w左右个单词,很快,可以读完一个,很有成就感,教娃也够了。
在读
在读书过过程中,得到雷老大的支持,除了推荐书单,也给予了他能给的一些东西(哈哈),感觉得到了认可,还得谢谢一次。
目前正在《netty权威指南》,《从Paxos到zookeeper:分布式一致性原理与实践》
结语
以上就是最近一段时间的,读书分享,也许分享的内容也有不对的地方,期待讨论哈。
不知道会有人疑问:时间哪里来的吗?其实大部是是在地铁上,公交中,以及每天早2小时到公司,晚2小时下班;都不知道,以前不读书的时间,都哪里去了。
当然,也因为一个人北京,无以解忧,唯有读书。希望将来回来杭州,也能坚持读书。
成为一名优秀的程序员!
热门工具 换一换