java的核心思想

Python014

java的核心思想,第1张

同人类任何语言一样,Java为我们提供了一种表达思想的方式。如操作得当,同其他方式相比,随着问题变得愈大和愈复杂,这种表达方式的方便性和灵活性会显露无遗。

不可将Java简单想象成一系列特性的集合;如孤立地看,有些特性是没有任何意义的。只有在考虑“设计”、而非考虑简单的编码时,才可真正体会到Java的强大。为了按这种方式理解Java,首先必须掌握它与编程的一些基本概念。本书讨论了编程问题、它们为何会成为问题以及Java用以解决它们的方法。所以,我对每一章的解释都建立在如何用语言解决一种特定类型的问题基础上。按这种方式,我希望引导您一步一步地进入Java的世界,使其最终成为您最自然的一种语言。试图在您的大脑里建立一个模型——或者说一个“知识结构”。

java核心技术就是Spring。

从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

简单来说,Spring就是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架

下面从整体上认识一下Spring的主要特征:

*轻量:从大小与开销两方面而言Spring都是轻量的。此外,Spring是非侵入式的:使用Spring,我们的类还是pojo类,完全不用继承和实现Spring的类和接口等。

也就是说,使用Spring的应用中的对象不依赖于Spring的特定类。

*IoC:Spring通过控制反转技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。可以认为IoC与JNDI相反--不是我们自己控制对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它,这就是DI--依赖注入。

基本上就是对象不用自己动手管理和创建。完全由容器管理,我们只管用就行。

*AOP:Spring提供了面向切面的编程支持,AOP将与程序业务无关的内容分离提取,应用对象只实现它们应该做的--完成业务逻辑--仅此而已。它们并不负责其它的系统级关注点,例如日志或事务支持。

AOP将与业务无关的逻辑横切进真正的逻辑中。

*框架:Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),而用户就有更多的时间和精力去开发应用逻辑。

所有Spring的这些特征都能帮助我们够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。

*借助Spring,荣国依赖注入,AOP应用,面向接口编程,来降低业务组件之间的耦合度,增强系统的扩展性。

* 让已有的技术和框架更加易用。

*利用其对hibernate的SessionFactory、事务管理的封装,更简洁的应用hibernate.

*Spring并不完全依赖于Spring,开发者可自由选用Spring框架的部分或全部

*利用AOP思想,集中处理业务逻辑,减少重复代码,构建优雅的解决方案。

*低侵入式设计,代码污染极低。

Spring致力于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企业应用开发的"一站式"选择,并贯穿表现层、业务层及持久层。

虽然Spring可以一站式解决整个项目问题,但是Spring并不想取代那些已有的框架,而是与它们无缝地整合。Spring可以降低各种框架的使用难度,他提供了对各种优秀框架(如Struts、Hibernate、Hessian、Quartz等)的直接支持。

使用Spring的主要目的是使J2EE易用和促进好的编程习惯,Spring的目标就是让已有的技术更加易用。

所以Spring的一个重要思想就是整合和兼容。

《java核心技术》个人觉得,讲的很深入浅出,有深入东西,但是好懂。是一本任何阶段都适合的好书。

《java编程思想》已经到达了一个高度了。可以说作者把java当一个艺术品在解析。说实在的,作者已经尽力在讲的通俗易懂了。但是毕竟这本书沉淀得太厚重。所以刚刚接触java不久的并不适合。你可以在这本书里面找到让你兴奋的知识。

这2本书在手,几乎不用继续考虑其他的书了。除非这本书是专讲你感兴趣的个别知识点。