写点什么

专家评微软“Flash”杀手——Silverlight

  • 2007-04-18
  • 本文字数:1249 字

    阅读完需:约 4 分钟

微软公司在 4 月 16 日的一次会议上,向外界宣布其针对下一代 Web 展现层所推出的新技术——Silverlight,被业界成为 Adobe Flash 产品的“杀手”。

Silverlight 技术集成多种现有的 Web 技术和设备,可以在 Windows、Mac 等操作系统上跨平台上运行,同时支持 IE 和 Firefox,甚至包括 Apple 的 Safari Web 浏览器。值得一提的是,在应用 Silverlight 技术时,无需对现有的网站设计进行移植,甚至包括直接利用 Adobe Flash 设计的内容。在谈到 SilverLight 和 Flahs 的区别时,微软的一位高层人士透露说:

WPF/E(Silverlight 的以前称呼)程序并不是传递给 Flash 播放器的一个编译好的二进制文件,相反,所有的代码都是基于标准的,且图像都使用了 XAML。同时,与 Flash 的内容不方便搜索引擎收录不同,SilverLight 是以 DOM 型式公开它的元素树,内容能很好被搜索引擎收录。

关于 SilverLight 的产品介绍可以参见 Sohu IT 的一篇报道。在台湾地区著名的微软技术专家王森的博客里,他提到了“ WPF 和 SilverLight 的区别”:

XAML 对 WPF 来说是一种把.NET 语言改用 XML 来描述的方式,也就是说,XAML 用在 WPF 上,像是另外一种编程语言,和 C#、VB、IronPython 类似。所以 XAML 能做的,C#和 VB 也能做,但是反过来 C#、VB 能做的,XAML 不一定能做到,因为 XAML 是为了配合开发工具,特别设计出来的一种语言,本身有它的局限性,需要配合正规的语言才能完成一个真正有用的程序。而 XAML 对 SilverLight 来说,本质则比较接近 SVG,XAML 用来描述构成画面的结构树,然后配合 JavaScript 去操作这棵表示 UI 的树,以达到互动的效果,所以对 SilverLight 来说,XAML 像是用来扩充 HTML/CSS 原本不足的一组 Tag。就像在 Firefox 中,一样可以用 JavaScript 去操作 SVG 所描述的画面,以达到多媒体的效果。

技术作家奚江华(《圣殿祭司的 ASP.NET 2.0 开发详解——使用 C#》一书的作者)在他的博客中列举了 Silverlight 的几个典型特性:

  1. 轻量级的浏览器 plug-in:Silverlight 的安装组件(Runtime Component)只有 1.1MB 大小,轻薄短小的特性,特别适合应用在 Internet 的安装部署。
  2. 原生的展现层 Runtime:Silverlight 本身是 render 为 XAML 基础,能够产生向量的文字、2D 绘图与影音的能力。
  3. 具备影音播放与互动能力:Silverlight 在设计之初,便被赋予一项任务,就是要能够轻易地应付影音档在 Internet 上的播放,例如 WMV、WMA 与 MP3 格式的媒体,只需一行 XAML 程序就可以搞定了。
  4. 程序开发层与现有技术的整合:Silverlight 在设计之初并不打算成为自创一格的孤岛,也就是一切都不以黑箱为目的,所以 Silverlight 本身公布了自身 WPF Object Model(即 WPF DOM),通过 JavaScript 可以存取 Silverlight 对象,并且可以与既有的 HTML、DOM、CSS 及 AJAX 技术进行整合与互动,成为一座来往便利的丰富岛屿(Rich island),让各种技术可以互相搭配运用。

希望深入了解和研究 Silverlight 是怎么一回事的开发人员,可以参考博客堂的微软技术专家开心就好撰写的 SilverLight 开发基础答疑系列

2007-04-18 22:101120

评论

发布
暂无评论
发现更多内容

盘点 2021|自己一个人扛起了公司的半边天

liuzhen007

技术人生 盘点2021 盘点 2021

Prometheus Exporter (三十四)JSON Exporter

耳东@Erdong

json Prometheus 28天写作 exporter 12月日更

040022-week8-design

InfoQ_70156470130f

[架构实战营] 模块八作业

危险游戏

架构实战营

尚硅谷喜获央广网2021年度公信力教育品牌

编程江湖

教育

成都成都-01

wood

成都 28天写作

移动办公时代,数智化平台如何赋能企业管理升级?

BeeWorks

「架构实战营」模块三《如何保证设计出合理的架构》作业

DaiChen

作业 模块三 「架构实战营」

“学生管理系统”架构文档

CH

#架构实战营

作业

AUV

「架构实战营」

模块三作业——学生管理系统详情设计

黄秀明

架构实战营

Kafka往事——Kafka的诞生

Kafka中文社区

第三模块学习总结

Anlumina

#架构实战营

Apache 海豚调度 PMC 郭炜:开源,不是天才的甜点,而是执着者的盛宴 I OpenTEKr 大话开源 Vol.7

OpenTEKr

大话开源

外包学生管理系统架构设计文档

李晓笛

「架构实战营」

谈谈MemoryCache原生插值方式

喵叔

28天写作 12月日更

瞰见 | 初创1个月就融到3亿美金,ClickHouse 你凭什么?

OpenTEKr

狄安瞰源

架构实战营第三模块作业

墨宝

做个总结

为自己带盐

28天写作 12月日更

Java 数据持久化系列之池化技术

程序员历小冰

MySQL 持久化 28天写作 池化技术 12月日更

外包学生管理系统详细设计文档

guodongq

「架构实战营」

C++对象的底层原理都在这儿了,还敢说学不会?

博文视点Broadview

FunTester2021年总结

FunTester

性能测试 测试框架 测试开发 年终总结 FunTester

元宇宙100讲-0x011

hackstoic

元宇宙

架构实战营模块四作业

Poplar

#架构实战营

模块三-学生管理系统详细架构设计

圈圈gor

架构实战 「架构实战营」

netty系列之:请netty再爱UDT一次

程序那些事

Netty 程序那些事 12月日更 UDT

如何设计贴合业务的高性能高可用中间件系统

天天向上

架构实战营

架构模块三作业

holdzhu

「架构实战营」

模块三作业

novoer

「架构实战营」

攻略 | 如何实现一个满足业务需求的流程设计器

全象云低代码

typescript 前端 低代码 流程

专家评微软“Flash”杀手——Silverlight_.NET_霍太稳@极客邦科技_InfoQ精选文章