桌面属于electron

在过去的一周里,我一直在使用Pixelbook,查看新的Linux应用程序功能。它还没有准备好进入黄金时间,但它比我上次尝试在Chrome操作系统上运行Linux应用程序的时候好了十亿倍。...

在过去的一周里,我一直在使用Pixelbook,查看新的Linux应用程序功能。它还没有准备好进入黄金时间,但它比我上次尝试在Chrome操作系统上运行Linux应用程序的时候好了十亿倍。

但我被某种讽刺所打动:我想安装的应用程序中有一半是电子应用程序。如果您不熟悉Electron,它是一个允许开发人员使用web技术创建桌面应用程序的框架。”如果你能建立一个网站,你就可以建立一个桌面应用程序。”这是口号。事实上,许多电子应用程序感觉几乎和网站一模一样。

Slack、Hyper、Simplenote、Visual Studio代码。所有这些都是我一天中的大部分时间,它们都是用电子**的。

在引擎盖下,Electron由Chromium渲染引擎和Node.js供电。Chrome是谷歌Chrome浏览器的开源部分。Node.js由V8驱动,这是Chrome的JavaScript引擎。

因此,为了澄清:我正在运行一台笔记本电脑,它有一个名为“Chrome OS”的操作系统,主要是谷歌的Chrome浏览器和一点Linux,现在我正在Chrome OS之上的虚拟机中安装“真正的”Linux应用程序,而这些应用程序中的大多数都是完全使用Chrome衍生技术构建的。

你知道吗?这些电子应用程序在Chrome操作系统上有点差劲。我相信他们会随着时间的推移而进步——特别是一旦他们获得了GPU支持,我听说这项工作正在进行中——但他们总是会被谷歌为保持Linux应用程序与其他操作系统的独立和安全所做的沙箱所束缚。

我不想在这里给人留下抱怨的印象。各方都有很多技术成就值得庆祝。Electron应用程序很容易在Linux上安装,而且是独立的,当然也很实用。相比之下,我不得不删除我的Steam安装中的几个文件才能启动它,尽管Steam的基本组成——一个可以访问文件系统的web浏览器UI——并不比VS代码复杂。

下面是一位电子开发人员,他解释了这一切是如何工作的,并给我们上了一堂关于内部技术的历史课:

Electron有点像一个web浏览器和一个web服务器,都在一个方便的包中。开发人员使用HTML、CSS和JavaScript(与任何网站相同)构建用户界面,并使用JavaScript为其应用构建“后端”——基本上,所有网站通常无法实现的功能,如删除硬盘或打开网络摄像头。

让我们以松弛为例。下面是Slack的一位开发人员解释他们使用Electron的确切原因:

Given the rise of progressive web apps (PWAs) and browsers-as-OSes, it’s worth taking some time to think through what capabilities your app can’t possibly have as a standard web app. For Slack, this includes fine-grained control over native notificati***, screensharing and video calls, spellchecking and language detection, native app and context menus, and access to exciting new APIs like the Touch Bar and My People.

这看起来像一个很长的列表,但给我印象最深刻的是列表中没有的东西:用户界面和Slack的核心逻辑完全独立于电子。在Slack的案例中,大多数核心逻辑都存在于Slack服务器上的云中。对于离线电子应用程序,如VisualStudio代码,有更多的“后端”可以在本地计算机上运行,用于编译代码、提供建议和使用git版本控制。但是你仍然可以在浏览器中使用VS代码的核心文本编辑器部分——它被称为Monaco editor,它支持我最喜欢的基于web的编码环境之一CodeSandbox。

在我看来,应该可以将Electron分解为几个组成部分,使Chrome操作系统成为运行Electron应用程序的最佳场所。

只需在新的Linux沙箱中运行应用程序的“后端”,并将UI作为Chrome应用程序运行,由Chrome的本机Chrome OS版本提供支持。我说像这样的“只是”是一件容易的事。可能不会。但谷歌的另一个选择是,Slack和VS代码在Chrome操作系统上的运行情况比在Windows和Mac上更糟糕。然后我会难过。

如果我真的想入非非,我不明白为什么苹果和微软不能用自己的操作系统优化的浏览器引擎对用户界面进行类似的电子分解。我的意思是,我喜欢主要的浏览器供应商如此努力地支持渐进式Web应用作为一种开放标准,但很明显,大多数“真正”的桌面应用的需求将永远超过这些开放标准。

开发人员已经清楚地表明了他们的意图:他们希望使用web技术开发能够立即运行的跨平台桌面应用程序。Electron是一个开源项目。所以贡献吧!在我的应用程序使用过程中,我正在寻找一个具有一流电子支持的操作系统,而不是相反。

Electron的体系结构细节帮助它取得了成功,但真正重要的是结果:开发人员可以使用单个JavaScript代码库**桌面应用程序,并将其编译成可在每个操作系统上运行的二进制文件。为了确保Electron应用程序以完美的Chrome操作系统公民身份脱颖而出,谷歌并非不可能为这条编译管道做出贡献——事实上,微软已经开发出一种工具,帮助开发者为Windows应用商店打包Electron应用程序。

