写点什么

Silverlight 作为 Web 应用程序技术的角色引发争论

  • 2010-09-15
  • 本文字数:1800 字

    阅读完需:约 6 分钟

开发者平台产品管理部经理,Brad Becker 博文中表示微软对 Silverlight 在 HTML5 的前景持乐观态度。尽管有人不把 Silverlight 看做真正的 Web 应用程序工具,而把它当做服务于 Web 开发市场某一领域的技术。

Becker 认为当前 HTML 主要由 Flash 和 Silverlight 两大插件技术所主导:

HTML 正采取像 Flash 和 Silverlight 等插件技术作为标准。由于这些功能在 Web 上非常流行以至于用户已把这些功能视为基本需求,故这样做很有必要。因此 Web 的技术需求起点会比以往有所提高。

与此同时,他认为用户的期望值也越来越高,用户需要的不仅是静态页面,而是像 Silverlight 那样的动态技术:

在 Web 层面上,Silverlight 的初衷并非取代 HTML。而是要让程序员轻松地实现 HTML 和其他技术无法完成的功能。微软致力于使用 Silverlight 实现 HTML 无法完成的解决方案来扩展 Web 功能。从单纯的丰富 HTML 页面到浏览器中功能强大的类桌面应用程序,甚者 Silverlight 能给用户带来丰富的体验。

Becker 提到 Silverlight 提供了 HTML5 所缺乏的主要功能,这使得微软技术更适合视频和媒体应用程序:

  • 高清视频格式 H.264 和 VC-1
  • 包含 DRM 技术的内容保护
  • 3D 视频
  • 多播系统
  • 支持现场直播
  • (自适应)流媒体技术
  • 信息叠加即多画面技术
  • Silverlight 诊断框架支持

他还提到 Silverlight 比 HTML5 更完善的三个领域:

  • 性能——Silverlight 采用 CLR 使得性能更加完善,在 Bubblemark 的多项标准化测试中击败 Flash 和 Chrome V8
  • 一致性——内置于 Silverlight 的应用程序在任何平台上呈现出相同的内容
  • 速度——当 HTML5 仍在讨论阶段时,Silverlight 在速度上远超出市场的平均水平

最后,Becker 不忘把大家的目光转移到 Silverlight 不仅是浏览器插件,同时在桌面部署和移动设备上,让开发人员可进行跨平台开发。

针对 Becker 的博文,JetBrains 公司的技术专家 Hadi Hariri 则认为大部分 Silverlight 可完成的功能都可以用 HTML5 实现

Becker 博文中大部分提到的内容有点言过其实。我对视频技术不太熟悉,所以我对于流媒体技术不予置评,但是我在构建商业应用程序和终端客户应用程序等方面有较丰富的经验,我们使用 jQuery 和其他库也可以实现这些功能。微软技术的简洁性和易用性,如:C#,并没有实现当初的承诺,因为程序员大部分的时间用在学习正确的模式与实践以及 XAML 语言上。比起 CSS、HTML 和 jQuery 等技术,究竟这些技术让我们省心了多少?

Hariri 认为微软错误的把 Web 当做桌面看待:

微软进入 WebForms 的时候就犯了同样的错误。他们忽视了最重要的问题:Web != Desktop。他们利用已有的技术把我们带到 ViewState 和 Postback 的噩梦中去。

在所有的方法中我们经常忽略的是 Web 开发层出不穷,不仅在于我们使用的工具,同时还在于台式电脑和仪器设备和用户是一对一的,而 Web 则不是。

Becker 声明中的一点引起了其他博友的注意:

Silverlight 可让应用程序实现用户所需的丰富体验。我们把这些需求归结为三大范畴:优质的媒体体验、消费型应用程序和游戏以及商业型应用程序。

集架构师、作家和微软 MVP 于一身的 Simone Chiaretta 发现了一系列出色的 Silverlight 应用程序中存在的一个问题,即 Silverlight 并非定位于 Web 应用程序:

即使在微软的官方说明中,他们并非用 Silverlight 创建 Web 应用程序,而是用于解决 HTML/CSS/JS 中遇到的具体问题。

他还对 Becker 就 Silverlight 有而 HTML 不具备的功能持有不同意见:

