奋斗的人生程序员Spring Boot

后端好书阅读与推荐(续二)

2017-11-09  本文已影响76人  MageekChiu

后端好书阅读与推荐系列文章:
后端好书阅读与推荐
后端好书阅读与推荐(续)
后端好书阅读与推荐(续二)

几个月又过去了,又读了几本书,同时为了深切体会到某些书里面的要点还专门做了一个小项目,这里就把读书与小项目过程中的一些心得体会记录一下。

Effective Java

Effective java 中文版(第2版) (豆瓣) https://book.douban.com/subject/3360807/

本书是Java领域的经典之作,作者提出了几十个经验法则,能够优雅健壮的解决我们日常编程可能会遇到的大部分的问题。

本书亮点遍地是,挑一些代表性的:

读完这本书,结合前面的设计模式、代码整洁之道、重构几本书,我感觉可以总结一点:每一个段特定的代码(类、函数)其实都是分为作者和调用者,代码之所以写的烂,是因为好多时候我们自己一个人同时充当了作者和调用者,所以忽略了我们作为作者应该怎样写代码才更有利于别的调用者调用,达到可复用、低耦合、易重构的效果,所以我们在写一段代码的时候不要想当然的就把某个功能随意的放在某段代码实现,而是要好好分割功能实现和调用,分清自己作为作者和调用者的界限,才能避免当局者迷。

本书也比较老了,08年的,所以很多问题都被Java7/8/9解决了,比如

但是这些并不影响我们阅读,我们只需要看书的时候结合Java的最新特性来看就行了,况且本书主要讲方法、经验,而不是语法,所以新与旧影响并不是特别大,不过实在受不了的话也有好消息,第三版好像2017.12就要出来了,引入了Java7/8/9的最新特性。这本书属于那种没事可以翻一翻的书,因为做得越多,对书中的经验体会就越深,就越能够应用自如。

MongoDB In Action

MongoDB实战 (豆瓣) https://book.douban.com/subject/19977785/

MongoDB 我是作为几乎的初学者来看这本书的,因为之前看了点基础知识就直接用在了项目里,边用边学,虽然快速,但是难免心里有郁结,因为没成体系。这里准备用这本书来系统的学习一下。
这本书内容相当丰富,从历史讲起,介绍了mongodb的基本概念,设计实例最后还讲了一些高级用法如复制与分片,性能调优等,既有开发者视角,也有DBA视角,读完收获颇丰。

亮点:

看这本书有点不爽的一点就是用ruby写的,这一门语言我没怎么接触过,但是却因为老板让我部署redmine而留下了痛苦回忆,真的是我用过的框架里面部署最麻烦的,所以一直也没有兴趣去了解这门语言,但是还好大部分语言的语法都是相似的,并不是很影响我看这本书。
另外还有一点就是 MongoDB 版本3和2差别较大,最明显的就是验证方式,需要及时更新

Pro Git (Second Edition)

Pro Git (Second Edition) (豆瓣) https://book.douban.com/subject/26208470/

Git也用过挺久了,但是每次遇上问题都是直接搜索,这样解决问题是快,但是同样不成体系,所以用这本书站在使用者的角度进行学习,时间有限,后面还有关于原理的部分我就省略没看了。

亮点:

这本书作为工具没啥好挑剔的,它讲的全面、细致,看完再练练,把git常见功能弄熟悉就好,繁杂琐碎的功能可以先不看,遇上问题了再来查阅。
ps:github上有对应的中文版。

Spring In Action

Spring实战(第4版) (豆瓣) https://book.douban.com/subject/26767354/

这本书可谓是涵盖了Spring整个体系的概要书,从spring mvc 到 spring security 再到 spring boot,几乎涵盖了我们平常开发能用到的所有组件,读完就可以从整体上把握spring,但是其中的每一个主题都可以单独成书,值得好好研究,这本书就相当于是开个好头吧。

亮点:

这是一本“XX大全”类的书籍,下一本书也是,这种书最适合刚进入一个领域的时候看,因为能提供很多参考,利于我们进阶的学习。

深入分析Java Web技术内幕

深入分析Java Web技术内幕 (豆瓣) https://book.douban.com/subject/25953851/

本书作者的理想很丰满,想一次性得把Java web 全部搞定,从基本的http,dns协议,到底层的编译原理、jvm与类加载技术,到中层的servlet,到上层的框架spring,几乎能用到的知识点都讲到了,但是由于这个面实在太广,很难真正的深入讲解,但是本书对于了解整个Java web的体系还是非常有好处的,这也是作者多年工作的积累和经验,非常值得了解和学习。

亮点:

这本书还有个优点就是遍布全书的设计模式讲解与实例分析,不得不说作者知识面很丰富,估计如果能把这本书提到的点都精通了就是真正的“架构师”了吧。

Linux命令行大全

Linux命令行大全 (豆瓣) https://book.douban.com/subject/22226727/

做后端的肯定要和Linux打交道,比如程序日志好几百兆,怎么快速找到需要的分析内容?访问突然变得缓慢,怎么检查是带宽问题还是内存问题还是CPU问题?这些常用操作及其对应命令都可以在这本书里面找到答案,对于Linux系统的日常使用和管理,提升工作效率起到很大的帮助作用。

亮点:

这本书没啥问题,就是相当的基础,微观,偏重于细节和使用,可以放桌上随时查阅,想要稍微深一点或者更宏观审查Linux的可以看

软件测试经验与教训

软件测试经验与教训 (豆瓣) https://book.douban.com/subject/1139061/

即使不是专业的软件测试人员,开发者也应该学习一些软件测试,毕竟写完代码你自己总得保证基本能运行吧,最开始可能可以手动运行,但是心里能有底吗?还是得写好单元测试,才能更有底气的把代码交给别人运行,所以看看这本书来了解一下软件测试中的一些好的经验。

亮点:

这本书类似于程序员修炼之道,都是作者的经验之谈,我本人由于测试经验相对较少,所以还需要在以后的工作中慢慢体会,并且时常翻看才可能做到融会贯通。
ps,要想学习软件测试的基本理论知识还得看这本书:软件测试的艺术

软技能:代码之外的生存指南

软技能 (豆瓣) https://book.douban.com/subject/26835090/

软件开发者首先是作为一个人,其次才是软件开发,这本书不教我们怎么写代码,而是教我们关注生活中的其他方方面面,针对职场人士,尤其是软件开发者,提出了一系列可以让人更接近成功,过得快乐的tips,包括很多方面比如学习,自我营销,理财,人际关系还有健康。

亮点:

这本书的亮点太多了,难以列全,我读完过后有种找到知音的感觉,而且通过书中的介绍我找到了我一直想有但却没找到的应用kanbanflow,是一款用于任务管理与计时的非常棒的应用。所以我在这里强烈推荐大家看一下,然后结合自己的实际情况,把这些点运用起来,助力自己成为一个更好的“人”。

后记

不知不觉,已经读了20多本书了,我发现这个习惯非常利于我看书和消化,我准备把这个系列继续下去,将来就不只是后端书籍了,方方面面的书我都可能看,也会写,写到80岁,哈哈。

上一篇 下一篇

猜你喜欢

热点阅读