为什么我们需要Silverlight 2

众人翘首期盼,Microsoft新一代的Web Application开发平台:Silverlight 2.0终于进入了RTWphase(Release To Web),也就是发布于网络上供大众下载的正式版。我知道,多数开发者及使用者,对这个技术多半抱持着观望的态度,毕竟Silverlight 1.0的经验,让许多开发者吃了不少苦头,不支持中文、使用JavaScript、不支持文字输入,诸多的限制让Silverlight 1.0停滞在只能用来做动画的阶段,更糟的是,Microsoft所推出的专属设计工具:Blend又一直处于稳定性、功能性不佳,制作Silverlight 1.0的应用程序对开发者及设计者来说,都不是件容易的事。常有朋友询问笔者,在Flash的广泛占有率之下,使用一个缺乏强大工具,类似于Flash的Silverlight,究竟有何好处呢?


为什么我们需要Silverlight 2
 
 
   众人翘首期盼,Microsoft新一代的Web Application开发平台:Silverlight 2.0终于进入了RTWphase(Release To Web),也就是发布于网络上供大众下载的正式版。
   我知道,多数开发者及使用者,对这个技术多半抱持着观望的态度,毕竟Silverlight 1.0的经验,让许多开发者吃了不少苦头,不支持中文、使用JavaScript、不支持文字输入,
诸多的限制让Silverlight 1.0停滞在只能用来做动画的阶段,更糟的是,Microsoft所推出的专属设计工具:Blend又一直处于稳定性、功能性不佳,制作Silverlight 1.0的应用程序对开发者及设计者来说,都不是件容易的事。
   常有朋友询问笔者,在Flash的广泛占有率之下,使用一个缺乏强大工具,类似于Flash的Silverlight,究竟有何好处呢?
我的回答多半是:Flash起于图像概念而发展,Silverlight则起于程序概念而发展,对程序员来说,Silverlight会比Flash来的容易上手,未来一旦Silverlight填补了图像工具及增加中文输入、网络能力,那么其将成为新一代的RIA Web Application开发标准
(请注意,此处指的Web Application并不是指所有现行的网站,后文会对此做更精确的切割)。
 
   这段话至今仍然适用,Silverlight 2.0除了如愿的增加中文输入、加强网络能力之外,更添加了.NET Language的支持,放入了一个精巧的CLR(在Silverlight中,这称为SLR),对开发者而言,我认为Silverlight 2.0必然是撰写新一代RIA Web Application的不二之选,唯一遗憾的是,Blend这个设计工具仍然不完善。

   OK,那么我们为何需要Silverlight 2.0呢?Flash的成功,在于将图像、影像等功能带入Web应用,许多耳熟能详的网站:YouTube、春水堂(阿贵)都运用Flash强大的能力,将自身由一个小网站推成一个举止投足都会影响网络世代走向的企业。Flash是这些企业成功的关键之一,那Silverlight呢?
 
   是的,我想没有人可以否认,Flash所创造的王国,不是Silverligh所能轻易憾动的,如果把图像跟影像做为采用Silverlight的主要理由,那么你不是一个MS爱好者,就是一个勇于跟市场做对的天才(或是傻蛋,结果论,成则天才、败则蠢材)!!

   对我而言,我会采用Silverlight 2.0的原因只有一个,Flash主导了图像与影像的市场,但却一直无法进入商用软件应用的市场,这是网络世代中,众多网络公司所企图打入的市场,Google Application、Google Office,都是尝试但尚未成功的例子。而Silverlight 2.0正巧提供了符合进入此市场的条件,这个市场有多大?请回想多年前,网络泡沫化前,有多少客户想使用IE等浏览器当做平台,使用商务程序,如会计、进销存、人事薪资?那这些客户放弃当初已经完成的类似产品的原因又是什么?

   我最常收到的客户抱怨是,Web Application用起来很不方便,原本按几个键就能做完的事,就是得经过鼠标跟一堆跳出窗口才能完成,工作效率因此降低了不少,这使得当初的Web Application成了一个小巧、可有可无的前端,让出门在外的业务及员工,在没有完整软件安装于NB中的情况下,有一个可以与公司软件交互的管道。

HTML是为了呈现"文档"而发展出来的一种样版语言,再怎么努力,她做出来的成品,要跟Windows GUI专用的C++、Delphi等语言来对比,根本就是一个不平等的比较。

   那有了Silverlight 2.0,这些问题就都解决了吗?让我们来想一想,Silverlight的UI架构是什么?其实她是一个WPF的子集,而WPF则是Microsoft期待用来取代原本Windows GUI所开发出来的一种架构,但是WPF有着先天的缺陷,一、她必须在客户端安装.NET Framework 3.0,二、她的绘图能力虽远超过传统的Windows Form,但是复杂度也相对偏高,用WPF来撰写RIA Web Application,那是一个具有争议的决策,WPF是一个Client Application Architecture!

   那以WPF子集做为UI标准的Silverlight呢?Silverlight 2.0不需要.NET Framework 3.0,她内建的SLR约4.6MB,完全提供了.NET Language所需要的功能,
其虽继承了WPF复杂度偏高的缺点,但可于浏览器上直接执行的优点,可以完全Cover掉这个缺陷。

   重点是,那Silverlight 2.0能做什么是Flash做不到,或是AIR做不到的呢?我的回答很简单,用Silverlight 2.0可以做出一套于IE上执行的进销存、会计、人事薪资,而且UI界面的方便性可与Windows Forms比拟,而且对.NET(或MS派、Borland派)程序员而言,操控Silverlight比起操控AIR来得轻松。而且最近的Silverlight Toolkit推出,证明了Silverlight在组件/控件上的架构,足以让许多3rd Party厂商生产出很多简单易用的控件。

   虽然,MS绝不会在图像、影像上自贬身价的承认不如Flash,但现实是,如果不是因为客户指定开发环境,我想大多数的设计者都不会选择Silverlight,一则因为既有人员的能力,二则因为Flash已发展许久,样版及范例都很丰富,Silverlight要达到这个境界,还需要很多时间。

  自然,AIR也不会在程序面承认不如Silverlight,但是!事实是,如果将重点放在RIA Web Application,那么AIR要与Silverlight平起平坐,得先解决自身缺乏Windows GUI架构经验的难题,毕竟这是MS多年的经验累积。

   开发平台市场上,从来未出现独霸的现象,在Borland DELPHI强势而MS弱势的世代中,MS也没有败的很难看,反而在MS启动.NET计划后,DELPHI就此处于挨打地位。但如果你以为DELPHI已经完蛋,那么就大错特错了,开发工具是用来生产产品,不会因为市场的趋势而一夕改朝换代,至今使用DELPHI的人及公司仍然不在少数,会受影响的是长远之计,在一个弱势的语言上,愿意投资的开发者会越来越少,最终公司必定会走向世代交迭的路口,此时,这个路口上会不会再有DELPHI存在,那是一个很大的问题。

   所以,Silverlight与Flash、AIR,基本上是个占有率的问题,不存在于谁取代谁的问题,除非!RIA Web Application的需求大量增加,压缩到未来使用Flash做为图像、影像王者的地位,那么就会因为世代交迭的因素,让Silverlight干掉Flash、AIR,不过!我想没人会认为,这件事会在5~10年内发生,除非Adobe自己不玩了。
 
  

  

原文:大专栏  为什么我们需要Silverlight 2


猜你喜欢

转载自www.cnblogs.com/chinatrump/p/11496837.html