提高java应该看什么书?
一、Java编程入门课
对于没有Java编程经验的程序员来说,随便看什么入门书籍都一样。在这个阶段,你需要快速掌握Java的基本语法和基本用法。目的是“吞枣不求甚解”,先熟悉Java。在极短的时间内快速过一遍Java语法,多写带猜测的代码,做到“心中有数”。
1,Java编程思想
下载地址:/share/share/p 2446196 . html
在你有了一些Java编程的经验之后,你需要“知道为什么”。这时候《Java编程思想》就是一本让你知道为什么的好书。对基本的面向对象知识,基本的Java语法,基本的类库都有清晰的讲解,可以帮助你打好Java编程的基础。这本书的缺点是太厚太啰嗦,不适合现代人快节奏学习。因此,你应该知道如何选择这本书。不是每一章每一节都值得一读,你可以只挑重点,深入阅读。
2.敏捷Java的中文版
下载地址:/share/p2564807.html
这本书是出版社给我的。我一拿到就放在书架上,书柜里一页也没翻。但是前两天整理书柜的时候,拿出来翻了一下,发现绝对是一本好书!这本书的一大特色就是单元测试和TDD贯穿全书。在教你各种重要的Java基础知识的过程中,潜移默化的影响你的编程思维走向敏捷和TDD。另外,这本书很新,基于JDK5.0的语法,学习JDK5.0的新语法也不错,另外,这本书在内容的选择上也很恰当。毕竟Java语言有庞大的类库,讲的东西太多了。本书选取的内容和内容量都非常恰当,让你在最少的时间内掌握Java最重要的知识,顺便培养优秀的编程思想。真是一本不可多得的好书。
虽然作者本人把这本书定位在入门水平,但我不确定对于入门来说是不是有点深。我也准备看看这本书,有空再学。
二、Java编程高级班
打好Java基础需要更多的实践经验积累,我不认为有什么捷径。在编程生涯的这个阶段,有两本书值得一读,可以培养良好的编程习惯,提高代码质量。
1,“重构以改进现有代码的设计”
下载地址:/share/p 1838195 . html。
这本书很有名,不用介绍了。可以在业余时间多看看,用自己的实践来印证。这本书的影响潜移默化。
2.通过示例进行测试驱动的开发
下载地址:/share/share/p 2564819 . html
这本书最大的特点就是很薄,似乎没有负担。你可以找一个周末的下午,边看边做,一个下午就把书看完了,这本书里的例题都用完了。这本书的作用就是让你通过实战培养TDD的思维。
三、Java建筑师之路
在这个阶段,你应该已经非常精通Java编程,有了很好的编程思路和习惯,但可能对应用软件的整体架构还缺乏把握。现在是迈向建筑师的第一步。
1,《专家一对一J2EE设计开发》
下载地址:/share/share/p 2564816 . html
这本书是Rod Johnson的名著,非常经典,springframework就是从这本书里的代码诞生的。但是这本书好像没有中文译本。
2、《没有EJB的专家一对一J2EE开发》
下载地址:/share/share/p 2564818 . html
这本书是gigix翻译的,有很多行业专家参与。虽然署名的翻译是JavaEye,但其实JavaEye贡献并不大,所以真的是占据了翻译的头衔。
以上两本书是Rod Johnson的经典著作,也是Java架构师的必读书籍。在这些推荐的书中,我看得最仔细最认真。当时我几乎废寝忘食。小时候开夜车看金庸武侠小说。书中的内容和我自己的经历、见识一一印证,总结得很精辟。看完这本书,感觉自己的技能爆炸了。
但是看了一些其他人的评论,似乎阅读体验并没有那么高,或许是因为每个人的知识积累和阅历不同。当时正好经历和知识的积累足够丰富,但是没有系统的整理和塑造。这本书一整理出来,马上就形成了一个完整的知识体系。
3.企业应用架构模型
下载地址:/share/p 1838194 . html。
马丁的另一本名著,但这本书只是泛泛而读,并不仔细。这本书似乎更适合做框架的人阅读。比如你打算自己写一个ORM,这本书一定要看。不过做应用的人不看好像也没关系,但是如果有时间的话,建议仔细看看,这样会让他们知道框架为什么要这样设计,这个层面可以提升到框架设计师的角度去思考问题。马丁的书一直备受推崇,但从未像罗德·约翰逊的书那样被认真阅读过。
4.敏捷软件开发的原则、模式和实践
下载地址:/share/p56689.html
鲍勃大叔的代表作,敏捷经典代表作,这本书挺特别的。与其说是一本关于软件开发过程的书,不如说是一本关于软件架构的书。这本书用了很大的篇幅来讲面向对象软件开发的各种模型。个人认为看完这本书,就不用看GoF的设计模式了。
第四,软件开发过程
了解软件开发流程不仅是为了提高程序员良好的编程习惯,也是为了增强团队合作。
1,UML基础
下载地址:/share/p2564824.html
事实上,UML与软件开发过程无关,但它是软件团队合作交流和编写软件文档所需要的工具。然而,真正实用的UML图并不多。看这本书就够了,没必要去啃什么UML用户指南之类的东西。在此提醒一下,这本书的中文翻译很差,建议有条件的看英文原版。
2、“分析极限编程拥抱变化”XP
下载地址:/share/p2564834.html。
这是肯特·贝克名著的第二版,中英文对照。没什么好说的,必须看书。
3.统一软件开发流程
下载地址:/share/p2564837.html
其实UP和敏捷不一定冲突。UP也强调迭代和测试,但是UP强调的文档和过程驱动并不是敏捷所采取的。无论如何,UP值得一读。毕竟国内真正接受敏捷的企业很少,还是要用UP来武装自己,哪怕是XP用UP。
4.敏捷建模AM
下载地址:/share/p2564838.html。
斯科特·安布勒的代表作,这本书很有实战性,讲了如何既敏捷又UP,把敏捷和UP统一起来,提出了很多实战性的建议和实践。我们可以把《解析极限编程拥抱变化》、《统一软件开发过程》、《敏捷建模》这三本书一起看,看看XP和UP的区别,再看看AM是怎么把XP和UP统一起来的,把这三个理论融为一炉,形成自己的理论体系,这样你也可以写书了。
动词 (verb的缩写)软件项目管理
如果你突然被领导提拔为项目经理,一点项目管理经验都没有,你肯定没有信心;如果你觉得自己不擅长项目管理,想提高自己的项目管理能力,那么考PMP肯定是远水楼台先得月。
1,快速软件开发
下载地址:/share/p2564839.html
这也是一本名著。可以说,手里有本书,就有了资深的项目管理人员给你出谋划策,再也不用担心自己的无能了。这本书不是关于管理理论的。在实际项目管理中,谈论这些理论并不能解决问题。这本书有点类似于“软件项目思想大全”之类的东西,罗列了各种软件项目面临的各种问题,以及如何解决这些问题的思路。只要做些修改,找个药方就行了。
不及物动词摘要
在这个推荐阅读的书籍列表中,没有流行的软件框架学习书籍,比如Struts、Hibernate、Spring等等,也没有AJAX书籍。就是因为这样的书容易过时,而且上面的书大多生命周期长,值得购买和收藏。