3.1 Electron
Electron原名为Atom Shell,是由GitHub开发的一个开源框架。Electron以Node.js作为运行时(runtime),以Chromium作为渲染引擎,使开发者可以使用HTML、CSS和JavaScript这样的前端技术栈来开发跨平台桌面GUI应用程序。
在Visual Studio Code刚刚发布时,由于其是基于Atom Shell而开发的,所以当时有很多人宣称,Visual Studio Code就是通过把Atom编辑器拿过来改一改界面而做出来的。其实,这是一个谣言。如果我们了解一下Electron框架和Atom编辑器的历史,就会知道真实情况了。
2013年4月11日,Electron以Atom Shell为名发布。2014年5月6日,Atom编辑器及Atom Shell获得MIT许可证并开源。2015年4月17日,Atom Shell才改名为Electron。正是Atom Shell这个名字,让许多人产生了误解。我们可以看到,在很长的一段时间里,Electron一直是以Atom Shell的名字被大家所熟知的。而Atom Shell最初就是随着Atom编辑器而诞生的,也是Atom编辑器的核心组件,它们甚至是在同一天开源的。所以很多人就会以为Atom Shell不仅是个开发框架,还包含了许多与Atom编辑器相关的功能。然而,Atom Shell只是一个纯粹的开发框架,它不包含任何编辑器的功能。准确地说,Visual Studio Code和Atom都是基于Electron来开发的,而Visual Studio Code与Atom之间并无直接的关系。这也许就是GitHub要把Atom Shell改名为Electron的原因,因为这样可以减少很多误解。
既然Electron是一个纯粹的开发框架,那么很显然,我们不仅可以用它来开发编辑器,还可以用它来开发任何跨平台桌面GUI应用程序。除了Visual Studio Code和Atom,其他使用Electron进行开发的知名应用还有Skype、GitHub Desktop、Slack、Microsoft Teams、WhatsApp等。