《.NET for Flash动态网站开发》前言

发表于:2007-06-11来源:作者:点击数: 标签:
“Flash动态网站 开发 ”是炙手可热的“数据驱动的富媒体应用程序”的核心,它是通过最强大的客户端富媒体环境Flash Player、最具魅力的 .NET应用程序 服务器 及重量级的XML实现的。 商业用户需要的是低成本所带来的高收益,而最终的消费者需要的是最佳的体

“Flash动态网站开发”是炙手可热的“数据驱动的富媒体应用程序”的核心,它是通过最强大的客户端富媒体环境Flash Player、最具魅力的 .NET应用程序服务器及重量级的XML实现的。

商业用户需要的是低成本所带来的高收益,而最终的消费者需要的是最佳的体验。

Flash也许是通向最佳体验的最佳应用之门。由Flash Player、Java及XML构建的架构在我们工作组内部也喜欢称为“网络三剑客”,它们提供了使用Flash Player、XML和Java建立下一代网络应用程序最迅速、最大限度节省投资和最具有挑战性的方法组合,这一组合能够满足商业用户和最终消费者的需要。

为什么叫 .NET for Flash应用程序

近十年来,Internet以前所未有之势使应用程序开发领域发生了巨大的变化,许多组织越来越依赖于由Internet及相关技术提供的数字资源和通信信道。现在,在设计和开发应用程序时,几乎所有的开发人员都会考虑如何最有效地结合与利用Internet技术,以便充分利用连接计算所带来的好处。

①C/S到B/S结构

过去的几年,在网络应用程序开发过程中,开发人员都注意到了一种情况,那就是浏览器已经成为几乎所有应用的标准客户端,而包含Web、中间件数据库的三层架构构成了各种应用的标准支撑平台,从根本上完成了C/S(客户机/服务器)结构到B/S(浏览器/服务器)结构应用模式的转变。

在B/S结构应用模式中,必须细心地对待由Web网页、中间件和数据库构成的三层架构,在这三层架构中:Web网页处于最高层,代表着浏览器(或者说是客户端Web动态和静态内容的解释器);最低层是应用程序中的原始数据,动态内容依赖于这些数据,这就是数据库;中间件是用来执行数据(业务)逻辑运算的组件,对于Microsoft.NET,这个组件是.vb、.cs等文件编译而成的.dll程序集,对于Java,这个组件是JavaBeans、EJB等Java类,对于ColdFusion,这个组件是CFC,对于PHP,这个组件是PHP类(PEAR),还可以包括JSP、Servlet、CFM、ASP、ASPX和PHP等网页。

②终端设备正在不断地异化,虚拟机的使用是大势所趋

同时,也应当注意到,终端设备正在不断地异化。可以浏览Internet的设备种类正在迅速地增长,如今移动电话、智能电话、个人数字助理(PDA)、交互式电视系统或电话亭,甚至某些家用电器也能浏览Internet。为了能够在不断异化的终端设备上形成一致的浏览体验,也为了不断降低制造成本,人们都已经认识到,虚拟机的使用已是大势所趋,它正在不断成为人们关注的目标。

③“富媒体”应用程序就是未来

被人们称为“富媒体”的应用程序逐渐开始升温,“富媒体”的核心是位于客户端的虚拟机,而Flash Player是其中的佼佼者。

有了Flash极富魅力的流媒体格式,再加上ActionScript,便有了Flash影片应用程序,这是极富魅力的富媒体应用程序。在客户端,承载该富媒体应用程序的是Flash Player。

正是由于Flash Player的出现使得C/S与B/S之间的界限变得模糊起来,因为使用Flash Player,可以将Flash影片应用程序当做C(客户机),也可以当做B(浏览器),而这就使得C/S与B/S逐渐走向融合。

④不可或缺的创作环境和运行时

从FutureSplash Animator(Flash的前身)到Flash 8,Flash由一个基本动画创作工具发展到一个完整的多媒体编写环境和网络交互开发环境,它已经是一个名副其实的集成开发环境(IDE)。Flash Player也从一个简单的动画解释器发展成一个被人们称为富媒体客户端(Rich Media Client)的工具。富媒体客户端是一个在内容、通信及应用程序上具有高度继承性的瘦客户(Thin-Client)环境,正如前述,这符合因特网发展的方向。

Flash Player是高度集成和极富扩展性的富媒体客户端,所有的Flash影片应用程序都由Flash Player解释。Flash Player不但可以作为浏览器的插件,而且还可以作为独立的浏览器解释Flash影片应用程序。

