写点什么

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

2010 年 10 月 27 日

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:好的,我们的采访就结束了,谢谢吴磊接受我们的采访。

2010 年 10 月 27 日 00:002404
用户头像

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

关注

评论

发布
暂无评论
  • Silverlight 作为 Web 应用程序技术的角色引发争论

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

  • Silverlight 之重

    上期笔者刚提出<a href="http://www.infoq.com/cn/articles/wl-silverlight-light">Silverlight之轻</a>,本期就要讨论silverlight之重?请大家不要觉得奇怪,架构的轻与重永远都是相对而言,虽然Silverlight相对于传统C/S架构有更加轻型的运行时环境,但相较于Html+JavaScript等传统B/S架构确实具有更加庞大的基础类库支持。Silverlight依靠.Net平台,使用C#高级语言代替JavaScript脚本语言,实现了强大的客户端计算能力、支持多线程,继承了WPF丰富的样式、控件、特效与动画,更可控的浏览器适应性,更安全的沙箱模式,客户端嵌入式数据库等,这就是本期要给大家介绍的重点—Silverlight之重。

  • 结课测试 | 这些 iOS 的开发知识你都掌握了吗?

    《iOS开发高手课》课程结课了,来做一个测试吧!

    2020 年 5 月 13 日

  • 聊聊 Flutter,面对层出不穷的新技术该如何跟进?

    Flutter在保证性能下实现跨平台开发,更是成为谷歌下一代操作系统的UI框架,为移动技术的发展提供了非常大的想象空间。

    2019 年 4 月 11 日

  • 利用 Silverlight、WCF 和 AJAX 开发全新的企业应用

    如果以前Flash是实现浏览器富客户端应用的固定解,那么随着Silverlight的诞生我们有了更多选择,作为一个更纯粹面向XML时代和互联网环境的新平台,Silverlight依托后端.NET和Visual Studio的开发支持,它将会促进开发人员用更对象化的方式实现全新一代的企业应用。

  • 可视化分析鼻祖 Tableau

    Tableau作为可视化分析软件领域的奠基人,算是学术界人士创业成功的典范,今天就来看一看其成长的历程。

    2017 年 10 月 11 日

  • 微软的沉默令.NET 开发者担忧

    ​本月早些时候,微软发布了一套新的基于Windows 8的触控中心界面。依照演讲稿及相关的新闻稿所示,构建该界面仅需在Windows 8上通过HTML5和JavaScript的技术即可实现,同时,HTML5和JavaScript可以使用PC的全部功能。这对于打算在Windows 平台上做更多事情的Web开发人员来说绝对是个好消息,但是对于未提及的话题却引来热烈的讨论。

  • 半条命的 Dota 帝国 Valve:虚拟现实

    Valve以创新著称,跨界进入虚拟现实设备的研发,以及和HTC的合作Vive,为游戏开发进入虚拟现实领域奠定了基础。

    2018 年 2 月 19 日

  • Web 开发:浏览器、小程序与 PWA

    为什么微信小程序必然会成功?因为,有 7 亿人同时使用的操作系统,很少。

    2019 年 7 月 9 日

  • Silverlight 2.0 八月份宏大的部署计划

    夏季奥林匹克运动会将于八月八日在中国开幕。为了配合奥运会,微软公司正在说服美国国家广播公司(NBC)使用Silverlight 2.0实现在线转播。考虑到越来越多的人们希望能够在线欣赏比赛,这项举措将非常有利于微软公司推广Silverlight这一全新的在线应用解决方案。

  • Adobe 和软件的未来

    从Adobe Flex,到Adobe Integrated Runtime(AIR),再到最近宣布计划将所有软件都以“软件服务化(SaaS)”的形式搬到Web上,Adobe表现出了一种有趣的趋向。

  • 文章:微软设计产品市场总监 Forest Key 谈 Silverlight

    在加入微软之前,Forest Key是Macromedia公司Flash的产品经理,对用户交互技术有着宗教般的狂热。也是因为对交互技术的喜爱,使他来到了微软。在这次他来中国推广Silverlight的时候,InfoQ中文站的记者有机会就Silverlight的性能、与其他平台的比较、客户为什么要采用 Silverlight技术、开发Silverlight所用的工具和Silverlight在微软产品线中所扮演的角色等问题进行了探讨。

  • Silverlight 应用整合

    本文主要介绍如何把Silverlight整合到“已有应用系统”与“解决方案”中去(包括:两大阵营,一个是Java,另一个是.NET平台),并重点讨论Silverlight通信技术。

  • Spread 全球架构师谈电子表格控件的性能最优原则

    InfoQ中文站编辑跟GrapeCity的电子表格产品Spread的全球架构师王灵峰进行了一次沟通,交流了有关电子表格控件的性能优化、定制化、市场需求等方面的内容。

  • 当插件化遇上 Android P

    演讲嘉宾 张志强,京东商城资深Android系统架构师。 内容介绍 Android P 来了,插件化将何去何从?Android作为操作系统涉及的面比较广,不可能在所有的方面都能走在大家的需求之前,尤其是这几年,App越来越大,而相应的Android官方给出的方案一直不太符合中国的国情,先是65536问题,再是多团队协同开发,再到App如何瘦身,这些问题一直困扰着中国的开发者。国内的开发者们在经过了无数高手的实践之后,在2016、2017年插件化技术越来越成熟,发展到了顶峰,井喷了许多高质量的插件化框架,以应对大型App的开发。 2018年,Google官方也终于祭出了大杀器 – 禁止调用私有API,并推出官方的动态化框架Android App Bundles。 随着Android P的发布,使用插件化的你们做好应对方案了吗?

    2018 年 9 月 12 日

  • Silverlight、JavaFX、Flex/Flash 技术比较

    博客作者Techie在“Apollo vs Silverlight vs JavaFX vs Flash/Flex观点”一文中深入比较了这几种热点技术的不同。

  • HTML 5 or Silverlight?

    虽然HTML5标准仍处于草案阶段,但是毋庸置疑,它会最终成为主导的跨平台解决方案。甚至微软也宣称HTML是“唯一适用于所有应用的、真正的跨平台解决方案。”但是与Silverlight相比,HTML5在许多方面的表现仍极为有限。来自Syncfusion公司的Daniel Jebaraj对未来如何在Silverlight和HTML5之间进行选择给出了指导。

  • Adobe 技术经理董龙飞谈企业级 RIA 开发

    InfoQ编辑在QCon北京大会期间,就企业采用RIA解决方案的原因、如何与遗留系统进行集成、如何通过以用户为中心的设计理念帮助客户实现可交互的系统,以及RIA的未来发展趋势等采访了Adobe技术专家董龙飞。

  • Silverlight 面向客户端,HTML5 面向 Web

    Bob Muglia在PDC 2010讲到Silverlight的时候,说“我们的策略已经转移了”,事后,他试图澄清这到底是什么意思。 Steve Ballmer和Tim Heuer也对Silverlight发表评论,试图重新让社区确信微软对Silverlight的承诺,但是他们也指出这样的事实,HTML5是针对跨平台开发的解决方案,而Silverlight针对的是客户端和Windows Phone。

