如何在网络上建立一个插件系统,同时在晚上睡个好觉

Editor's Note: Since we published this blog post, we decided to change our sandbox implementation to an alternative approach: compiling a JavaScript VM written in C to WebAssembly. As you'll see in the blog post below, it was one of several ideas we originally weighed.

编者注:自从我们发表这篇博文后,我们决定将沙盒的实施改为另一种方法:将用C语言编写的JavaScript虚拟机编译为WebAssembly。你会在下面的博文中看到,这是我们最初权衡过的几个想法之一。

We decided to implement this alternative after a security vulnerability in the Realms shim (which our original approach uses) was privately disclosed to us. The security vulnerability was promptly fixed by the Realms shim team before the vulnerability was made public and we have no evidence it was ever exploited. Read more about the vulnerability and our approach to fixing it here.

在Realms shim(我们最初的方法使用的)中的一个安全漏洞被私下披露后,我们决定实施这个替代方案。在该漏洞被公开之前,Realms shim团队及时修复了该安全漏洞,我们没有证据表明该漏洞曾被利用过。在这里阅读更多关于该漏洞和我们修复它的方法。

At Figma, we recently tackled one of our biggest engineering challenges yet: supporting plugins. Our plugins API enables third-party developers to run code directly inside our browser-based design tool, so teams can adapt Figma to their own workflows. They can enable accessibility checkers to measure contrast, translation apps to convert language, importers to populate designs with content, and anything else their heart desires.

在 Figma,我们最近解决了我们最大的工程挑战之一:支持插件。我们的插件 API 使第三方开发者能够直接在我们基于浏览器的设计工具中运行代码,因此团队可以根据自己的工作流程调整 Figma。他们可以启用可访问性检查器来测量对比度,翻译应用程序来转换语言,导入器来填充设计内容,以及其他任何他们想要的东西。

We knew we needed to design this plugin functionality carefully. Throughout the history of software, there have been many instances where third-party extensions negatively affected a platform. In some cases, they slowed the tool to a crawl. In other cases, the plugins broke whenever new versions of the platform were released. To the extent that we could control it, we wanted users to have a better plugin experience with Figma.

我们知道,我们需要仔细设计这个插件的功能。纵观软件的历史,已经有许多第三方扩展对平台产生负面影响的例子。在某些情况下,他们把工具的速度降到了最低。在其他情况下,每当平台的新版本发布时,这些插件就会损坏。在我们可以控制的范围内,我们希望用户在使用 Figma 时能有更好的插件体验。

Furthermo...

开通本站会员,查看完整译文。

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.125.0. UTC+08:00, 2024-05-10 07:06
浙ICP备14020137号-1 $访客地图$