gpt4 book ai didi

architecture - 在设计软件平台时,构成成功的可插拔架构的关键要素是什么?

转载 作者:行者123 更新时间:2023-12-04 04:39:01 27 4
gpt4 key购买 nike

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .

1年前关闭。




Improve this question




越来越多的软件平台让外部开发人员通过可插拔架构(插件/扩展)贡献代码给我留下了深刻的印象。

我一直在研究哪些平台有最好的插件社区......

具有蓬勃发展的插件社区的优秀插件架构:

  • 用于博客的 WordPress(和 WordPress MultiUser):4245 plugins
  • bbPress 留言板:165 plugins
  • Firefox 浏览器:1265 extensions
  • 用于电子商务的 Magento:732 plugins

  • 然后是插件社区不太活跃的平台:
  • 用于 wiki 的 MediaWiki:22-38 extensions?

  • (为了集中注意力,让我们搁置或忽略支持成熟软件应用程序的平台,如 Microsoft Windows、iPhone 和 Facebook。)

    与另一个拥有较小或不活跃的开发者社区的平台相比,您认为如何为软件平台提供具有大量插件的成功插件架构?

    只是为了让事情开始,这里有一个部分列表:
  • 该平台做了一些广泛有用的事情:让人们浏览网页、买卖东西、发布博客和留言板等。
  • 该平台是开源的(或者至少,源代码是免费的)。
  • 平台中的所有重要功能都可以通过钩子(Hook)和过滤器完全插入。
  • 所有或大多数可插入功能都有很好的文档记录(或者有一个 wiki,因此开发人员可以为您记录它)。
  • 有一个论坛或电子邮件列表,开发人员可以在其中分享插件,分享技巧和窍门
  • 有一个论坛或电子邮件列表,不太成熟的用户可以在其中获得安装和配置插件的帮助。

  • 平台开发人员可以做哪些事情来创建一个可插拔的架构,以鼓励许多外部开发人员创建插件?

    最佳答案

    就我个人而言,我是否学习(并确实)为任何给定系统编写应用程序有 3 个主要贡献者:

    该系统是否非常有用,以至于我想使用它来激发足够的动力来扩展它?

    系统是否使用我熟悉的语言,或者易于学习,而不是一些晦涩的或专有的或其他过于复杂的解决方案(请参阅 elisp)?

    插件系统是否以清晰的语言记录得非常好,这样我就可以开始编写插件的工作,而不用花费数小时(或数天)来破译系统?

    如果这些都是真的,那么您不想为平台开发的唯一原因是其他人已经为您的所有想法编写了插件。 :)

    我认为拥有一个中央且众所周知的存储库来容纳用户贡献的插件(根据您的示例项目)也是非常有帮助/重要的。我讨厌不得不在网上搜索我正在尝试做的事情的个人、可能低质量甚至可能是恶意的附加组件。这应该是一个网站或 wiki,因为即使是论坛或邮件列表存档也可能很烦人且耗时。

    关于architecture - 在设计软件平台时,构成成功的可插拔架构的关键要素是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/880602/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com