Electron(官网:)是由Github开发的一种开源框架,利用HTML、CSS和JavaScript构建跨多个平台的桌面应用程序。
Electron集成了本地API,使得纯JavaScript可以用于创建桌面应用程序。它通过集成浏览器内核,使用Web技术在不同平台下实现渲染,并结合了Chromium、Node.js和用于调用本地系统功能的NativeAPI三个板块。
简单而言,页面UI渲染由Electron负责,业务逻辑由Node.js负责,而NativeAPI则提供原生能力以及跨平台功能。
基于跨平台应用程序开发的Electron框架和QT框架的对比:
Electron是一个集成项目,它的重点工作如下:
以下是Electron框架的内部原理图:
Chromium基础能力API使应用程序的渲染器能够提供HTML页面,使应用程序能够存储在Cookie或IndexedDB中的数据,这些能力是前端开发者非常熟悉的。
Node.js基础能力API使开发者能够读写本地文件、通过套接字访问网络、创建和控制子进程等,这是Node.js开发人员非常熟悉的能力。
Electron内置模块使开发人员能够创建操作系统的托盘图标、访问操作系统的剪贴板、发送系统通知,并提供一系列API,允许开发人员使用JavaScript访问Chromium的底层能力。
接下来,我们来看一下Electron应用程序的结构:
每个Electron应用程序由一个主进程和一个或多个渲染进程组成。开发人员的主要工作是完成主进程和渲染进程的逻辑。
Electron应用程序启动时,会首先加载主进程逻辑。主进程会创建一个或多个窗口,我们可以粗略地认为一个窗口代表一个渲染进程。主进程负责管理所有渲染进程。
窗口内加载的页面是开发人员要实现的渲染进程逻辑。我们可以让渲染进程与主进程进行通信,它们之间是通过IPC消息管道进行通信的。
本文地址:https://zdmsl.95hd.cn/article/3ddc443a1e384f0eed9b.html
上一篇:基于Tensorflow的猫狗分类问题实现基于tens...
下一篇:众安科技公司众安科技一套成熟的it自动化运...