Silverlight有未来吗?[关闭]


24

最近,我阅读了一些有关WPF和Silverlight的发展和历史的文章/博客/评论。在某些论坛中,许多开发人员和用户都批评WPF应用程序的性能(例如Visual Studio 2010)。实际上,与Flash相比,Silverlight的市场份额不是很高。在2010年PDC大会上,鲍勃·穆格里亚(Bob Muglia)表示“我们的Silverlight战略和重点已经转移了……”,微软希望在未来推出HTML5。

此外,微软宣布HTML5是Windows 8和Windows Phone 8(“芒果”)平台的核心部分。

最近,我开始学习Silverlight,现在我必须自问,我是否应该继续花时间学习这些非常好用的强大技术!他们有未来吗?(Windows)桌面(客户端)应用程序有未来吗?所谓的“丰富的Internet应用程序”是否有未来?还是HTML5会成为软件开发中的“绝对真理”?

您对此有何看法?


1
我认为VS 2010的运行速度比VS 2008快。到目前为止,我的感觉是,如果遵循MVVM,WPF和Silverlight之类的合理模式,其性能将比传统Winforms或Webforms好。YMMV,但在可促进更简洁模式(更少耦合等)的平台上工作,则可以带来总体上更好的应用程序,包括性能。性能通常与所使用的技术无关,而与所使用的图案或反图案密切相关。
Morgan Herlocker 2011年

“未来”是指“值得在其中做新的解决方案”吗?

所有软件都会不断变化。几乎所有人都会有未来。像人一样,有些人寿命更长,有时没有明显的原因。问题是对您意味着什么?
NoChance 2012年

我认为我们需要一些证据证明VS2010由于WPF而运行缓慢。WPF的小的应用程式数量我工作过的人的方式更加敏感和流体比是有史以来与WinForms的实现。速度下降不是由于WPF造成的!...有很多方法可以破坏应用程序的响应能力。
罗曼·斯塔科夫

Answers:


17

Silverlight + Flash与HTML5。好家伙。关于这个问题有很多讨论。

让我们关注Silverlight(尽管可以为Flash设置许多相同的参数)。在微软眼中死了吗?没有。只需观看最近的Firestart活动,特别是Scott Guthrie的主题演讲(即将推出许多新功能):http :
//www.silverlight.net/news/events/firestarter/

它给你带来什么:

  • 如今,您可以使用自己喜欢的dotNET语言编写Internet应用程序(如果使用浏览器,则为台式机)。
  • 如今,以一致的方式为您的用户提供跨所有主要浏览器和平台的高度交互和丰富的界面。
  • 在客户端上访问高级API(这是一个相当弱的论点,因为JavaScript总是会添加新的库,而且非常棒)。
  • Windows 7 Phone的可编程性-Silverlight是WP7的两个主要“本机API”之一。至少这是一台您可以原生构建应用程序的设备。

不足之处:

  • 移动-Silverlight将永远不会启用大量的移动设备。不会发生。
  • 微软-让我们面对现实吧。许多人会因为它是微软而拒绝使用它。您的某些用户将拒绝安装运行时,因为它是Microsoft。这是愚蠢的,是的,但这是事实。
  • 哦,还有其他。我真的需要遍历所有缺点吗?

