BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

吴磊畅谈Silverlight在中国人寿的应用

| 作者 朱永光 关注 0 他的粉丝 发布于 2010年10月28日. 估计阅读时间: 13 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

InfoQ:大家好,这里是全球企业软件开发大会QCOM北京2010的现场,我们有幸邀请到了中国人寿的技术主管吴磊,给我们做一个采访,你能向大家做个自我介绍吗?

吴磊(以下简称吴):我叫吴磊,从03年开始进行软件开发,在中国人寿工作已有七年,主要从事核心业务系统和管理系统的开发,就包括这次我们用Silverlight进行开发的养老金咨询平台,代号就叫PACS。

InfoQ:那么对于这个PACS平台,在使用Silverlight开发过程中,你觉得最大的收获是什么?

:最大的收获,我认为是整个开发模式的变化,因为原来对于这种传统的核心业务系统或者其他类似管理系统的开发,我们更多是使用一种面向功能的开发过程。但现在我们基于RIA思路去开发的话,就是基于一种以用户体验为中心的开发过程。那么在整个需求分析的过程中, 我们的需求分析人员从原来更多依托于UML或需求规格说明书去分析问题,变成了基于原形基于用户体验的分析过程了,这就是我们最大的一个收获。第二个收获是,我们据此了解了眼下所有主流的RIA技术,知道了目前在RIA这个应用领域里面,有多少的技术可以被企业所用到,而且也沉淀出了基于Silverlight的开发框架。

InfoQ:那么在开发这个系统过程中,遇到的最大挑战是什么?以及如何应对这些挑战呢?

:在整个PACS的开发过程中,我们遇到的最大挑战,实际上是Silverlight技术本身。因为它比较新,在整个开发过程中,需要有一段的时间去学习,并培训我们团队的成员。这个过程我们花费了大量时间,也得到了微软公司的支持,他们给我们进行了两到三次的现场培训。之后,我们也去参观和学习了一些专门的视觉团队。在这些视觉团队中,他们具有很丰富的用户体验设计能力。从而,我们团队也学习了一些用户体验方面的经验。就这样,我们克服了开发遇到的一个很大难点。

InfoQ:对于这个业务系统,你感觉在当前的版本当中,技术层面还存在那些方面不足,打算如何来解决这些问题呢?

:PACS目前存在的最大一个问题,还是我们用户习惯上的问题。因为我们原来的一些互联网客户,主要使用到或接触到的都是一些基于HTML的页面。而对于PACS,首先就需要他下载安装一个插件并等待启动的过程,对此需要一个接受的过程。普通的用户可能很快就能适应,但对于企业中年龄比较大的用户就是个问题,他们对于互联网不是很了解,对于RIA应用就更不了解了。在这种情况下,他们需要要去接受一种新的事物是比较难的。我们认为在这个困难面前,需要努力加强的就是,怎么让整个体验过程更加简单。,我们内部也是提出了一种方法,就是让我们这个系统变成更加傻瓜的系统。操作上就像使用傻瓜相机一样简单,而功能上就像单反相机一样专业。这就是我们考虑的主要内容,也是现在Silverlight存在的一些问题。

InfoQ:你的意思目前存在的主要还是用户体验方面的问题,那么技术层面有没有不足?

:技术层面实际上也有一些局限,包括Silverlight应用程序下载包(XAP)的大小问题。因为我们在做企业应用开发的时候,可能面临的功能点非常多,这样的应用会非常庞大,随着这个应用的加大,功能的增多,如果只是在单一的XAP包里面进行部署,这个XAP包会越变越大。目前我们的XAP包已经有接近1.3M的大小了。如果我们后面再往上追加功能的话,XAP包的大小会越来越大。目前,我们也在通过很多渠道,包括跟微软美国总部Silverlight产品组进行直接的交流,看能不能直接找到一些让XAP包分包下载,按需下载的方式【编者注:吴磊使用的Silverlight 3开发,在Silverlight 4中已经可以实现简单的按需下载功能】,这样来克服里面的困难。

InfoQ:就是说在目前你们是基于Silverlight 3来进行开发的,那么有打算升级到Silverlight 4吗?如果有的话,你觉得会遇到什么样的困难,以及需要特别注意什么东西?

