前言
我们将学习基本的Electron概念,这些概念包括主进程
,显示页进程
和更多.在后面的篇幅我们将介绍怎么用electron做自己的桌面应用.
简介
让我们开始学习基础的概念,electron是什么?为什么能做桌面应用.
Electron是什么?
Electron 是一个构建桌面应用的框架,它是建立在开源的Chromium浏览器
之上的(类似于Chrome浏览器).
它仅仅通过已有的html+css构建页面,再通过nodejs控制行为和调用本地API,达到不需要学习新的知识就能构建出桌面应用,并且界面是相当的漂亮.
Electron为什么存在?
Electron
是2013在github上用js创建的,为的就是构建Atom
这个应用.但是因为在github上使用js的人很多,所有Electron
很快得到了扩展.并且越来越出名.
为什么我们要使用Electron?
Electron
主要是为了那些js开发者,想构建一个桌面应用,又不想学习新的语言而诞生的.它的优点在于界面很漂亮,并且学习成本低(对于js开发者来说).但是它也有缺点:速度比c
,java
等语言开发的桌面应用要慢.
Electron核心概念
在我们构建应用之前,快速过一遍Electron的核心概念
事件驱动
Electron
是由Nodejs开发的.大家都知道Nodejs是重度依赖异步事件驱动
的.所以Electron也继承了这个特点.
想了解Electron的事件,可以查看Electron文档.(www.hedaoshe.com)
主进程
每个Electron制作的应用,都有且只有一个主进程. 它的作用如下:
- 调用本地API接口,例如创建菜单,小托盘,通知等等.
- 创建
渲染进程
,也就是页面.(一个页面对应一个渲染进程) - 应用程序的入口,相当与
C语言
的main方法
渲染进程
一个渲染进程
就是一个页面,相当于浏览器的页面. 它的特点如下:
- 你可以拥有很多的渲染进程
- 渲染进程可以后台运行
类似谷歌浏览器
Electron十分像浏览器,整个窗口就是主进程
,每个标签就是渲染进程
.
进程之间的通信
渲染进程
之间是不能直接通信的,必须借助主进程
.渲染进程
和主进程
之间的通信要经过IPC
. 我们可以想象IPC就是电话,主进程就是领导,渲染进程就是员工.当员工要做什么事的时候都要经过领导批准,不能私自决定.但是领导可以直接下达命令.领导要吃喝玩乐,员工要卖命工作,所以他们之间的沟通要用电话.
准备边练边学
以上我们简单的介绍了核心概念.现在让我们通过实战来学习Electron.如果想完整了解Eletron,请查看官方文档
谢谢观看.!