【IT168 SOA文档】
网络开发正从基于MVC的架构转向客户机/服务器模式,即RIA+SOA,其中RIA用于呈现富用户界面(rich user interface),SOA用于提供所使用的服务。
虽然Web 2.0应用程序着实让人兴奋,但它们在下一代RIA+SOA集成平台形成之前是不会成为主流的。
下一代RIA+SOA平台什么样子
目前,在基于HTML、CSS、Javascript标准的网络环境下,RIA开发人员在构建富用户界面时,必须对多种第三方库文件和框架进行编译。这种“照单选菜”的RIA程序开发方式给开发人员增加了多余的负担。他们不能将精力全部用于编写程序,而必须拿出部分时间用来寻找、集成和整理各种各样的RIA开发平台。
SOA方面也是如此。开发人员必须自己解决如何创建服务,以及如何将这些服务集成到RIA前端程序。开发人员需要一个能解决编写程序时所需考虑的各种问题的平台,这样他们才能把精力放在他们最擅长的事情上——编写程序。
问题是:下一代RIA+SOA平台应该是什么样子呢?
我们可以从建立一个RIA+SOA应用的活动开始。一般来说,这些活动主要包括:
1. 设计程序的“样子”
也就是程序的总体外观。它包括以下方面:颜色、字体、图表,以及总体页面布局。
常用工具包括:HTML、CSS和图像工具。
2. 集成控件(widget)
控件将一系列常用功能封装在一个单独的组件里。除一些预定义的动态行为之外,它们通常还包含“感观”效果。它们是RIA程序的基础组成模块。
常用工具包括:ExtJS、Dojo、Yahoo YUI,以及一些其它小型控件工具。
3. 为用户界面添加动态行为
在用户界面创建动态行为涉及两件事:
- 事件处理
- 文档对象模型(DOM)操作
事件处理是对发生的特定事件(比如用户点击一个按钮或者收到服务响应)进行判定的能力。DOM操作可以让你根据接收到的事件动态改变用户界面。
常用工具包括:Javascript库类,比如JQuery、Prototype和Scriptaculous。
4. 使用服务
RIA的一个主要功能是使用后端服务。这使它可以用单页面用户界面传输服务的应用数据。用户界面与服务层也可以完全分开。Ajax是最常用的与服务交互的方法。
常用工具包括:Javascript库类,比如Jquery和Prototype。
5. 创建服务
服务为数据和应用业务逻辑层提供了一个接口。
常用工具包括:可以根据你所用的程序设计语言选择适当的框架来创建服务。