again
 

使用 Seam 的十大理由

 

 

英文原文地址:http://seamframework.org/Home/WhySeam

翻译者:Depeng Cong  

MSNcongdepeng@hotmail.com

百度空间:http://hi.baidu.com/charlielogic

<临时翻译,转载请保留以上信息>

快速构建富客户端

AJAX从根本上改变了WEB的交互模型。 传统的web客户端使用同步的粗粒度请求,从而使很多服务端应用程序避开最小缓存和无session层的并发。无状态的构架在很多情况下是可行的方案。 然而现在不一样了!AJAX 客户端使用很多异步, 并发,细粒度的请求与服务端交流,从而很方面的取得你想要的数据。对于基于并发的bugs,在内存和请求里面保存状态是非常脆弱的,因此Java EE平台没有提供session层并发的支持。Seam很用心的构思和设计基于AJAX的完全独一无二的并发模型和状态管理模型。Seam 1.1将开源的基于JSFAJAX解决方案比如ICEfaces Ajax4JSF整合到Seam的状态和并发管理引擎上。 你不必要学习JavaScript就可以很轻松的将AJAX添加到你的应用程序中,并且将使你隔离使用AJAX时相关的潜在bugs和性能问题

最容易开始 EJB 3.0旅程的方法

EJB 3.0是商业事务组件中最伟大的组件模型(之一),更吸引眼球的是它是崭新的Java 持久化应用程序接口 (JPA)。但是Java web和应用程序框架缺少对于这个新组件的有效支持,因为他们设计在EJB 3.0发布之前。从而使你要自己写相关的集成代码,并且在很多情况下迫使你关注分层的构架,哪怕对你的程序来说分层是不合适的。Seam为了便于使用EJB 3.0而设计,她让你可以在任何领域使用该新组件模型。因此Seam中的任何类都是一个EJB组件,没有必要引入额外而没有必要的层到你心爱的框架中。当然啦,你也不需要为了集成EJB 3.0到你的web框架而写任何代码,因为Seam已经为你做好了。(译者注:都是这帮可恶的外国程序员,都帮我们做好了,所以国内出现一帮吃软饭的程序员,什么都不要懂,学用个框架,包括我,That’ all.)提醒一点的是,并不是说使用Seam就一定要使用EJB 3.0,如果你现在的开发环境不支持EJB 3.0,那么Seam提供了其他备选方案。

最佳的综合利用JSF的方案

JSF已经创立了一套包含组件库和其他附加功能的充满活力的体系,从而使其很容易的就成为Java Web框架中人气最高的。然而纯JSFXML配置很繁重,并且漏掉了一些重要的特性,特别是为了用户构建面向Internet应用程序的。Seam使用少量的annotations来替代乏味的XML配置,从而减少代码并使你的工作更有成效。Seam添加额外的函数来扩展JSF,扩展的领域包括多窗口操作,工作空间管理,基于模型的验证,基于jBPM的页面流程,国际化,页面碎片缓冲。Seam甚至为处理可标记的(REST-style)web页提供便利---JSF提出控告的用户数。(译者注:上句话我也不懂,瞎翻译。)因为JSF没有讨论访问事务资源的问题,那么Seam已经集成的JTA, JPA EJB 3.0将成为大多数JSF使用者的必需品。

(译者注:Seam总是先夸奖一下某个技术,然后再说这个技术什么地方没做好,但是Seam做好了,以此来从侧面反应Seam的牛逼。)

轻松的业务流程管理

BPM ==Business Process Management==业务流程管理)

jBPM是一套直观而强大的解决复杂的多人交互的企业应用程序,或者有复杂的人机交互的web应用程序的方案。BPM技术不仅仅让开发者和分析师更容易建模,实现和完善一个业务流程,而且同时使得分析业务流程的有效性和被告知的问题得到运行和管理成为可能。Seam深度集成了jBPM,让使用jBPM来进行任务管理或者页面流程变得难以置信的简单,并且是开始学习BPM技术的首选之路。(译者注:我玩过一个月的ALBPM,什么时候也玩一下jBPM,哈哈!)Seam jBPM的联合能缩短某些项目差不多几个月的开发时间。

增删改查更容易

Seam呈现影响企业应用程序复杂性的难题。那并不是说最容易的事情比它看起来复杂。当Seam准备构建简单数据驱动的应用程序时候,对比当前的任何增删改查框架它都是完全有价值的。Seam整合了一个简单的数据访问框架(围绕JPA Hibernate构建),包含一个命令行的代码产生器和一个数据库转换引擎工具,帮助你数分钟内完成操作。

让持久化变得轻而易举

SeamHibernate社区分离出来,设计和实现人员都曾经是Hibernate创建者,同时也是他们创建了持久化术语的环境。Seam's 会话模型 解决了 许多由传统无状态的web应用程序构架引起的持久化相关的编程问题。不管你是使用Hibernate 还是 JPASeam都可以很容易而且自然的扩展持久化环境,并且帮助你避免集群环境间不必要的副本复制。

Annotations 注解

Seam是第一个允许你使用Java 5的注解端对端的从持久层到用户界面通信的编程模型。你将不需要在多余而枯燥的XML配置文件里面挣扎。当然,这也不是说Seam就不使用XML,在适当的时候(Seam也有一个基于XML组件的复杂的配置设施)也是可以的,仅仅是说在平常的编程任务中你无需迷失在大量的XML里。

很酷的自动集成测试

自动化的单元测试在任何项目中都有一席之地。然后仅仅依赖单元测试是一件很危险的事情。大多数的Bugs涉及组件之间的或者是组件和容器环境的相互影响。单元测试不能适当的获取容器的行为,并且通常的也不能捕获复杂的内部组件的相互影响。Seam引入一个创新的方法从而可以自动的集成测试,在此你能够模拟整个的请求或者会话的流程,测试程序中从表现层到持久层的所有java代码。

结合开源代码和开源规范

Seam建立在开源规范如JSF EJB 3.0的开源代码实现如Hibernate, jBPM, Facelets, Drools, ICEfaces Ajax4JSF之上。Seam的创建者是EJB, JPA, Bean Validation JSF专家组中活跃的成员,并且领导了Web Beans (JSR-299)专家组试图将Seam中的一些思想成为Java EE标准。The Seam 项目完全的坚持开源思想创新 ,推动新思想和促进Java 平台的发展。

开始工作

如果你尝试一下,你就会爱上seam 现在就开始吧!

 

 

 

posted on 2008-10-24 16:06 charlie's logic 阅读(431) 评论(0)  编辑  收藏 所属分类: 颠覆逻辑的生活

只有注册用户登录后才能发表评论。


网站导航:
 

统计