Welcome

首页 / 软件开发 / Silverlight / silverlight在企业应用开发中的定位

silverlight在企业应用开发中的定位2011-09-23 博客园 haoxiaobo从silverlight 1开始,MS对这个技术的定位似乎更重视于互联网应用的娱乐性体验,但是,我认为 silverlight技术应该更多关注一下企业应用的解决方案。

把html应用于企业应用的原始动力是易于维护和部署,但是由于html的设计先天上就只是为了内容的 展示而非交互,因此在实现企业应用中常有的复杂逻辑、界面逻辑控制方面根本就是草率应付,虽然后来 加入了JS来扩展应用,但是基础html规范的简陋,使得即使我们只是想要实现一个限定类型的输入框,也 不得复制一堆堆繁琐而丑陋的代码。

另外一个问题是http协议的无状态性。功能提交后的新页面实际上与之前的页面之前没有任何关系, 即使你只是刚刚离开了0.1秒,服务器都不会记得你是谁,你之前有没有来过,你的上下文信息等。可以 说,WEB应用的开发,有一半努力都是在围绕如何解决这个问题而展开,session, cookies, viewstat, hiddeninput, url string ... 虽然通过这些或高明或不高明的手段,会话上下文信息可以得以一定程度 的延续,但是比起CS架构的程序中上下文的自然持续来,WEB程序为解决这种问题而付出的努力、进而造 成的资源浪费,真得是让人无法接受。

http协议的无状态性带来的另一个问题是很难实现WEB事务,而操作的一致性却正是企业应用中所最重 视的。用户可以随便地在页面之间中断,关闭,回退,前行,把界面控制逻辑搞得无所适从,一团乱麻, 真是企业应用的恶梦。

http的这种设计,是为了提高服务器的性能容量而,以及受限于协议开发时的技术能力,而做出的妥 协,html亦然。因此,web程序极合适于开发信息发布系统,而不宜于开发逻辑要求、界面控制要求较高 的企业应用。

silverlight来自于AcitiveXjave applet等这种嵌入式程序的思想,但是MS用新的.net技术和为这种 思想进行了重新再造,虽然是新瓶装旧酒,但是有可能新一举解决部署和功能两方面的问题,即有web程 序的易于部署和维护,又有客户端程序的易于开发,加上严格的UI行为控制,加强的安全性策略,以及更 先进的通信能力,silverlight会成为下一代企业应用的主流解决方案。

但是,silverlight似乎把解决企业应用问题放在了比较低的优先级上:1.0时,不支持强类型的.net 语言开发,到2.0时,.net语言功能的加入使得已经可以在企业应用场合中试着做一些尝试了。但是,很 多功能还只是简化版,无法完全满足要求,而企业应用中比较不重视的娱乐、多媒体等功能却得到了大力 的增强。

这与MS一向忽视企业用户的传统一脉相承,同一个原因让MS忽视过internet开发,忽视过数据库,忽视 过服务器产品,忽视过服务应用开发。也正是同一个原因,使.net这个优秀平台在进入很多大型企业应用 的核心地带时多遇阻碍。但是好在MS总是能及时醒悟,通过强大的技术能力收复失地。IE来了, SQLSERVER来了,.net来了,现在,silverlight也来了,但是,和MS的一贯作风一样,silverlight首先 解决面向个人客户的问题。

我对silverlight这个技术报以最热忱的希望,因为它把应用开发、逻辑控制、与部署维护等几个要素 调和在同一种技术中,提供了目前为止最好的解决方案,因此,silverlight的架构非常合适于企业应用 的开发。希望silverlight能在后续的发展中,能在解决富UI体验的同时,再为企业应用方案方面提供更 多支持。