摘 要:本文借助于对Flex技术的研究与实践,剖析了软件发展继主机时代、CS时代、BS时代的下一代开发技术特征:Rich Client和Rich Internet Application,并介绍了使用Flex的组件和框架技术来开发软件应用产品的过程与体验。
关键词:RIA Flex MVC 框架 组件
大规模定制、个性化、随需应变和大规模融合的趋势都是下一步信息化应用的新要求。在解决了C/S时代高昂的部署和更新的问题之后,B/S同样也引入了一些问题:
(1)始终没有一个标准的技术规范,由此造成了各个浏览器在W3C之外做额外的扩展。在应用开发中,更多的是需要依赖于这些扩展去实现更加绚丽的图形表现和灵活的交互。
(2)IE从2001年之后就没有再推出过重要版本更新,那么也就意味着所有的开发技术都停滞在2001年之前的理念,这与服务器端技术的不断发展已经渐渐脱节。
(3)作为基于浏览器的应用,因为安全等方面的原因,始终不能成为应用的集成者,很多时候是被动地去接受单一服务器提供的应用。例如对于客户端希望能够跨越不同网络调用相关的Web Services,由于安全模型的畸形(不是非常完善的资源访问控制),无法做到在同一浏览器内流畅的实现跨应用的集成。
(4)基于浏览器的技术严格地说是依赖在线访问而构建的应用,在需要一些离线(Office Line)的应用中,就显得有心无力。毕竟从浏览器设计的开始就希望能够在一个最小权限的“沙盒”模型下去运行,因而对于本地资源的访问在默认情况下是拒绝的。而某些浏览器(如:IE)允许通过一些设置来跨越这个安全模型,却不能提供一个良好的权限分层机制。
针对以上的问题,Flex结合桌面应用的可用性和web应用的易管理的优点,开发了一种复杂的Internet应用。Flex是一个在J2EE应用服务器或servlet容器安装的展现服务器,它拥有丰富的用户界面组件,用于排列这些组件的基于XML的标记语言和可以处理用户交互的面向对象的编程语言,它可以通过配置文件简单地解决数据跨域访问的问题,还能利用客户端资源实现离线的数据应用。由此,可以使用Flash播放器渲染复杂的Internet应用,使用工业标准和开发者熟悉的方式进行开发。