企鹅顺利完成重构并发布,客户端最小安装包从20M变成了1M。  从此以后客户端的发布变成了Web类似的发布,只需要发布一个个的文件放到资源服务器就好,用户感知这个新版本的过程就好像浏览一个网页,即用户无需参与升级过程。
  至此,以后客户端开发和发布的敏捷性可以做到和Web一样。
  客户端真的可以Web化么?请看演示。
  安装附件1M的安装包,首次启动企鹅将看到如下懒加载过程,在加载过程中,用户可以使用已经加载完成的功能:
1)首先看到任务栏图标


2)其次看到宠物形象


3)接着看到喂食和洗澡的按钮,这个时候用户已经可以进行喂食洗澡操作


4)接着出现打工学习按钮,可以进行打工学习操作


5)接着出现玩耍,交互喂养逻辑


6)接着是社区逻辑加载完成,可以进入社区


7)最后所有的逻辑加载完成


  这整套的表现是如何实现的呢?
  这就依赖于我们实现的微内核插件式懒加载程序架构,架构的简单框图如下:


  整套架构是建立在一个插件系统上,整个插件系统由一个xml文件描述,描述插件的加载顺利,插件依赖的资源等。只要控制xml文件的版本就可以控制需要加载的插件,也就可以控制需要加载的功能。这是一个web化的软件架构,现在和web架构做一个对比:

  


  这套架构给企鹅客户端带来哪些好处呢?


  这套架构几乎具备了Web和客户端所有的优势。
  唯一的局限性就是依赖于内核的普及,但是当我们的内核打包大QQ的时候,相信在中国的土地上,
普及问题应该也不是问题。
  我们说,客户端也可以Web化。
  如果同学们对具体实现感兴趣,请关注以下活动:

活动时间:2011年11月25日 星期五 19:00

活动地点:成都市 西南交通大学 犀浦校区X4352

主讲人:腾讯魔方工作室高级软件工程师,主程序,敏捷教练黄朝兴

分享主题:【微内核插件式懒加载客户端架构】

· 现场解剖一个全新客户端架构,让你有一个全新的认识;

· 完整的重构过程和重构背后的酸甜苦辣,一一道来;

· 一名追求简单,追求美的程序员是如何炼成的?

活动详情:http://djt.qq.com/bbs/thread-227-1-1.html