Java行业的火爆,吸引了成批的初学者的加入,这些大都是零基础没有经验的,想通过java的学习另辟人生路。对于java学习,小编整理了一些关于Java基础入门的书籍,可以供大家学习。
1、《深入理解计算机系统》
著名的CSAPP,从c语言到汇编语言到硬件再到操作系统,写得非常好.是一本能帮助深入理解计算机系统的书.基本上把这本书吃透面试操作系统的大部分问题都不是问题。
2、《算法导论(第三版)》
被很多acmercoder奉为学算法的经典之作,但不太适合初学者,因为它这本书很多内容只提供了伪代码,而没有具体实现.但可以从这本书学数据结构和算法最好,因为日后的编程语言对实现而言实际上并没有特别大的障碍,只是适合与不适合的选择罢了,而把想法转换成编程语言才是对算法知识的考验.如果不想太过深入的话可以忽略掉第四部分(高级设计和分析技术)第五部分(高级数据结构)和第七部分(算法问题选编),你会发现书其实比你想象中薄很多噢!
3、《计算机网络:自顶向下方法》
软件学院的计算机网络教材,非常适合初学者,里面将计算机网络从顶层到底层逐章分析了一遍,最好能够结合一些实验来辅助理解,里面的讲解比较抽象。
4、《STL源码剖析》
如果你是经常用c++刷算法题的同学,那么一定经常用STL的各种集合, vector, set, stack, queue等等..它们的实现原理,在源码面前,了无秘密。
5、《Linux命令行与shell脚本编程大全》
里面大概讲述了很多linux系统的使用和命令行等. linux是Java后台开发人员必知必会的操作系统,而命令行是使用linux系统必须要面对的对于不想装linux系统的同学其实可以考虑使用腾讯云学习一些linux相关的命令行知识(没错,不需要图形界面),学生价一个月才一块钱,跟月饼厂一个月十块钱比起来也太划算了吧!而且用linux也蛮酷的啊。
6、《图解HTTP》
日本人著的介绍HTTP协议的书,对理解HTTP协议的一些细节有非常大的帮助,插画也很多(日本人的行文风格,感觉就像看漫画一样),很容易就理解了。
7、《TCP/IP详解卷一》
这本书能把枯燥的知识讲得很细致,强烈推荐这本,看完相应章节后大概能够明白为什么TCP/IP要这么设计了.面试的时候经常问到三次握手和四次挥手,还有各种状态的转移, TIME_WAIT的时间为什么是2*MSL...
8、《UNIX网络编程卷一:套接字联网API(第三版)》
中文版快800页,不过我只看了一些章节,这本书也是把TCP/IP的细节讲得很深很深,此外还有非常重要的基本套接字编程,就是写网络程序的时候那些bind, accept, listen, send, receive函数之类的,内容非常多,但是这些是理解多路复用模型所需要掌握的...select/poll/epoll这些系统调用解决了什么问题?事件机制能不能理解?就看这本书的前六章了。
9、《数据库管理系统(原理与设计)》
这个也是web开发中离不开的东西,必须划重点学会的是ER图/SQL语句/存储数据(磁盘|文件|RAID|缓冲池等)/三大范式/索引以及相应的数据结构/事务相关的所有概念,尤其重点学习SQL,附上学习链接 .之后学会使用mysql workbench来进行数据库建模/逆向工程生成建表语句/根据SQL生成JAVA实体类等就不赘述了,开发过程中百度谷歌一下就知道啦,然后如果习惯在windows下开发的同学推荐利用navicat这个好东西,当然如果说想训练自己写sql语句的能力那纯粹用命令行也无所谓。
Java学习,不在一朝一夕,需要坚持不懈的努力,祝每一位在梦想道路上拼搏的人都能学有所成, 更多技术知识分享欢迎进群一起交流。