技术开发 频道

使用SWT开发WEB应用

  SmartSWT同其它RIA平台比较有一些独特的优势。首先它是基于SWT的RIA平台,依托强大的Eclipse阵营,有许多扩展技术可用,如JFace、GEF、EMF等,像UML设计器、报表、动画这样的复杂图形应用都可以通过SWT实现后,发布到SmartSWT,从而在WEB上很轻松地使用这些桌面应用独有的表现技术。还有OpenGL、RCP这类应用也有可能在将来得到支持,而且Eclipse不断发展中,SWT相关技术的不断成熟,都将以最快的速度同时运用于WEB应用。而且多年来用积累的用SWT开发的软件,不需要修改,或只需少量的修改,即可同时拥有WEB版本。

  其次,很多JAVA应用开发者往往只对JAVA服务端的技术感兴趣,而对表现层采用的HTML、JS、JSP这类标签语言和脚本技术并不喜欢。而事实上兼通JAVA技术、HTML和脚本技术的程序员也是少之又少。这也是造成许多传统J2EE应用的界面表现不佳的原因。由于SmartSWT直接采用了SWT,使的整个应用的开发完全是纯JAVA技术的开发过程,开发者不再需要与非面向对象的HTML、JS、JSP等标签语言和脚本技术打交道,整个开发过程完全是桌面应用的开发模式,基于事件驱动。这使得应用开发在技术人员的配备上要容易得多。

  此外,发布到SmartSWT的SWT应用,客户端通过浏览器使用时,仍然具有和原SWT一样的具有Windows本地风格的界面,具有和真正桌面应用一样的表现能力和事件机制,其表现能力和功能是Bindows以及Flex等技术无法真正模拟的。

  SmartSWT的局限性

  尽管SmartSWT有诸多好处,但也存在一些局限性。 由于技术实现的原因,对网络传输速度要求较高。SmartSWT在内网内访问时,其使用效果和本机上直接使用相差不多,但在外网上却几乎不具可用性。这决定了SmartSWT只能用于开发企业内网应用。

  另外,和Flex类似,Flex要求客户端的浏览器安装一个Flash ActiveX控件,SmartSWT也有类似要求。SmartSWT客户端需要在浏览器中实时表现服务端SWT应用的图形界面,并对用户操作做出响应,这就需要在客户端安装一个特制的小型JAVA虚拟机,并以ActiveX控件的形式在IE中使用。某些政府机关的敏感部门对这种方式 可能比较反感。

  选择SmartSWT,还是...

  是否选择SmartSWT,取决于您的软件应用范围和客户。如果您的软件是内网的企业应用,您的用户日常办公使用的是Windows系统,而且对客户端安装一个小小的虚拟机不介意的话,选择SmartSWT无疑是上佳选择 。它将使您的WEB应用开发充分享受SWT开发的各种便利性和各方的丰富技术支持,完成普通WEB无法完成的功能。SWT界面的表现力和操作便利性,也会使客户满意度大大提高。

0
相关文章