HTML5将解决我们可以想到的Silverlight的许多缺点(如果不是全部)。但是HTML5的缺点是什么:

  • 这不是最终规格。是的,许多浏览器实现了HTML5的许多功能,但许多浏览器却没有,或者许多以不同的方式实现。即使他们确实在今天实施了该协议,也无法保证该规范在未来几个月/几年内不会改变。
  • 今天还没有100%准备好。再次,有一天关于HTML5将会带来什么的讨论很多。但是对于很多东西来说,仅此而已。谈论。尽管已经完成了一些CORE任务(动画,图形等),但仍有许多工作悬而未决,并且在每个实现上都尚未标准化(例如,对加速度计之类的设备进行硬件API访问)。您可以从今天开始使用其中的一些代码,但是您将被锁定在某些浏览器中,并且也不能保证在规范即将定稿时不必更改代码。
  • 浏览器的一致性-如果您认为所有浏览器/设备上的HTML5都将完全相同,那么您就错了。每种浏览器的实现方式略有不同,您将需要使用代码来检测浏览器并插入适当的“解释器”。我敢肯定,检测浏览器会更容易,而且我相信库会有所帮助(就像今天的JQuery一样),但这仍然是一个问题。
  • 应用程序商店-事实是,没有人会像今天使用Apple应用程序那样购买您的HTML5应用程序。如果您希望用户通过App Store购买应用程序,则需要写入设备的本机库。再次,围绕此问题进行了大量辩论,但事实是,所有现代移动设备都提供浏览器访问功能,而基于浏览器的应用程序却没有本机应用程序的吸引力。今天使用HTML / CSS构建的应用程序没有本机同类应用程序具有的吸引力。

以我的看法,Silverlight为您提供了“丰富的客户”功能。您无法访问所有设备(尤其是移动设备),但是对于某些类的应用程序来说,这是一个不错的选择,并且仍然会如此。HTML5很快就会成为一个有力的竞争者,我强烈建议大家学习它。您将需要它。


3
我认为,如果某个人仍处于职业生涯的教育阶段,Silverlight和Flash将在未来的re:Web / Rich Internet应用程序中扮演更小的角色。
ocodo 2010年

1
抱歉。但是我只是不同意(但是,整个答案当然是基于观点。确实没有任何方法可以了解未来)。掌握一种新语言应该花上几个月的时间(而不是在这里谈论精通),而且很多人都在押注Silverlight和HTML5在未来几年将成为主要角色。如果您是Microsoft开发人员,并且正在使用丰富的Internet应用程序,则Silverlight需要成为您的工具,尽管绝对不是您唯一的工具。
Zippit 2010年

“跨所有主要平台” = Windows Vista和Windows 7大概?
Martin Beckett

2
@Martin-Silverlight也将在Mac上运行。Moonlight还允许某些Silverlight应用程序也移植到Linux。
Morgan Herlocker 2011年

1
-1表示浏览器的一致性。浏览器在实施HTML5时存在错误。所有流行的浏览器栏IE都倾向于快速修复这些问题。HTML5将保持一致。至于应用商店,则有PhoneGap。我知道答案已有6个月的历史了,但它可以使用一些现代化的方法与时俱进。
雷诺斯2011年

22

我认为许多人看着微软,他们看到了一个庞大的实体。不过,事实并非如此。微软更像是几十个小团队,实际上只有名字“ Microsoft”将它们联系在一起。因此,尽管IE团队专注于HTML 5并竭尽全力,但您可以肯定WPF / Sliverlight团队在WPF和Silverlight上的工作同样艰辛。


2
别太刻薄...但是我敢肯定,有一支非常努力的团队在Kin上工作,认真。噪音越来越大,越来越难以忽视...退房riagenic.com-我被打倒了。
Martinez

5
@Martinez:我强烈建议斯科特·巴恩斯(Scott Barnes)说些什么,并撒些盐。我一直在关注Barnes先生的语言性腹泻,直到最近,当我从阅读器中删除他的博客并取消关注他的Twitter帐户时。他的讯息中充满了尖酸刻薄的气氛。我认为他是一个典型的酸葡萄案例(前Microsoft程序经理逐渐退出市场,至少部分原因是因为他的态度很明显。)
Dave

是的,有一个非常努力的团队从事Kin的工作,但由于WP7总统希望他的玩具接管,内部政治将其杀死了。
gbjbaanb

Novell对月光也有相当大的兴趣。不要只是看浏览器的支持。
Tim Post

工程师在几十个小团队的工作,但这并不意味着同样是营销的不一定是真的
finnw

11

用于网络的Silverlight从未真正起飞过-但是,Microsoft一直在大力推动Windows Phone 7,该应用程序将WPF / Silverlight用于应用程序,因此Silverlight本身并没有被淘汰,它只是其部署位置的重点。变化。