:实际上我们一直在关注Silverlight 4的技术趋势,包括Silverlight 4最早于去年发布的第一个BETA版本的时候,我们就已经在试用了。我们团队里面有专门的人去研究Silverlight 4的一些特性。而且我们现在已经有一个详细的计划,就是什么时候去升级到这个新版本,因为现在大家都知道Silverlight 4才刚刚发布RTM版本,未来可能会有一个专门针对中文的语言包。那么我们要等到这个中文语言包的Silverlight出来以后,我们就会进行一个系统的预迁移。那么在这个预迁移过程中,可能我们会首先去解决一些命名空间上的问题。因为当时我们在做Silverlight 2到Silverlight 3的升级过程中,我们就遇到了一些命名空间上的命名不一样的问题。所以这一块需要我们有一个详细的计划。

InfoQ:那在下一步系统升级过程中,你们迫切需要解决的问题是什么?刚才你提到的这些问题?

:刚才提到最关键的是客户端这个XAP包的大小问题,这个问题实际上我们现在已经有了一些思路。包括像使用.NET里面最新的MEF框架的插件式功能。这种功能是可以随机去按需去索取这个XAP的,我们可以把它分开打包,然后通过MEF的插件式方式,把它加载到我们对应的页面上去。但这里面也有一些问题,比如说不同的XAP包之间,它的资源(包括图片与样式)是不能共享的,所以我们现在也在考虑,通过TCP后台推送的方式直接把公共的资源文件打包下载到客户端独立存储中,下载下来以后,在客户端进行解析,实现XAP包之间的资源共享。

InfoQ:最迫切需要解决的还是性能问题?

:还是一个用户下载过程中的体验问题。对于性能方面的问题,我们刚才一直没有谈到。在性能方面,实际上我们因为在客户端这边运用了一个多线程分配的技术,就是我们所有任务是通过这种并行的线程去分派的,所以目前从性能上来说,还没有很大的缺陷,还是比较稳定的。特别是在一些大数据量的客户端操作的时候,目前来看还是比较满意。

InfoQ:我们知道Silverlight 4刚刚发布了正式版,你觉得Silverlight 4最大的进步是什么方面?你会在新的系统应用它什么特性?

:实际上,对于Silverlight大家可以看到,从1.0、1.1到目前的4.0,它整个走的过程是非常的快,如果和我们用到的其他一些同类RIA技术相比的话,这种升级速度是非常快的。这样既有好处,也有坏处。好处就是它可以持续的改进,坏处就是我们需要不断的去学习,去掌握新版本的一些新特性。但是我们在Silverlight 4里面,看到了企业应用的一些特性。之前我们跟微软的一些产品组也进行了深入的沟通,希望加入一些包括调用COM组件的新特性。当时我们提出了需要在Silverlight里面去调用我们的一些针对Office的COM组件。在Silverlight 4,当然微软做的比较更进一步,直接让所有的COM都可以在Silverlight里面去调用了,这个是一方面。第二个方面,Silverlight 4内置了WCF RIA Services,对企业级应用的业务数据处理支持力度更大。在Silverlight 3里面,企业开发者需要手写代码去调用后端数据服务,但是在Silverlight 4里,它的整个开发环境可以不写任何代码,就能够实现商业化应用程序里面数据的转换和处理,可以说是Silverlight 的WCF RIA Services是面向商业应用中非常大的一个进步,我们也是关注这方面的一个动态。

InfoQ:你刚才提到的,Silverlight对脱离浏览器运行的这种支持越来越好,认为Silverlight 4有可能会成为开发简单桌面程序的一种技术选择吗?或者说,就是Silverlight会成为未来桌面平台上一种统一的轻量级UI Toolkit吗?

:这个问题我觉得提得非常好,因为Silverlight本身,它的平台技术,是脱胎于整个WPF框架的,WPF刚好是在整个CS架构里面微软主要推崇的技术。为什么Silverlight要有脱离浏览器的方式呢?为什么不直接使用WPF呢?主要的一个原因是浏览器就是我们客户端的主要环境,而Silverlight不会对这个环境有任何的依赖性,因为它不会依赖于客户端是否安装了.NET Framework。他自己有一整套.NET CoreCLR运行环境,所以能让我们所有的应用可以很正常地在客户端可以得到安装运行。那么在脱离了浏览器以后,就可以使的我们原来的一个BS架构的应用变成一个CS架构的应用,当然也可以使我们原有的CS架构的应用更加高效,更加适用于在客户端运行。在这个方面,我也了解到国外的一些厂商已经开始在这方面做一些产品了,包括像英国某个航空公司,可以在客户端上安装一个售票系统;包括我们国内的新浪财经,他可以在客户端上安装他的某种金融软件,而这个软件是不需要任何.NET Framework去支持它的。我们这边也有这方面的打算,包括以后考虑在客户端上做一些数据处理方面的一些轻量级的应用,包括客户的一些员工数据的处理、检查,都可以通过我们脱机浏览的方式在他本机运行,这就是我们对于OOB的一些认识。