发现更多内容

无代码平台,完成业务的最后一公里

钟杰

架构师训练营笔记2则分布式系统架构和数据结构

tuuezzy

牛皮了!头一次见有大佬把「Java高并发编程」详解得如此清晰明了

Java成神之路

Java 程序员 面试 并发编程

大作业

SuperLab

这份阿里P8整理的Java学习资源,简直把所有Java知识操作都写出来了

Java成神之路

Java 编程 程序员 面试

Week12

SuperLab

大作业

任小龙

“哥伦布”华为,与智能联接新大陆

脑极体

Week13

SuperLab

实践案例丨ACL2020 KBQA 基于查询图生成回答多跳复杂问题

华为云开发者社区

搜索 数据集 知识图谱

一个草根的日常杂碎(9月23日)

刘新吾

随笔杂谈 生活记录 社会百态

智能体:华为给时代炼一炉钢

脑极体

数字货币管理,3 大新模式来了!

CECBC区块链专委会

区块链 数字货币

12周作业-大数据

飞雪

学完这篇Spring Cloud技术提升一个点!

Java架构师迁哥

阿里P9架构师推荐的Spring领域巅峰之作,颠覆了我对Spring的认知

Java成神之路

Java spring 编程 程序员 面试

智谱 AI 首席科学家唐杰团队荣获国际数据挖掘顶会时间检验应用科学奖

极客播报

架构师训练营第二周作业

Geek_4c1353

JAVA集合之LinkedList底层实现和原理

彭阿三

linkedlist

鼓励语言区块链技术的应用

CECBC区块链专委会

区块链

GaussDB(for MySQL)如何在存储架构设计上做到高可靠、高可用

华为云开发者社区

数据库 GaussDB

二.图说Eureka源码(环境搭建)

阿亮

源码 SpringCloud Eureka

小朋友都能看懂的 HTTPS

Java架构师迁哥

问世间异步为何物?

架构师修行之路

微服务 异步

Mobileye携手吉利汽车共同推出领先的驾驶辅助功能

intel001

「架构师训练营第 1 期」第二周课后总结

睡不着摇一摇

极客大学架构师训练营

换道超车 区块链是你的捷径

CECBC区块链专委会

区块链 互联网

有的程序员写代码写到头秃,有的程序员却通过黑吃黑获利百万。

Java架构师迁哥

「架构师训练营第 1 期」第二周作业

睡不着摇一摇

极客大学架构师训练营

朋友入职阿里请我吃饭,只因为面试前我逼他看了这些,经验很重要

小Q

Java 学习 程序员 架构 面试

架构师训练营期末大作业

史慧君

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

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