+1,它死在了网络上,但是这项技术在其他地方还是很有道理的。
Wyatt Barnett

9

也许“杀人”是一个很强的词。我认为-并且据广泛报道(Mary-Jo Foley等),微软正在重点从Silverlight 转移到HTML5。我认为Silverlight将继续成为超丰富Web体验的首选平台,也许大量视频内容(例如,他们在NBC在线报道2010年冬季奥运会时所做的事情)。我还认为,我们将在企业“空间”中看到Silverlight的增加-我可以肯定会看到Silverlight,而不是在WPF或WinForms中交付“胖”客户端。浏览器外运行,在企业软件开发中找到家。

从战略角度看,我看了对微软为何突然如此热衷于HTML 5,一开始一个伟大的起飞,它给了他们一个“中”到iOS的市场。其次,它将游戏转移到相对于苹果而言它们具有巨大优势的区域-云。任何使用过Apple MobileMe服务的人都可以证明一个事实,即尽管Apple做得很好,但目前Cloud并不是其中之一。


我同意,“杀戮”也许有点强大。但是,作为一名新程序员,我坚信要投入大量时间和/或精力来学习Silverlight。如果Silverlight是WP7的事实上的标准,而HTML5被推向了网络,而MS则说云是未来 ……您将集中精力学习什么,HTML5 / JS,Silverlight或类似Python的东西?
Martinez

1
我认为,作为“ Web”技术,您可能会争辩说HTML,JavaScript和CSS是您应该继续关注的技能。这是一套技术,可让您访问几乎所有平台(包括,尤其是移动平台)。就是说,尽管您可能会在Web应用程序中看到越来越少的Silverlight,但我认为它不会很快消失。另外,请记住,如果您是新程序员,这将不是您将经历的技术的第一个或最后一个转变。跟什么让你兴奋!
HY

我们在Silverlight中发现的“企业”应用程序存在的问题是,它比WPF的限制要严格得多,而回报却很少(无论如何我们还是需要)。也许可以输入数据,但不会让您制作出可以放在sr前面的真正漂亮的应用程序。董事或副总裁。
TMN

8

我认为,Silverlight现在(从市场份额的角度来看)现在是相当多的游戏,因为Flash和Silverlight在接下来的几年中都将让位给HTML5。

另一方面,WPF可能会持续存在(即使对性能的担忧仍然存在)Windows Vista / Windows 7都在WPF上投入了大量资金,并且在未来几年(至少),它很可能成为Microsoft的桌面策略,特别是考虑到VS和Expression是使用WPF编写的。

但是,这当然是桌面策略,并且越来越明显的是,随着HTML5浏览器支持的普及,人们日常使用的大多数应用程序将从桌面迁移到Web(如果尚未使用)。对于需要Windows桌面和.Net的应用程序,WPF仍然是(最好的)应用程序的最佳选择,但是相对于将成为主流的基于Web的应用程序而言,WPF可能是一个小众市场。

除HTML5之外,移动平台(阅读:Android和iOS)可能是未来几年发展的增长领域。


2
显然,几周前您才没有看到Silverlight Firestarter。微软宣布了明年的新版本的Silverlight。Silverlight中仍在进行大量开发。可以在这里看到所有视频:silverlight.net/news/events/firestarter 查阅Scott Guthrie的主题演讲,了解Silverlight 5的新功能
Zippit 2010年

2
我显然没有!(我已经编辑了答案,以消除这种差距。)在HTML5普遍存在的问题尚未解决之前,Silverlight肯定有使用空间,但是从开发人员的角度来看这是一场失败的游戏,您可以在今天出售Silverlight开发的产品,这是给定的,但是几年后,您的市场将枯竭。
ocodo 2010年

抱歉。并不是说听起来像“攻击”。只是想澄清一下,微软并未放弃Silverlight。
Zippit 2010年

没有伤害,没有犯规,我从这里完全说了出来。我们都很好;)
ocodo 2010年

2
随着这么多平台上本机应用程序的激增,令我感到惊讶的是,人们仍然为台式机/本机开发的消亡而哭泣。Web服务+本机或Web客户端=更好的UX,并遍及IMO。
史蒂文·埃弗斯