InfoQ:那对于下一个版本的英文,你最期待是什么新特性呢?

:下一个版本的Silverlight,实际上我们看到它在版本3到版本4的演进过程中,已经加入非常多的特性。对于下一个版本,我很难想象Silverlight会是一个什么样子,或者说他功能到底有哪些。但是我认为他应该更加去注重在企业级应用这块的功能加强。特别是,可以考虑把WCF RIA Services这个功能嵌入到Silverlight里面,以便可以通过这种通用架构更加快速地开发商业应用。对于其他方面,我还没有想的更清楚。

InfoQ:最后一个问题,你认为现有的,或者你用过的一些RIA技术,他们各自的特点,以及自己的一些体会呢?

:实际上我刚才在介绍的时候,已经提到了我在以前、开发过一些使用Flash、Flex的一些技术的系统。包括当时在Flex 1.0的时候,我使用Flex开发过一个公司的资产管理平台。当时对于Flex这个技术,还是Macromedia公司在进行开发的。Flex我认为他更多是一种设计的思路,用的编程语言也还是基于解释型的脚本方式去执行。所以说当时在开发第一个资产管理系统的时候,就遇到很多性能上的问题。但是后面,我看到Flex已经不断推出新版本,功能和性能都有所加强了。我认为这也是现在Silverlight的出现促使这个RIA整个产品线有了一个竞争的关系了。因为原来可能是Adobe一家独大的势态,但是现在有了Silverlight的介入,有了JavaFX的介入,我们可以看到有更多的RIA技术可以供我们去选择,所以说我认为这是一个好事。因为出现竞争以后,大家彼此在技术方面的更新频率就会更快,对于我们终端用户来说,可以有更多的选择,也可以去开发更炫更酷的应用。

InfoQ:好的,我们的采访就结束了,谢谢吴磊接受我们的采访。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

果然很蛋疼 by Chan Vincent

好好的html不搞
钱确实比较多

Re: 果然很蛋疼 by Mark Sky

那一直都只搞HTML了 这些富客户端技术谁去使用 本来就是增加用户体验的 我认为现在的前端技术都应该朝这种富客户端技术靠近.

中国人寿的这个应用确实不错。 by sophia zhang

google了一下,养老金咨询系统(PACS),上去体验了一下,确实很不错。与传统的html相比,界面要友好亲切得多。比如,在其首页的用户体验,传统的html是不能实现这样效果的。还有给我印象特别深的,里面数据上传的控件、还有数轴控件....,还有据我理解PACS为用户提供企业年金咨询服务,是一种在线双向交互的分析系统,利用Silverlight和后台的多线程分配技术能够使系统运行起来这么流畅和高效,很难得。
在互联网技术高速发展和越来越重视用户体验的今天,相信silverlight也会越来越普及。

呵呵,顺便给同样对这个系统感兴趣的同胞说下,PACS网址为:pacs.clpc.com.cn/pacs/

Re: 中国人寿的这个应用确实不错。 by wu remoter

只有用微软操作系统的人才有“权”体验?ubuntu下几个应用都不同程度无法用。

提示要求使用internet explorer ... 无语了 by Lee Bryan

微软自己都开始转向html5 了,silverlight 还能支持多久。。。

Re: 提示要求使用internet explorer ... 无语了 by 吴 磊

Silverlight的作用在于在客户端使用高级语言替代JS,html5与Silverlight存在交集,但Silverlight比html5多出了太多其他部分,我认为你是误解了转向HTML5的真实含义吧

wth, SL4 cant run it? by Alan Ji

Installed SL4 in machine already. But it always asks for SL3...

Re: wth, SL4 cant run it? by 高 岩

对于只允许IE访问的网站都无爱

一点意见 by Li Flying

PACS体验不错,有一点意见就是中文字不清晰,老人家阅读起来很听力的

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

9 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT