Electron相关的一些概念

ASAR(Atom Shell Archive Format)

asar其实是一种类似tar这样的把文件和目录结构整合为一个文件的文件格式,electron可以不用解包来读取一个asar文件里面的任意文件,在windows下能够有效的改善性能

Brightray

对libchromiumcontent的一个静态库封装,为了便于程序使用

libchromiumcontent(libcc)

把整个Chromium Content模块和所有需要的依赖(如Blink、V8等等)整合成的一个共享库

main process

对应Chromium中所表述的browser process,管理整个app的生命周期,从打开到关闭;也管理渲染之外的其他原生元素如菜单、任务栏图标等等;还负责创建renderer process;
每个app的package.json里main属性所指定的文件,就是app的入口文件,一般是main.js

renderer process

app里的一个浏览窗口,每个都对应一个单独的渲染进程

native modules

Node.js中成为addons,这些都是以C/C++实现的,能被require函数加载的模块。因为Electron使用的V8版本很可能和你系统上安装的Node.js的V8版本不同,所以如果需要开发原生模块的话,需要手动指定使用Elecron的头文件

OSR(off-screen-rendering)

离屏渲染,即先在后台渲染好一个页面后,再来显示它,对那种重型的页面,这样做可以起到很好的加速效果

Squirrel

可以让app实现自动升级的一个开源框架

userland

这个是相对于Electron本身所提供的核心API相对应的;Electron只提供能满足所有需求的一个最小的API集合,userland就是在这个API的基础上,进行再封装来提供的更丰富功能的工具或库

webview

webview标签用于放置诸如外部页面这样的第三方的内容,类似iframe,但是又有不同,这些不同点都是基于安全考虑而做出的。

  • 每个webview都运行在一个独立的进程中
  • 和其他非webview页面的权限不同,这个权限类似于浏览器
  • 所有的交互都是异步的

你可能感兴趣的:(Electron相关的一些概念)