- Web璀璨:Silverlight应用技术完全指南
- 张驰清 王均 吕玉强编著
- 2745字
- 2025-03-10 01:42:40
前言
互联网的前端Web开发技术,在过去的十几年里经历了快速的变革。目前虽然传统的ASP、PHP、JSP等动态页面技术仍普遍应用于各种网站的开发,但随着用户对于用户体验和界面效果的要求越来越高,传统技术已不能满足具有丰富用户体验、富媒体网络应用程序的开发需要。
随着技术的发展,出现了AJAX、Flash等RIA技术,使得开发人员能创建出功能更为丰富的Web应用程序,甚至已经能够提供与桌面软件类似的用户体验。这些技术使Web应用程序能够更加动态地响应用户输入,例如,加载数据时只需要刷新界面的一部分,并不需要重新加载所有内容,从而加快了用户界面的响应,进一步改善了用户体验。
虽然AJAX与Flash等技术已经得到了广泛的普及,但依旧存在着一些不足。例如AJAX没有形成行业标准的技术规范,并且缺少功能强大的开发环境支持,过于灵活的特性使得开发人员在调试时往往很难理清头绪。而掌握Flash技术需要学习ActionScript语言并且使用新的开发环境,不能使用自己熟悉的编程语言进行开发,这对不少开发人员来说也是一个不小的门槛。
2007年,微软推出了Silverlight技术,与Flash类似,Silverlight也是一种跨浏览器、跨平台的开发技术,为网络带来具有丰富体验与交互的Web应用程序。它的显著不同在于它能用很多.NET程序员常用的语言(如C#、Visual Basic.NET、Ruby或Python)编程。对运行在Macintosh和Windows上的主流浏览器,Silverlight应用程序提供了统一而丰富的用户体验。通过Silverlight浏览器插件,使得用户界面、视频、交互性内容,以及其他各种应用能良好地融合在一起。
Silverlight还为Web应用程序开发人员和设计人员提供了一种全新的合作模式。过去,设计人员会使用设计工具来设计网站和用户体验,但在实现这些设计时,开发人员需要依照设计方案重新进行开发。而在Silverlight提供的合作模式中,设计人员可以使用专用设计工具Expression Blend构建所需的用户界面与交互,并将其表示为XAML,然后开发人员可以直接使用XAML创建Silverlight应用程序。因此,两者的合作会比以往任何时候都更加紧密,可以更快速地创建有丰富用户体验的Web应用程序,有效地缩短开发周期。
本书将立足于Silverlight技术本身,全面介绍Silverlight技术特点,配合丰富的实例讲解技术的原理和使用方法,帮助读者快速掌握开发Silverlight应用程序的方法。
预备知识
本书涉及Silverlight应用程序开发的部分,需要读者对C#编程有一定的了解,如果读者对这方面知识还不熟悉,可以先阅读相关介绍C#编程基础的书籍。
软件需求
要使用本书中的示例,需要安装以下几款软件:
➢ Silverlight 2 RTM或更新版本,您可以从http://silverlight.net免费下载。
➢ 操作系统:Windows XP或更新版本,Mac OS X或更新版本。
➢ 浏览器:Internet Explorer 6.0或更新版本,Firefox 1.5或更新版本,Safari 2.0.4或更新版本。
➢ 开发工具:Microsoft Visual Studio 2008 SP1或更新版本。
➢设计工具:Microsoft Expression Studio 2或更新版本(包含Expression Blend、Expression Design、Expression Encoder)。
本书内容
➢ 第1章Silverlight入门,介绍了Silverlight的概况,并介绍了Silverlight 2中新增的特性与优秀的Silverlight实例网站,最后使用一个实例详细演示了如何制作一个Silverlight Hello world程序。
➢ 第2章Silverlight开发入门,介绍了Silverlight的技术体系架构及各组成部分的详细特性,分析了一个典型的Silverlight的工程是由哪些文件组成的,最后介绍了将Silverlight嵌入到ASP.NET与HTML网页中的方法。
➢ 第3章使用Expression Blend,介绍了Blend的特点与安装方法,详细介绍了Blend软件的整体布局及各个面板的功能,最后通过另一个实例演示了Blend是如何与Visual Studio协同工作的。
➢ 第4章Silverlight与XAML,介绍了可扩展应用程序标记语言XAML的基本概念、语法。
➢ 第5章 形状与笔刷,介绍了绘制形状、应用笔刷创建效果的方法,并且分别讨论了以XAML和C#绘制形状及应用笔刷的方法。
➢ 第6章 布局对象,介绍如何在Silverlight中使用布局对象控制对象元素(如形状、文本、图像等)的位置,还介绍了如何控制Silverlight应用程序在HTML等网页中的定位。
➢ 第7章 变换,讨论了使用变换类为对象设置形变的方法。
➢ 第8章 动画,详细介绍Silverlight关键帧动画系统,以及如何控制动画的播放。
➢ 第9章 事件,讨论Silverlight中的事件机制,以鼠标事件和键盘事件为例,介绍如何处理事件,以及如何为控件创建自定义的事件。
➢ 第10章 控件,逐一介绍了Silverlight内建的控件的使用方法,讨论了这些控件的常用属性和常用事件的使用方法,最后介绍了如何创建用户控件,并为用户控件添加自定义属性和事件。
➢ 第11章 多媒体,探讨了Silverlight中对多媒体的支持,以及如何创建一个视频播放器控制视频数据的播放,此外还介绍了如何使用Microsoft Expression Encoder创建多媒体数据。
➢ 第12章 数据绑定,介绍数据绑定的概念,使用数据绑定的方法和场景,如何绑定到集合数据源,如何在数据绑定中使用值转换,以及如何对数据进行校验。
➢ 第13章 样式与模板,介绍了如何使用样式定制控件的外观,同时探讨了样式的应用域,讲解了模板的概念及模板中的状态管理,介绍了如何定义模板中的状态,以及状态间的过渡,如何使用模板改变控件的外观和状态间的过渡。
➢ 第14章 高级开发技巧,探讨使用独立存储IsolatedStorage保存应用程序数据和创建自定义控件等高级开发技巧。
➢ 第15章 访问数据与服务器,介绍了使用Silverlight与服务器端通信时经常使用的数据格式,这些格式包括XML、JSON等,以及它们序列化和反序列化的方法,接下来还介绍了Silverlight所支持的Web通信服务,这些服务包括WebClient、ASMX服务、WCF服务等,以及如何使用这些服务实现客户端与服务器端之间的数据交换。
➢ 第16章Deep Zoom,介绍了Deep Zoom的技术特点,介绍如何使用Deep Zoom Composer创建一个含有Deep Zoom效果的Silverlight应用程序,同时探讨了DeepZoom效果中的关键类MultiScaleImage的常用属性和常用方法。
➢ 第17章 综合实例,以目前流行的网上商店为例,综合利用前面各章节讲述的内容,介绍如何建立一个简单的在线商店系统。
读者对象
本书适合Web应用程序开发人员和RIA应用程序设计人员阅读,也可作为高等院校相关专业师生的教学参考书。
致谢
感谢所有推动Silverlight发展的技术人员,没有你们的努力,就没有Silverlight的生长和发展的土壤。感谢过宇峰负责编写了部分内容,感谢胡峰对本书的帮助。
感谢电子工业出版社的田小康先生对我们的耐心指导与不断鼓励,他对稿件提出了很多切实细致的修改建议;也感谢本书的责编和美编,还有为本书付出大量心血的朋友。
感谢微软亚洲研究院的张海东、侯智涛、王敏、朱向未、杨潇等同事给予的鼓励和帮助,和你们共同开发Silverlight项目的工作中,积累了很多实践经验,深入理解了Silverlight的技术细节。
张驰清:感谢我的父母一直以来对我的关心和鼓励,父亲阅读了初稿中的所有章节,帮助纠正了一些表述不当之处,同时在我最辛苦的时候不断鼓励我,给予我坚持到底的精神动力,我要感谢您们,并把这本书献给您们。
王均:感谢父母给我一如既往的鼓励,做你们的孩子真的很幸福。感谢我的新婚妻子王贞,你总能在我失落的时候鼓舞我。我爱你。
吕玉强:感谢我的父母对我无偿的付出,感谢微软亚洲研究院卓越的Silverlight研发环境,以及导师刘宁对我的悉心指导,感谢王均、张驰清两位作者对我的帮助,他俩在这本书上的努力给了我莫大的鼓舞。
我们E-mail是zhangchiqing@gmail.com、patrickwj@gmail.com,盼望和读者朋友们交流,并得到你们的批评和指正。
编著者
联系方式
咨询电话:(010)68134545 88254160
电子邮件:support@fecit.com.cn
服务网址:http://www.fecit.com.cn http://www.fecit.net
通用网址:计算机图书、飞思、飞思教育、飞思科技、FECIT