这不一定是永远的。也许在将来,开发人员将开始使用React Native来构建桌面应用程序。或者也许是飘动!电子应用程序使用过多RAM的名声很差,有潜在的安全问题,不能(或)匹配C++的速度,而且它们常常缺少一个伟大的本地应用程序的抛光和熟悉。

但我似乎很清楚,特定于操作系统的SDK正在成为桌面操作系统供应商的负担。开发人员希望使用他们知道的技术,并且他们希望为他们构建的产品提供最大限度的服务。他们足够聪明,可以得到他们想要的。苹果、谷歌和微软缺乏合作只会伤害用户。

向你的新电子霸主问好。

  • 发表于 2021-08-24 00:16
  • 阅读 ( 68 )
  • 分类:互联网

你可能感兴趣的文章

光子(photon)和电子(electron)的区别

...C2,其中E是光子的能量,C是真空中的光速。 什么是电子(electron)? 原子由一个带正电荷的原子核组成,它几乎包含了围绕原子核运行的所有质量和电子。这些电子带负电荷,与原子核相比,它们的质量很小。一个电子的静止质...

  • 发布于 2020-10-23 22:43
  • 阅读 ( 1469 )

本地化(localized)和离域电子(delocalized electrons)的区别

...的区别。 总结 - 本地化(localized) vs. 离域电子(delocalized electron) 在普通化学中讨论了定域和离域电子。定域电子和离域电子的关键区别在于,定域电子位于原子之间,而离域电子位于原子的上方和下方。此外,离域电子与化合物...

  • 发布于 2020-10-24 10:20
  • 阅读 ( 1013 )

electron开放框架以及为什么它对应用程序开发非常棒

... 什么是电子(electron)? ...

  • 发布于 2021-03-12 14:53
  • 阅读 ( 275 )

5个适用于linux的electron应用程序您今天应该尝试一下

使用Electron框架编写的程序没有最好的声誉。这其中很大一部分与他们使用大量资源的方式有关。毕竟,它们是基于谷歌的Chrome网络浏览器,具有它的所有优点和特点。 ...

  • 发布于 2021-03-13 23:34
  • 阅读 ( 183 )

visualstudio代码与atom:哪个文本编辑器适合您?

... 首先,visualstudio代码和Atom共享DNA。这两种编辑器都使用Electron,开发人员可以使用JavaScript、HTML和CSS等web技术创建成熟的桌面应用程序。有些人强烈反对这个想法,但那是另一回事。 ...

  • 发布于 2021-03-19 18:36
  • 阅读 ( 209 )

什么是ea desktop?它与ea origin相比如何?

EA Desktop是Electronic Arts新推出的PC游戏软件的名称。它提供了一个圆滑的用户体验和一个中央集线器访问EA的PC版本。 ...

  • 发布于 2021-03-27 07:38
  • 阅读 ( 1348 )

这个本地应用程序可能只是一个旧的web浏览器

...员有几种方法可以使用Chromium浏览器引擎构建应用程序。Electron是最为人熟知的,但许多其他应用程序使用的是CEF,Chromium嵌入式框架。 网上聊天?Slack是一个用Electron构建的流行应用程序。做笔记?Evernote使用CEF,Trello使用Electron...

  • 发布于 2021-04-03 06:23
  • 阅读 ( 171 )

如果没有google chrome,windows商店将永远是个烂摊子

...ial),微软允许商店里有很多桌面应用程序。这包括使用Electron构建的各种应用程序,Electron使用的是Chromium浏览器引擎,而googlechrome的浏览器引擎就是基于这个引擎构建的。这些应用程序经常访问web,并使用Chrome使用的相同浏览...

  • 发布于 2021-04-06 23:11
  • 阅读 ( 207 )

什么是电子应用,为什么它们变得如此普遍?

...绑在一起变得越来越常见。实现这一点最常见的技术叫做Electron,它被一些你甚至都不会怀疑的应用程序使用,比如聊天应用程序Discord和微软的visualstudio代码。 Electron使得开发者在Windows、macOS和Linux上同时发布应用程序变得很容...

  • 发布于 2021-04-07 04:02
  • 阅读 ( 97 )

希拉里克林顿玩游戏男孩使一个极好的桌面背景

...3; 
 April 6, 1993: Hillary Rodham Clinton plays a Nintendo "Game Boy" electronic game on her flight from Austin, Texas to Washington, DC. Photographed by Ralph Alswang. #NARA #Nintendo #GameBoy #Videogames #ClintonCenter #ClintonLibrary #PresidentialLibraries #HRC #FirstLady
 A photo posted...

  • 发布于 2021-04-29 14:34
  • 阅读 ( 172 )
风一样666
风一样666

0 篇文章

相关推荐