electron由Node.js+Chromium+Native APIs构成。你可以理解成,它是一个得到了Node.js和基于不同平台的Native APIs加强的Chromium浏览器,可以用来开发跨平台的桌面级应用。 

Electron是由GitHubkaifa ,用HTML,css和JavaScript来构建跨平台桌面应用程序的一个开源库。Electron通过将chromium和node.js合并到同一运行时环境中,并将其打包为Mac,windows和linux系统下的应用来实现这一目的

Electron是一个跨平台的桌面应用开发框架,用html css js的技术开发桌面上面可以安装的软件,可以让我们前端人员用html  css  js的技术开发跨平台可以安装的桌面软件。

Electron于2013年作为构建Atom的框架而被开发出来,这两个项目在2014春季开源。(Atom:为GitHub上可编辑的文本编辑器)

为什么要学习Electron?

1. 有桌面应用的需求。 (Electron开发速度快,开发周期短,跨平台,维护成本低)

2. 提升自己的技能

3. 大家都在学,所以我们也得学。 (你不知道,不代表别人不知道)

4. 开发开源软件 推广自己的产品 (如:atom和vscode    阿里内部的一个软件也是用electron  分发成本低)。

5 . 同样的功能 开发软件比开发网站更赚钱。

6. 学习c++ Java成本高,用electron开发、学习成本低。

7、electron可以和Vue 或者 Angular 或者React结合开发

8、跨平台:Mac(Object-C和Swift),linux(c++),windows(通常c++或c#)

9、自动更新

基于Nodejs的主流桌面应用开发框架——NW.js 和 Electron

   NW.js(英特尔公司提供技术支持),Electron(Github公司提供技术支持)。

它们两个不仅可以把html写的web页面打包成跨平台可以安装到电脑上面的软件,也可以通过javascript访问操作系统原生的UI和Api(控制窗口、添加菜单项目、托盘应用菜单、读写文件、访问剪贴板)

Electron把HTML,CSS和JavaScript组合的程序构建为跨平台桌面应用程序的原理是什么

 Electron通过将chromium和Node.js合并到同一个运行环境中,并将其打包为Mac,windows和Linux系统下的应用来实现这一目的

Electron的核心理念

保持Electron的统计小和可持续开发。

如:

为了保持Electron的小巧(文件体积)和可持续性开发(以防依赖库和API的泛滥),Electron限制了所使用的核心项目的数量。

比如Electron只用了chromium的渲染库而不是其全部组件,这使得升级chromium更加容易,但也意味着Electron缺少了Google Chrome里的一些浏览器相关的特性

学习之前的准备工作

电脑需要安装nodejs

电脑需要安装git

需要有HTML,CSS,JavaScript以及nodejs基础(不具备nodejs也可以学,不具备nodejs的话可能不好理解)

Node推荐下载稳定版本,https://nodejs.org/en/

Git下载地址:https://git-scm.com