当前位置: 首页 > 知识库问答 >
问题:

如何创建可扩展的电子应用程序?

金嘉
2023-03-14

Atom和VisualStudio代码可能是迄今为止最大的电子应用程序,它们都具有很强的可扩展性,还有其他一些较小的例子,如N1。我的意思是,它们支持插件。

问题是:我想我会在谷歌上找到一些关于如何让电子应用程序可扩展的东西,或者那些很酷的“棒极了”列表上的东西,但是我什么也没找到。此外,深入研究这些应用程序的源代码需要一段时间。

我在寻找什么(或):

  • 我不知道的内置功能
  • 类似于电子可扩展的库(假名称)
  • 指引

那么,如何使电子应用程序具有可扩展性呢?

共有1个答案

邹俊友
2023-03-14

如果你是编写应用程序的人,将是创建插件中使用的布局/约定的人。

话虽如此,有很多方法可以做到这一点,其中之一是动态地要求语句来替代函数。

来自OO背景,我建议研究工厂和复合设计模式。

以下是一些电子资源:https://github.com/sindresorhus/awesome-electron/blob/master/readme.md

 类似资料:
  • 这是一个有点开放性的问题,但是,制作一个好的可扩展电子应用程序的好方法是什么?VSCode、Atom和许多其他软件都支持扩展,但它们的代码库太大,我无法理解到底发生了什么。我对Jupyterlab感到非常惊讶,据他们说,它包含一个小小的核心,而其他一切都只是它上面的扩展。所以我想知道如何构建这些应用程序。 我的具体问题是: 是否有创建可扩展架构的最佳实践 电子部分是如何“识别”延伸的?怎么装的?什

  • 我有一个proto,它有一条包含扩展名的消息 我有另一个proto,它有扩展(只显示下面的一个扩展) 通过protobuf代码,我能够获得MsgB的描述符和FileDescriptor,并从中检索FieldDescriptor类型的扩展名“MsgB”。我通过protobuf代码查找扩展,而不是使用MsgB协议生成的代码,因为我试图迭代所有扩展消息,而不是将每个消息硬编码为可变扩展。(我理解Muta

  • 我们正在使用关系数据库开发很多“传统”web应用程序。它们都是内部软件,为有限的用户提供服务。现在,我们正在构建一个web应用程序,并将其作为云(如SaaS)进行业务。然而,我们在云计算方面没有经验。我们非常感谢所有建议,以便我们可以开始挖掘,因为目前我们不知道从哪里挖掘:) 我们的web应用程序摘要:我们有两个主要部分 第1部分: 对于授权用户 第2部分: 对于公共用户 一种CMS,授权用户创建

  • 我正在做一个项目,该项目将有许多JavaFX应用程序,这些应用程序具有相似但又足够不同的功能,因此我创建了一个抽象基类来扩展Application以处理常见的功能并指示它们需要做什么,还创建了一系列具体的类来扩展这些功能。然而,当我试图跑的时候,我得到 应用程序构造函数java.lang.Reflect.InvocationTargetException位于java.base/jdk.intern

  • 问题内容: 在最新版本(v0.31.0)中,电子附带了静态链接的FFMpeg库(不是命令行工具,请参见#2588) 我知道很多用于ffmpeg的nodejs模块,但是它们看起来都像是命令行工具的api,那么理想情况下我该如何访问与电子捆绑在一起的ffmpeg库并编码流? 问题答案: 当前这是不可能的,因为没有针对Node.js的不错的库。意思是,只有这样抽象了CLI。但是,可以将其编译和链接为节点

  • 问题内容: 我对项目有一些特定要求,因此决定实施不受管理的Neo4j扩展。 我在Neo4j文档中找到了以下信息: 非托管扩展 测试您的扩展 这看起来是一个好的开始。但是我无法为我工作。 是否有一些更完整的工作示例/模板可以用作参考? 问题答案: “手工”解决方案 TL; DR; - https://github.com/FylmTM/neo4j-unmanaged-extension- templ