Java是一种计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
一、Java编程入门类
对于没有编程经验的童鞋要入门的话,基本是要读一些浅显易懂的书籍。要求我们快速了解java语言的起源,掌握Java语言中的基本语法和基本用法,快速熟悉Java,顺利的建立起一个属于自己的“Hello World!!!”。
1、《Head First Java》
作者: Kathy Sierra / Bert Bates
简介:《Head First Java》是一本完整地面向对象(object-oriented,OO)程序设计和Java的学习指导用书,根据学习理论所设计,你可以从程序语言的基础开始,到线程、网络与分布式程序等项目。重要的是,你可以学会如何像一个面向对象开发者一样去思考,而且不只是读死书。
作为一本入门书,它是绝对出色的。一个星期就能让你明白怎么用Java写程序了。尤其是你有其它语言基础的情况下,这本书能迅速让你明白java的特质。缺点是,它真的只是入门书。你必然还需要一本Java大字典,比如《Thinking in Java》,以便查阅Java在细节上的更多东西。关于这一点,书中附录B也说得很清楚了
下载地址:http://download.csdn.net/download/malinkang1989/5343418
2、《Java开发实战经典》
作者:李兴华 编著
简介:本书是一本综合讲解Java核心技术的书籍,在书中使用大量的代码及案例进行知识点的分析与运用,并且给出一些比较成熟的开发步骤,帮助读者更好地进行Java的开发。从作者多年的Java培训经验来看,大部分学生对各种高端开发都没有任何问题,唯一的问题在于Java基础并不牢固,而且在国内也始终没有一本真正可以引领读者入门的好书籍,大部分的书籍都是围绕概念本身进行讲解的,没有讲解清楚为什么要具备这些知识以及该如何去理解这些知识。
3、《深入理解Java虚拟机:JVM高级特性与最佳实践》
作者:周志明 编著
简介:书共分为五大部分。第一部分从宏观的角度介绍了整个java技术体系的过去、现在和未来,以及如何独立地编译一个openjdk7,这对理解后面的内容很有帮助。第二部分讲解了jvm的自动内存管理,包括虚拟机内存区域的划分原理以及各种内存溢出异常产生的原因;常见的垃圾收集算法以及垃圾收集器的特点和工作原理;常见的虚拟机的监控与调试工具的原理和使用方法。第三部分分析了虚拟机的执行子系统,包括class的文件结构以及如何存储和访问class中的数据;虚拟机的类创建机制以及类加载器的工作原理和它对虚拟机的意义;虚拟机字节码的执行引擎以及它在实行代码时涉及的内存结构。第四部分讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、条件编译等语法糖的原理;讲解了虚拟机的热点探测方法、hotspot的即时编译器、编译触发条件,以及如何从虚拟机外部观察和分析jit编译的数据和结果。第五部分探讨了java实现高效并发的原理,包括jvm内存模型的结构和操作;原子性、可见性和有序性在java内存模型中的体现;先行发生原则的规则和使用;线程在java语言中的实现原理;虚拟机实现高效并发所做的一系列锁优化措施。
下载地址:http://download.csdn.net/detail/u010349169/8168053
二、编程进阶类
当你打好Java基础后,还需要你更多的实践积累。在这个阶段,你需要多实践,同时也需要有良好的代码风格,提高自己的编程质量。
1、《Effective Java》
作者:(美)Joshua Bloch 译者:潘爱民
简介:本书介绍了在Java编程中57条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。通过对Java平台设计专家所使用的技术的全面描述,揭示了应该做什么,不应该做什么才能产生清晰、健壮的高效的代码。
下载地址:http://download.csdn.net/download/u010893788/6017143
2、《重构:改善既有代码的设计》
作者:(美)福勒 编著
简介:本书清晰揭示了重构的过程,解释了重构的原理和最佳实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了70多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。本书提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。
下载地址:http://download.csdn.net/detail/zaiduxinling/6626117
3、《Spring揭秘》
作者:王福强 编著
简介:《Spring揭秘》本书以幽默生动的语言、辅以有趣的故事和典故,循循善诱地阐述了Spring框架的方方面面。针对Spring框架的主要功能以及开发者们遇到最多的问题,首先介绍问题的相关背景,然后逐条进行深度剖析,最后通过分析来引入Spring框架可以提供的最佳解决方案。虽言Spring,却不局限于Spring,本书向读者展现了更宽广的软件开发的世界!
下载地址:http://download.csdn.net/detail/ws2014/7116343
三、软件开发过程
1、《UML精粹》
作者:福勒 编著
简介:《UML精粹:标准对象建模语言简明指南(第3版)》在紧迫的时间压力下,程序员很难通过紧跟技术创新的脚步来享受软件工程领域的最新成果。正因如此,殿堂级大师Martin Fowler这本旨在帮助专业人士提升效率的图书一问世,立即给软件工程社区带来巨大震撼。其前两版经年畅销,因行文精炼自然、见解透彻而广受称赞。被誉为以软件设计为生者必备资料的第3版,更是带来有效面向对象设计的最佳思想及愈发便利的教学体例,引进交互概述图、时间图、组合结构等新图型,对类图、顺序图、状态图、活动图等也有较多更新。
下载地址:http://download.csdn.net/detail/cc850107/504557
2、《敏捷建模》
简介:AM(敏捷建模)是一种态度,而不是一个说明性的过程。AM是敏捷建模者们坚持的价值观、敏捷建模者们相信的原则、敏捷建模者们应用的实践组成的集合。 AM描述了一种建模的风格。当它应用于敏捷的环境中时,能够提高开发的质量和速度,同时能够避免过度简化和不切实际的期望。 AM可不是开发的“食谱”,如果你寻觅的是一些细节的指导,如建立UML顺序图或是画出用户界面流图,你可以看看在建模Artifacts中列出的许多建模书籍,我特别推荐我的书The Object Primer 2/e(尽管这有失公允)。
下载地址:http://vdisk.weibo.com/s/BJAM21Y1lx4fQ
四、总结
在编程语言的世界里,每一种语言都有属于自己的特性,不论是Java,或者是其他的语言,都是一种人与机器沟通的媒介,希望大家热爱编程,快乐编程。一位伟大的程序员说过:代码改变世界!希望我们大家为建立一个更好地世界贡献出属于一份自己的代码!谢谢。