⑤Flash Player与Flash Remoting

与高度集成和极富扩展性的富媒体客户端对应,产生了各种各样的Flash Remoting技术,包括XML-RPC、WDDX、SOAP和AMF-RPC(即Flash Remoting MX)等,这是Flash的后端服务。

Flash Remoting MX不是原有的Generator的更新,而是具有实现新功能的Flash后端服务器组件,它提供了一种基础架构,使用该架构可以很轻松地连接到一个应用程序开发人员要使用的远程服务和Web服务。Flash Remoting MX提供了一个强大但是非常简单的程序模型和运行时,它大大简化了Flash影片应用程序的开发。使用Flash Remoting MX,开发者不需编写任何封装代码、Proxy代码、数据配置代码,就可以很轻松地把ActionScript客户端逻辑连接到远程服务。Flash Remoting MX把精确定义的应用程序API和服务(或集成在C#内,或集成在VB内,或集成在Java内,或集成在ColdFusion内,或集成在PHP内)都传递给Flash影片应用程序,并作为ActionScript的API。

这是一件令人激动的事情,有了Flash Remoting MX,有了Flash Player,你可以轻松地开发出那种具有炫彩图形的用户界面,而且可以部署到各种设备上——只要该设备安装了Flash Player。

XML,它简单得难以置信,但它也强大得难以置信。任何从事IT工作的人员都不能不了解它,任何从事应用软件开发的人员都必须精通XML。

新的Flash已经将架构完全建立在XML之上:为了更好地利用XML文档,ActionScript脚本语言内建了XML对象,可以使用XML对象加载和解析XML文档,并可以将数据以XML格式发送到服务端;而且新的数据组件也都是以XML数据格式为基础的,这就使得开发环境更具诱惑力,更加符合产业发展的方向。

你可以在服务端使用多种方法接收从Flash影片应用程序传递的数据,也可以从服务端向Flash影片应用程序传递数据。方法多种多样,但都要使用我们称为“中间件”的工具,传统的中间件包括JSP、ASP、CFM、PHP、ASP.NET等,这些都是Web网页。这些传统的中间件使用的平台各不相同,本书主要介绍这些工具与 .NET的结合使用。

.NET是一种基础架构,是微软发展的新型体系结构框架。它是建立在操作系统最上层的服务,是管理运行时代码需求的Common Language Runtime(通用语言运行时,简称CLR),这些代码可以用任何现代编程语言实现。CLR提供了许多服务,这些服务有助于简化代码开发和应用程序的开发,同时也将提高应用程序的可靠性

在这一结构框架上包含了ASP.NET和ADO.NET,它们都基于面向XML的Web服务,使用标准的XML解析器,通过XML Web服务建立与各种数据库之间的联系,并通过ASP.NET和ADO.NET建立标准的TCP/IP数据流。

Flash Media Server服务器(简称FMS)的出现给人们带来了一种全新的通信方式。有了FMS,你可以参加实时网络会议;使用FMS,你可以在工作中进行协作,以及通过Internet或企业Intranet共享信息。

使用FMS和Flash Remoting MX的集成,可以轻松连接数据库及驱动应用程序服务器以创建功能更强的应用程序,并将其融入到Flash Player当中,从而为终端用户带来全新的富媒体应用程序体验。

现在你可以充分利用Flash Player的强大性能创建RIA(Rich Internet Application,富Internet应用程序),而不是枯燥的网页加动态的图片拼凑了。更值得一提的是,Flash Remoting MX已经成为Flash服务端策略的核心,不管你使用Flash 8作为开发工具创建富Internet应用程序,还是使用FLEX创建富Internet应用程序,Flash Remoting MX都是应用核心。

本书主要介绍如何使用 .NET 1.x(同时兼顾 .NET 2.x)应用程序服务器架构、Flash Remoting(注意区别于Flash Remoting MX)及FMS集成创建功能强大的富Internet应用程序工程。 

作者的话

从开始准备写作到本书的出版,前后经历了三年多的时间,也经历了多个版本的Flash创作环境,这紧张的几十个月过后,本书得以问世。我希望通过本书能给广大的Flash创作人员带来无限广阔的认知。

本书在写作过程中参考了“堆积如山”的资料,也是作者多年创作和开发体验的结晶,书中内容准确翔实。虽然如此,书中错误和不足在所难免,恳请读者不吝赐教和指正,我们一定会全力改进,在以后的工作中加强和提高。

【责任编辑:火凤凰 TEL:(010)68476606-8007】



回书目      下一节

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
...