假如可以重来,我会这样学Java,学习路线书单大推荐

我在2018年之前是C/C++的忠实粉丝,能够去尽可能探索底层技术的奥秘。之后由于工作和项目变动,转向Java阵营,才发现Java的类库真的好用的让人哭啊,其实语言只是工具,

成体系的计算机系统知识以及实战锻炼企业级业务场景化技术解决方案,才应该是我们努力的方向。

本文不会给大家推荐那些晦涩难懂的黑皮书,都是通俗易懂的实用级书籍,在现代企业级基础设施越来越完善的情况下,很多屠龙之术其实没必要,企业考虑的永远是投入产出比,一个月薪3万的程序员,花了一个月提升了软件的性能,多半还不如多加几台机器!

相关的电子书,我也给大家收集齐全了,整理不易,点波关注找我领取吧!

计算机基础

操作系统

本书分为五个部分:计算机硬件、操作系统、程序设计、计算机网络和数据存储。在计算机硬件部分,作者详细介绍了计算机的基本组成部件,例如中央处理器(CPU)、内存和硬盘等,并阐述了它们的功能和工作原理。在操作系统部分,作者让读者认识到操作系统的重要性,解释了操作系统如何管理计算机资源、处理任务和协调各个硬件的工作。

在程序设计部分,作者揭示了程序设计的奥秘,向读者展示了从编程语言到算法再到数据结构等基本概念。在计算机网络部分,作者从网络的基本概念出发,介绍了网络协议、IP地址、域名系统等核心知识,帮助读者理解计算机是如何通过网络进行通信的。最后,在数据存储部分,作者讲解了不同类型的存储设备及其在数据存储和管理中的应用。

大家可以看看其中的部分截图,可以说相当清新脱俗,计算机小白也可以理解。

计算机网络

跟《计算机是怎样跑起来的》是一个系列的,豆瓣评分也是高达9.2。

本书共 6 章,156482 个字,篇幅不多,内容较意思,是一本很好的网络基础入门书籍,穿插专业术语的解释和插图,对复杂的网络通信世界能有一定的了解

编译原理

同样的一个系列,以图配文的形式详细讲解了二进制、内存、数据压缩、源文件和可执行文件、操作系统和应用程序的关系、汇编语言、硬件控制方法等内容,目的是让读者了解从用户双击程序图标到程序开始运行之间到底发生了什么。同时专设了“如果是你,你会怎样介绍?”专栏,以小学生、老奶奶为对象讲解程序的运行原理,颇为有趣。

HTTP

小日本在科普这方面做的确实没得说,作者由HTTP协议的发展历史娓娓道来,严谨细致地剖析了HTTP协议的结构,列举诸多常见通信场景及实战案例,最后延伸到Web安全、最新技术动向等方面。本书的特色为在讲解的同时,辅以大量生动形象的通信图例,更好地帮助读者深刻理解HTTP通信过程中客户端与服务器之间的交互情况。

读者可通过本书快速了解并掌握HTTP协议的基础,前端工程师分析抓包数据,后端工程师实现REST API、实现自己的HTTP服务器等过程中所需的HTTP相关知识点本书均有介绍。

数据结构与算法

以让人容易理解的方式阐释了算法,旨在帮助程序员在日常项目中更好地发挥算法的能量。书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法

进入Java的世界

Java基础

可能很多人有推荐《Java编程思想》和《Java核心技术卷》,

大家都说好,但对于初学者来说并不好,太难啃了,而且中文版的翻译还是有些别扭。

尽管《Head First Java》也非常的厚,至少比我的脸皮后,但趣味性就要甩前面两本好几条街了。

就冲着这张图,我觉得《Head First Java》的作者就足够的大胆。作者挑选的图片可以说张张经典,真正实现了“图文并茂”的需求,搞得你感觉有点不好意思,仿佛不是在读一本 Java 技术书,而是在读一本《知音》。

不止是图片,还有游戏、拼图、解谜题以及意想不到的内容。真的是一点都不“正经”,正因为如此,阅读起来才感觉兴趣盎然。

并发编程

但我必须要说的是,《Java并发编程实战》这本书并没有摆脱翻译枯燥的老毛病,读起来很需要耐住性子,不然就很难把这本书吃透。当然了,并发编程本身就很难,大家要做好心理准备,这也是大家跟其他同学拉开差距的一个部分,少年不吃苦,老大徒伤悲哇。

JVM

这本书牛逼到什么程度,几乎所有写 Java 虚拟机方面的文章,没有一个不在文章最后注明:本文参考字周志明老师的《深入理解 Java 虚拟机》。假如这篇文章最后没有注明的话,那保不准是不尊重版权。

作者周志明更成为了广大 Java 程序员心目中的大神级人物,厉害厉害了!有读者曾这样感叹道:“国内程序员很难再写出这么经典的书了!”

做个有素养的码农

我18年在微信实习时,我的导师就跟我反复强调,设计模式是必备技能,不懂设计模式的我们不会要。

