您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 494-陆远-Web前端技术构建桌面应用的解决方案
heXWeb前端技术构建桌面应用的解决方案网易有道陆远2013-08-11桌面应用中的浏览器浏览器的发展趋势HTML5现状基于HTML5的web开发会受到各种平台(PC、mobile)、各种浏览器的各种限制我们需要各种修补、兼容,甚至有所放弃严重不爽!换个思路怎么办?!1.明天是美好的2.主动出击目录1.heX是什么2.如何实现3.怎么用4.现状和展望heX是什么heX可以用来干什么web开发异步I/O编程heX有什么优势•像在浏览器中一样,设计和调试程序的UI•像在Node.JS中一样,管理和扩展程序的模块,支持Node.JS第三方C++扩展•像编写传统桌面应用一样,利用丰富的API和事件操作桌面窗体•可以移除Node.JS仅保留纯净的浏览器环境•以web容器的形式嵌入到桌面工程中•支持Chromium的单进程与多进程模型heX的发行包包含Node.JS不包含Node.JS源代码✔最终用户二进制包✔✔Web前端调试二进制包✔✔Module二进制开发包✔✔heX不适合做什么•控制台程序•文件体积极小的应用•杀毒软件、安全卫士、驱动程序heX如何实现——为什么选择1.轮子2.CEF已经有许多成功应用案例3.CEF1与CEF3的抉择:CEF1CEF3封装接口WebKitAPIContentAPI进程模型仅单进程单进程、多进程远程调试不支持支持heX如何实现——为什么选择扩展浏览器的客户端功能需要考虑:•封装程度•扩展性•跨平台heX如何实现——原理V8引擎融合heX如何实现——原理context融合——InitContextIfNeededChromiumNode.JSPagecontextNewcontextStartLoadcontextheX如何实现——原理消息循环与事件循环融合heX如何实现——原理安全性考虑•锁定工作目录•Node.JS模块黑白名单•禁用Node.JS第三方C++扩展heX怎么用——主要流程1.下载二进制发行包配置manifest.json3.编写web前端代码4.编写Node.JS代码5.打包或者生成安装程序heX怎么用——manifestheX的现状v27.0v0.11.0应用案例:有道词典6.0beta版heX的现状——应用案例heX的现状——应用案例heX的展望•建立HPM(heXPackagedModules)社区,方便管理和分享扩展;•OSX(已完成一部分)和Linux平台版本,Android;•针对以web容器形式存在的heX提供一套合理的C++与JavaScript交互通信的方式,并支持同步与异步;•提供全自动打包工具,可以直接生成安装程序(web前端代码加密,主程序信息等);•不断的升级,保持最新。谢谢!Q&A
本文标题:494-陆远-Web前端技术构建桌面应用的解决方案
链接地址:https://www.777doc.com/doc-6218780 .html