初识node
从node一出来就刮起来一阵狂风,来势汹汹。记得初识node的时候被官网首页的7行代码的
Hello world
惊艳到了,它既充当了web容器,又担任了后台逻辑编码.似乎要颠覆,后来慢慢接触以后把一些项目开始使用它来编写,逐渐的承担起大前端这个潮流的主演,而后各种的基于node的前端构建工具或工作流层出不穷,把前端开发推向了一个新的高潮!我们极力的追赶着,却总是迷失在频繁的技术变革中.
Chrome V8
第一次听说这个引擎的时候我联想到的是跑车或是赛车的V8发动机,我猜测谷歌公司给这个渲染器命名的时候应该有这个方面的考虑。正如他们所愿,V8引擎已经承载了太多,他已经从单纯的做浏览器渲染引擎开始向桌面客户端进军~
初识 electron
记得很早的时候看到几篇博文在描述这个技术,然后在里面看到网易云音乐就是采用该技术开发的,而后出现的 vscode,到目前为止这些应用也是为数不多横跨各大操作系统的应用,它的出现似乎为跨平台应用指出了新的方向,以前可能有qt,现在的electron让前端开发工程师就能享受到开发桌面应用的便捷,他基于node平台开发依托于V8高性能渲染,让你的跨平台应用如虎添翼~
技术栈与特点
快速开始
# 克隆示例项目
$ git clone https://github.com/electron/electron-quick-start
# 进入这个仓库
$ cd electron-quick-start
# 安装依赖并运行
$ npm install && npm start
一些思考
- 上手比较快,基本上很多现有的B/S架构的系统都很好移植到electron上面来变成C/S架构
- 所有的UI都是基于Chromium来进行渲染,所以浏览器上面开发遇到的问题基本在这个上面会遇到
- 开发的时候尽量是把调用 electron的api部分和ui部分的进行隔离,方便移植为B/S
- UI部分的开发推荐使用SPA的方式去做,会有更好更流畅的操作体验
- 整体打包的体积比较大,这一块需要多花心思来进行压缩和精简,毕竟要打进去一个浏览器和node
- 用着基于Electron开发的VS Code去开发基于Electron的应用总感觉怪怪的