(一)选择Seam
Seam推出后,业界一片哗然后。有人认为:原来J EE架构中持久、业务和表示三层结构泾渭分明,结构清晰。现在把三者合在一起,是不是又到退到最初的混乱时代。而更多的人则认为Seam这是Java中ROR,Java中的.Net,从此Java企业应用开发进入快速时代。发出后面这种声音的大多是J EE开发中深受分层之苦或深受J EE开发入门难之苦的人发出的。
我们不详细谈Seam给企业应用开发带来的好处,这些好处在Seam的开发指南和各个网站的宣传说的很清晰了,甚至有很多夸大的成份。从务实的角度出发,如果需要使用Java进行分布式开发,则目前可以选择的也只有EJB了,而Seam正好是在EJB3的基础上建立的一个框架。当然,也可以直接使用EJB进行开发,但是Seam已经集成了这么多服务,可以减少开发工作,本着拿来主意的思路,直接就使用Seam了。
当然,进行J EE开发,除了选择Seam以外,还可以考虑先择Spring。在现在Spring正值热火朝天的时刻,我还是要说说Spring的硬伤:
l Spring不能进行分布式开发,一般有点规模的项目需要进行分式布署,Spring显然不能满足。
l Spring使用IOC为核心,在上面东拉西扯增加对一些服务的支持,并没有提供一站式的解决方案,带应用带来更的是麻烦。
l XML配置文件,有点规模的项目配置文件的内容很多,查找烦。
(二)先择Flex
使用Java进行WEB应用开发,表示层一直是非常头痛的一件事。JSP使用标记和html混合的方式,虽然有群多的MVC框架来主持,但对开发方便性以及用户体验并没有助益。JSF虽然高调推出,曾被认为是Java表示层开发的救世主,从此Java开发人员开始体验快捷的开发。然而,这是Sun给Java开发人员画的一个饼而已,开发人员还是在无助中继续混饭吃。
当然,开发人员一直在努力,他们从没有停止对开发快捷和更好的用户体验的追求。Ajax正是最好的左证,一项古老的技术,竟然可以发挥到如此地步,不能不佩服他们的伟大。但浏览器的建立者,WWW规范的制定者并没有想到后来者会这样使用HTML、JavaScript,所以用户体验越好的Ajax框架,让浏览器崩溃的可能性越大。让自行车当公交用,虽然在上面加上公交车的框架,但二个轮胎可经受不起。虽然现在的浏览在JavaScript解释上大做文件,但近期只能做为我们的期望。
随着对Ajax在改善用户体验期望的破灭,很多人注意到Flex。极好的用户体验,如Delphi、VB般的快速开发,一下子收引了一大批人。虽然编译后文件过大,当分模块和RSL等技术的推出,对企业应用还是吸引力极大的。