搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 懂一点架构 > 浅谈java学习之路

浅谈java学习之路

懂一点架构 2017-10-29

无论哪位大牛,都不可能成为各方面的全才。他总有自己擅长的方面,也有自己不熟悉的领域,例如一个精通C/C++语言的专家,可能会对Java不太感冒。所以说,本文仅仅从个人的角度来谈谈Java,如果有不同看法,鄙人举双手欢迎批评指正。

在准备学习Java之前,我必须要说的是,务必要把C的基础搞透。而验证你的C过关的标准就是你对指针的理解。我想作为计算机专业的人,应该没有人不会C语言,看看各大公司的面试就可以看出端倪,c语言仍然是每个计科班的人必经的教学课,那么怎么学习C呢?下面列出几本书:


汇编语言》王爽

这本书可以说我看过的第一本国内最经典的书。真的非常精彩,内容简单易懂,可以说是汇编语言学习的最佳入门书籍。为什么要学汇编呢?我觉得要想真正意义上了解C语言里面的指针,如果不了解汇编,那纯粹扯蛋!


《C语言程序设计》(美)克尼汉,(美)里奇 

这本书被誉为C语言中的“圣经”,你应该知道它的价值了吧。


《数据结构》严蔚敏版

这本书是本科计算机专业的必修教材,以c语言贯穿全文,是国内不可多得关于数据结构方面的好书。但内容相对有点难度,如果c语言功底不强的话,入门还是比较难的。

 

好了,C就说到这了。上面列的几本书只能让你C入门,如果想要更深入地了解C,还有很多很多的好书等着你去读。这里就不在一一列举了。下面正式开始我们的Java。说到Java,我们必然会谈及Java里面的几大名著。


《Java编程思想》

这本不用说,Java里面的“圣书”。但是,初学者一上来就看《Java编程思想》会感觉比较难。确实,书里含有大量的示例,更重要的是这些示例都不是一般的示例,它们都是经过精心打磨过,蕴含着大量的设计模式、编程规则技巧等等,所以其实它不太适合作为一个入门书。但话说回来,在我看来,又没有任何其它书比《Java编程思想》更适合入门的了。曾经听过一个小道消息:如果你把《Java编程思想》这本书啃透的话,月薪上万没有问题。第一次听到这个言论,我不屑一顾;现在想一想,这种说法也有一定道理:如果你理解书里的每个知识点的话,那么可以说你离Java大牛不远了。Oh,不,应该说你已经可以称为“小牛”了。


《Java核心编程》

这本书是与《Java编程思想》并列的两本最好的书,但《Java核心编程》更注重于图形方面的编程,比如说Swing/Awt。所以,我没有看过这本书。如果你对Swing/Awt感兴趣的话,这本书是你最好的选择。《Java核心编程》、《Java编程思想》两者选其一,没必要两本都看,如果有时间的话,不若选择一本深读好过两本泛读。


《Effective Java》中文版

与《Java编程语言》相反,本书介绍了在Java编程中57条极具实用价值的经验规则,目的就是写出更有效Java程序,Java程序员必读之书!

 

有点晕了吗?其实学习Java首先应该培养兴趣,兴趣从哪里来?当然是做出自己的东西,美其名曰做项目。当你完成一个项目,你的成就感、虚荣心及自信心将会得到最大的满足。如何做项目,我就不在这里多说了,什么SSH、什么Spring MVC,随机挑一个你自己认为不错的书来参考,因为我觉得这些书没有什么好坏之分,都差不多。

恩,好了,项目也做了,名著也看了,那么接下来做什么呢?是不是觉得万事OK你已经是Java大牛了。虽然有点夸大,也可以这么说了。不过,Java仍然有更广阔的天地,这可以从阅读《深入理解Java虚拟机》开始。


《深入Java虚拟机》

第一次读这本书的时候,就感觉它是一本奇书,学习Java怎么能少得了它呢。花了整整一个星期的时间,如行云流水般的读了这本书,受益匪浅。现在,这本书我已经看过几遍了,而且仍然经常拿出来翻一翻,每次看这本书都感觉有所收获。更值得一提的是,如果你要写Java编译器的话,这本就更必不可少了。当然,《深入理解Java虚拟机:JVM高级特性与最佳实践》这本书也是很好的。


《Java 解惑》英文版

与《c缺陷与陷阱》类似,讲述Java中常常不为人所注意但有时却可能造成系统崩溃的细微之处。


《Java并发编程实践》

Java并发编程方面最值得读的一本书,但内容理论化太强,需要静下心来慢慢品味,而且是不断反复阅读才可能领会Java并发的真谛!


《Java编程语言规范》英文版、《JVM规范》英文版

写Java编译器会用到,其他情况下,可以看,亦可以不看。


《分布式Java应用》

更多讲述Java底层的细节方面,又与企业中实际项目有所关联,暂不推荐看。

 

其他知识点:

计算机网络《TCP/IP详解:卷一》

计算机体系:

关于计算机组成方面的书,我一直没发现经典的,就已下面两本非常精彩的书代替吧

《深入理解计算机系统》、《程序员自我修养》

敏捷开发:

《程序员修炼之道:从小工到大家》、《重构:改善既有代码设计》、《代码整洁之道》

设计模式:

《Head First设计模式》、《研磨设计模式》;

 

以上都是一些基础性的学习,对在校学生的参考意义会更大一些。如果你已经工作,你应该会发现,实际工作中对业务结果会更加注重一些,也就是说你沉淀并使用的技术必须要对业务价值负责。在工作的过程中,你会发现像mysql、redis、nginx、kafka、sharding中间件、配置中心,监控告警以及大数据处理等这些技术对业务更有作用。路漫漫其修远兮,大家一起加油!





版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《浅谈java学习之路》的版权归原作者「懂一点架构」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注懂一点架构微信公众号

懂一点架构微信公众号:gh_fba925235d45

懂一点架构

手机扫描上方二维码即可关注懂一点架构微信公众号

懂一点架构最新文章

精品公众号随机推荐