测试
如你可能已经注意到的,我和其他Spring开发这是全面单元测试重要性的坚定支持者。我们相信框架被彻底单元测试过的是非常重要的,而且我们框架设计的主要目标是让建立在框架之上的程序易于单元测试。
Spring自身有一个极好的单元测试包。我们的1.0 M1的单元测试覆盖率是75%,而且我们希望在1.0 RC1的时候能够达到80%的单元测试覆盖率。我们发现在这个项目中测试优先的开发带来的好处是实实在在的。例如,它使得作为国际化分布式开发团队的工作极端有效率,而且用户评论CVS snapshots趋向于稳定和使用安全。
因为以下理由,我们相信用Spring构建的应用程序是非常易于测试的:
IoC推动了单元测试
应用程序不包括直接使用注入JNDI的J2EE服务的plumbing code,这些代码一般让测试难于进行
Spring bean factories和contexts能够在容器外设置
在容器外可以设置Spring bean factory的能力提供了对开发过程有趣的可选项。在几个使用Spring的web应用中,工作是从定义业务接口和在web容器外集成测试开始的。在业务功能已经足够完整之后,web接口不过是添加在其上的薄薄一层。
谁在使用Spring
虽然相对来说Spring还是一个新的项目,但是我们已经有了一个令人印象深刻并且不断增长的用户群。它们已经有许多产品使用着Spring。用户包括一个主要的全球投资银行(做大型项目的),一些知名的网络公司,几个web开发顾问机构,卫生保健公司,以及学院机构。
许多用户完整地使用Spring,但是一些只单独使用一些组件。例如,大量用户使用我们地JDBC或者其他数据访问功能。
Roadmap
在今年晚些时候我们主要要做的是让Spring发布release 1.0。然而,我们还有一些更长远的目标。
为1.0 final规划地主要改进式源代码级地元数据支持,它主要用于(但不局限于)AOP框架。这将使得C#风格的attribute驱动的事务管理,并且让声明式企业服务在典型应用情况下非常容易配置。Attribute支持将会在Spring的1.0 final release支持中加入,并且设计的是在发布的那个时候能与JSR-175集成。
1.0之后,一些可能的改进地方包括:
通过对我们的JDBC和事务支持的一个相当抽象来支持JMS
支持bean factories的动态重配置
提供web services的能力
IDE和其他工具支持
作为一个敏捷项目,我们主要是受到用户需求的驱动。因而我们不会开发没有一个用户需要的特性,并且我们会仔细倾听来自用户群的声音。
总结
Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。
Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。
Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。
Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC纸上提供一个一致的编程模型。
Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务——如果你需要——还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。
Spring还提供了可以和总体的IoC容器集成的强大而灵活的MVC web框架。
更多信息
参见以下资源获得关于Spring的更多信息:
Expert One-on-One J2EE Design and Development(Rod Johnson,Wrox,2002)。虽然Spring在书出版之后已经极大地进步和改进了,它仍然是理解Spring动机的极佳途径。
Spring的主页:http://www.springframework.org。这里包括Javadoc和几个教程。
在Sourceforge上的论坛和下载
Spring用户和Spring开发者的邮件列表
我们正在尽我们可能去改进Spring的文档和示例。我们还为在信件和邮件列表中极好的回复率自豪。我们希望你能快速融入我们的社区!
关于作者
Rod Johnson 作为Java开发者和架构师已经有了7年的经验了并且在J2EE平台出现之初就在其上进行开发了。他是《Expert One-on-One J2EE Design and Development》(Wrox,2002)的作者并且贡献了其他好几本关于J2EE的书。他当前正在为Wiley撰写另外一本有关J2EE架构的书。Rod在两个Java标准委员会服务并且经常师大会发言人。现在他在UK做一个咨询顾问。
posted on 2005-10-26 16:08
Sung 阅读(183)
评论(0) 编辑 收藏 所属分类:
Java