5

这并不奇怪。向所有选择它的开发人员致以诚挚的歉意,Silverlight从一开始就是一个真正的笑话。没有人在他们的网站上使用它。目标市场已被Flash所饱和,微软三年半的时间里一直在推销其替代产品并没有得到广泛采用,而且现在HTML 5出现在所有主要的浏览器上,该市场确实不会承受三大竞争。 ,互不兼容的解决方案。

现在,Microsoft表示他们将把重点放在Windows Phone 7编程的标准上。这是棺材中的最后一个钉子,因为从种种迹象看,WP7看起来都是巨大的失败者。


1
我还不准备简单地将WP7视为失败。我希望它做得好(FD:我有并爱Droid)。市场需要更多的竞争,imo。如果 WP7失败了,我不明白为什么Silverlight会活着。我想许多人的整个职业生涯都取决于11月8日开始发生的事情。
马丁内斯

2
我从未真正将Silverlight视为基于浏览器的技术。我认为没有多少人了解Microsoft技术。它们以业务为中心,并且大多对消费者友好。苹果公司以消费者为中心,很少考虑业务,而谷歌则极客友好,对消费者也很友好。考虑到这一点,Silverlight才有意义。
ElGringoGrande

4

听起来微软内部已经发生了战略性转变,这时Adobe Flex / Flash将继续成为可用于RIA应用程序的领先技术。看来HTML5将被广泛采用,我个人将切换到尝试使用它。


4

我想说的是,HTML5一直有效,只要您想生产针对尽可能多的客户的应用程序即可。

您的应用程序是否需要互联网访问?它应该使用计算机的本机功能吗?(文件,监控等)。是否需要信息共享?所有这些问题以及所有其他问题都可以指导您是否可以或应该将应用程序生成为Rich Web App,或者是否应将其开发为基于客户端的应用程序。

将来,尤其是在短期内,肯定有WPF应用程序的地方。Silverlight似乎是沙盒开发(例如电话)的目标,但我们将看看火车的发展情况。但是,在任何开发的开始阶段,您都应该查看应用程序的需求,要实现的目标并相应地选择技术。

现在,我想指出的是,没有理由不学习Silverlight或WPF,即使这不是6或7年内的主要参与者。如果我可以肯定地说一件事,那就是技术在变化。将有一个HTML6,将有一个下一个WPF,如果您确实希望了解第一个技术,则必须学习不止一种技术。

只需开始学习其中的一种,您就可以随时切换并将学到的知识带到下一项技术中。


4

我写了一篇有关此主题的博客文章,因为自从我们使用Silverlight以来,它一直在我的团队中浮出水面。简短的答案是:Silverlight尚未死。HTML 5将是接触更多设备和平台的更好选择。但是Silverlight具有更多的功能,并且与使用ASP.NET MVC的HTML 5应用程序相比,当前开发Silverlight应用程序要容易得多。与Microsoft几乎完全缺乏HTML 5的工具相比,Silverlight的工具非常出色。因此,这取决于您的环境和目标受众,哪种才是更好的选择。

有关更多详细信息,这是我的博客文章:http :
//rationalgeek.com/blog/post/Silverlight-vs-HTML-5.aspx

同样,汉塞尔曼(Hanselman)最近在同一主题上发表了文章:http : //www.hanselman.com/blog/ShouldIUseHTML5OrSilverlightOneMansOpinion.aspx


同意!这是斯科特·古思里(Scott Guthrie)发表
holtavolt

4

这是ReadWriteEnterprise的有关趋势技术技能的文章,截至2011年5月:

http://www.readwriteweb.com/enterprise/2011/05/it-hiring-and-salaries-up---wh.php

Silverlight超过Flash。在过去的三个月中,Silverlight的职位增长了12.6%,而Flash的职位仅增长了2.2%。Silverlight的职位总数也超过Flash,Silverlight的职位列表为982,Flash的职位列表为646。

Microsoft专业人士的表现不错,C#,Silverlight和Azure的增长强劲。