所以设计模式是必学,里面结合大量的实战案例,活学活用,把设计模式讲的非常通俗易懂。

我可以这么肯定地说:《代码整洁之道》值得所有的程序员读一读。软件的质量,不仅依赖于架构,更与代码质量息息相关。而代码的质量与其整洁度成正比关系,越整洁的代码,其质量毫无疑问的就会越高。由于本书中的例子是由 Java 实现的,因此 Java 程序员在读这本书的时候有着天然的优势。

Java WEB

WEB框架技术

现在Spring绝对是WEB开发框架的顶流,所有其他的微服务中间件都要考虑和Spring的适配性。

这本书适合作为Spring的入门书籍,把Spring的概念,使用方式等内容都讲的比较清楚。并且也介绍了Spring MVC的部分内容,Spring框架还是更注重实践的,所以跟着书上的内容去做吧。

本书是一本Spring MVC的教程,内容细致、讲解清晰,非常适合Web开发者和想要使用Spring MVC开发基于Java的Web应用的读者阅读。

Maven是Java Web开发中不可缺少的包管理工具,如果想要全面了解其实现原理的话,可以看看这本书。

数据库

这本书主要是讲解sql语句怎么写,毕竟数据库最重要的一点就是要熟练地使用sql语句,当然这本书也可以当做工具书来使用。

对于面试中常考的innodb引擎,比如索引、事务、MVCC、锁机制等还是推荐一下这本书把,专门讲解了innodb存储引擎的相关内容,看完后吊打面试官没啥问题

Redis

和MySQL一样,学习Redis的第一步最好也是先实战一下,通过这本书就可以较好地掌握Redis的使用方法,以及相关数据结构了。

该书全面而完整地讲解了 Redis 的内部运行机制,对 Redis 的大多数单机功能以及所有多机功能的实现原理进行了介绍。这本书把Redis的基本原理讲的一清二楚,包括数据结构,持久化,集群等内容,有空应该看看。

分布式微服务理论

这本书是淘宝大牛写的书,主要讲的就是使用rpc来构建分布式的Java应用,讲了很多基础的东西,可以作为入门书籍。

这是周志明老师的最新力作,搜索凤凰架构就可以在线观看了,系统讲解了微服务架构的演进史,以及微服务架构中遇到的各种问题和解决方案,比如缓存、认证、授权、分布式事务、分布式一致性算法、云原生等等都有涉及到,对于大家拓宽自己的知识面绝对大大的有好处。

豆瓣评分高达 9.7 分!也是我的床头书,强烈推荐给大家。数据处理绝对现代PB级数据量处理时代的核心问题。

其实我们平时遇到的大部分系统都是数据密集型的——应用代码访问内存、硬盘、数据库、消息队列中的数据,经过业务逻辑处理,再返回给用户。

很多应用都是在解决不同场景下的数据存储和检索问题——MySQL,Redis,HBase,Kafka,ElasticSearch……

还有很多技术是围绕着数据展开——索引,编码(JSON, XML, Thrift, ProtoBuffer),行列存储……

当数据在分布式处理时,要考虑——数据复制,分区,事务等等。

只要是个程序员,就肯定跟数据打过交道,也都或多或少对上述软件与技术有所了解。

很多做后端的同学对数据相关的技术只是处于「看山是山」的阶段,远远没有达到融会贯通的地步。

当我们学知识的时候,往往都是分门别类地学:这本书讲 MySQL 的,那本书讲 Redis 的。这种学习方法使知识割裂,很难让我们掌握不同的技术之间的区别和联系。

《数据密集型应用系统设计》这本书,把所有跟「数据」有关的知识点做了剖析、整理、总结,从一个很高的层次把各项技术的共性和区别讲得透彻。 当我们懂了底层原理之后,就明白了每项技术产生的背景是什么,解决了什么问题,有什么适用场景。

这本书既有理论也有实践,基本没有公式,图很多,阅读起来很流畅,一点也不枯燥。

这本书分为了三部分:

第一部分:数据系统的基石,包括数据模型与查询语言、存储与检索、数据编码与演化;

第二部分:分布式数据,包括复制、分片、事务、一致性与共识(Raft、Paxos等算法);

第三部分:衍生数据,包括批处理、流处理、数据系统的未来。

第一部分的第三章「存储与检索」真是精华,从一个最简单的数据库开始,越讲越深入,把常见数据库的存储与检索方式都讲完了。按照第三章的讲解,可以自己动手实现一个数据库,并且这个项目是能写到简历里面的。

里面很多关于分布式场景下会遇到的问题以及相应的解决方案,是很有可能大家在系统设计面试中会遇到的。这本书可以结合MIT的6.824课程结合食用,有理论有实操(SHOW ME CODE), 才是一个合格的程序员!

docker是现在应用部署的主流方案了,所以了解一下还是挺有必要的,这本书作为入门书籍足够让你会使用docker了

全部评论
资源在哪里呀
1 回复
分享
发布于 04-15 09:34 黑龙江

相关推荐

12 30 评论
分享
牛客网
牛客企业服务