如果你深入了解他们所列出的功能,并把它们与 HTML(此处 HTML 包括 HTML、JavaScript 和 CSS)进行比较,就会发现除了自适应流媒体传输和其它高级视频特性以外,所有功能都可以用 HTML 实现:HTML5 有硬件加速设备满足 Web 游戏的高性能需求,也有丰富的 JavaScript UI 控件库,比如:jQuery UI 帮助我们快速地创建丰富和具有桌面风格的 Web 应用程序,还有本地存储甚至本地数据库来存储浏览器中的本地信息,以及 Web 工作人员在高负荷的运算中维护应用程序的响应度,HTML5 还会给我们带来跟多。

Chiaretta 总结 Silverlight 适用的场合中建议微软应重新定位:

Silverlight 是一项用于创建富“Web 风格”的桌面应用程序技术,集成复杂的视频组件,可用相同技术为 Windows Phone 7 创建移动应用程序。

Silverlight 究竟在哪方面更擅长?是创建 Web 应用程序,还是像 Flash 过去那样满足特定需求而已呢?

查看英文原文: Silverlight’s Role as a Web Application Technology is Debated

2010-09-15 08:272684
用户头像

发布了 87 篇内容, 共 21.7 次阅读, 收获喜欢 1 次。

关注

评论

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

数说热点|社恐人群运动健身指南:不想去健身房,那就在家找面墙

MobTech袤博科技

eBPF动手实践系列二:构建基于纯C语言的eBPF项目

阿里云大数据AI技术

运维 C语言 ebpf 企业号 5 月 PK 榜

分库分表的 21 条法则,hold 住!

程序员小富

分库分表 springboot 分库表

从可逆计算看开源低代码平台Skyve的设计

canonical

开源 低代码 架构设计 低代码平台 扩展机制

如何用 ModelScope 实现 “AI 换脸” 视频

北桥苏

Python ModelScope

再见!Fastjson!

Java你猿哥

Java ssm Fastjson

支持GraalVM原生编译的开源低代码平台:Nop Platform

canonical

开源 低代码 GraalVM Quarkus 低代码平台

采用Excel作为设计器的开源中国式报表引擎:NopReport

canonical

开源 低代码 报表 BI 报表 中国式报表

Java常见集合类型及其异同点,简单使用

(-0 , +0)

Java 集合

简单聊聊MySQL索引优化的内容

(-0 , +0)

什么是策略模式?如何在Java项目中引入策略模式来优化代码结构

(-0 , +0)

springboot整合redis基础示例

(-0 , +0)

led大屏幕存在的问题

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家

Java中常见集合类核心源码阅读

(-0 , +0)

Java 源码 集合

SpringBoot整合MybatisPlus基础教程

(-0 , +0)

springboot Mybatis Plus

问鼎CodeXGLUE榜单,华为云UniXcoder-VESO-v1算法取得突破

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

《银河护卫队3》观后感:AI、人生

无人之路

AI 电影

javaweb脚手架springboot基础入门

(-0 , +0)

宝兰德应用服务器软件与华为云GaussDB完成兼容互认证

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

可逆计算:下一代软件构造理论

canonical

低代码 软件架构 函数式编程 领域驱动模型DDD 中台架构 低代码平台

如何将训练好的Python模型给JavaScript使用?

北桥苏

Python tensorflow AI

火山引擎DataLeap数据调度实例的 DAG 优化方案 (一):问题与需求分析

字节跳动数据平台

数据平台 DAG DataLeap

一把王者的时间,带你吃透Java面试八股文(2023最新整理)

Java你猿哥

Java 面试 微服务 Spring Boot mybatis

火山引擎DataTester:A/B实验平台数据集成技术分享

字节跳动数据平台

一图看懂CodeArts Deploy 5大特性,带你玩转部署服务

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

从张量积看低代码平台的设计

canonical

开源 低代码 架构设计 低代码平台 领域模型

关于Tensorflow!目标检测预训练模型的迁移学习

北桥苏

Python 深度学习 tensorflow 目标检测

分类树,我从2s优化到0.1s

Java你猿哥

Java 算法 ssm 分类树

关于 ModelScope 的视频 “AI 换脸” 优化方案

北桥苏

Python ModelScope

中移链合约常用开发介绍(四)工程树目录

BSN研习社

如何在不修改基础产品源码的情况下实现定制化开发

canonical

开源 低代码 定制化 迭代增量开发 可扩展性

Silverlight作为Web应用程序技术的角色引发争论_.NET_Abel Avram_InfoQ精选文章