3

这只是一个猜测,但是随着智能手机和平板电脑(尤其是苹果的智能手机和平板电脑)的兴起,作为网络技术的 Silverlight 似乎不再有意义。


3

Silverlight可能最能形容为Microsoft对Flash的回答。这是一个相同的问题域,因此制作一款出色的Flash游戏也将成为一款出色的Silverlight游戏。

没有人真正知道未来。我目前所知道的是,并非所有东西都能构成一个好的Web应用程序,也不是每个东西都能构成一个好的桌面应用程序。我非常了解:

  • WPF可能会停留一段时间。
  • Silverlight尚处于起步阶段,因此微软将对其进行一段时间的处理。我听说有传言说与Flash一起使用会比Flash更好,但是我从来没有搞过两者。
  • HTML 5 / CSS 3 / JavaScript应该是屈指可数的,但是在这十年中的任何时候都不会以一种真正有意义的方式准备好。(假设委员会在2020年之前批准它,它仍然需要完全的浏览器支持,这需要时间)。

选择要追求的平台,您需要获得一些基本的答案:

  • 谁是您的客户?(即您的目标市场是什么?)
  • 您打算赚钱吗?怎么样?
  • 在升级和/或替换该应用之前,您希望该应用生效的时间是多少?

如果您要花两年以上的时间才能发布您的前两个版本,那么您的路途可能太远了。了解您的目标市场将帮助您了解某个平台是否可行。例如,许多移动设备在其小型浏览器中均不支持任何插件-这意味着不仅不包含Silverlight,也不包含Flash。但是,如果您不以移动设备为目标,那么这对您来说并不重要。


目前看来,HTML5中的几乎所有内容都将在委员会通过之前很久就被浏览器支持。这并不是说这未必是一件好事..
恢复莫妮卡

2

我认为这只是现阶段的猜测。有了Windows 8中内置的App Store计划,可能的应用程序技术将是Silverlight(鉴于如何将其存储在OOB中,等等)。SL可能会存在很多年。

关于HTML5的另一件事要考虑的是,提到的转变可能与当前的拙劣非标准IE编程背道而驰,而不是SL。


OOB = ??? 我的猜测:橙色的孤儿狒狒
马特·艾伦

@Matt Ellen:oob =浏览器外。
Todd Main

1

那微软该怎么办?
在这种情况下,他们必须支持HTML5 + js作为最常用的浏览器的制造商。

但是您仍然可以使用Silverlight。毫无疑问,这个精心设计的框架将会发布并提供支持。



1

这就是为什么我们仍然使用Delphi进行良好的老式WinAPI编程。与将时间浪费在所谓的“新技术”上相比,花更多的时间来完成任务是更好的选择。.NET中的所有“新”功能早在Borland Delphi中就已存在。就我个人而言,我认为技术应该至少存在十年左右,然后人们才能尝试并依赖它。


4
嗯 但是,如果没有人使用技术而死,那么就不会有新技术。十年的技术是无穷的。10年前,Windows 2000(台式机上的NT)发布了-这意味着我们应该开始使用Windows 2000和HTML 4.01。尽管在生产环境中采用之前需要等待一段时间,但是10年似乎有点太长,除非您编写核或卫星控制系统-但是1.我希望它们不是使用WinAPI编写的。2。他们仍然可以从新的自动化测试中受益除较旧的技术外,还适用)。
Maciej Piechotka

1

我非常确定,微软不会杀死Silverlight来支持HTML5,至少不是简单地说:P。在与Paul Cotton的最近一次活动中,我们讨论了这一点,我们都同意HTML5的主要区别在于:VS.Net + Blend这些工具目前是出色且无与伦比的工具,这是一个很大的优势,并且有很多优势的程序员将继续在Silverlight和许多其他.Net技术上进行开发。

无论如何,当Vista小工具出现并且以HTML格式完成时,没有人认为Silverlight已经死了,我们找到了将Silverlight放入其中的方法...因此,我认为我们将能够将Silverlight放入新的很棒的Windows 8界面。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.