在Python中构建最小的插件体系结构

问题:

我有一个用Python编写的应用程序,由相当技术的读者(科学家)使用。
我正在寻找一种使应用程序可扩展的好方法,即脚本/插件架构。
我在找东西非常轻巧。大多数脚本或插件不会由第三方开发和分发并安装,而是会在几分钟内被用户鞭打,以自动执行重复任务,添加对文件格式的支持,所以插件应该有绝对最小的样板代码,除了复制到一个文件夹之外,不需要“安装”(所以像setuptools入口点,或是Zope插件架构似乎太多了)。
有没有像这样的系统,或任何实施类似计划的项目,我应该看看想法/灵感?

回答:

我基本上是一个名为“plugins”的目录,主应用程序可以轮询,然后使用imp.load_module来拾取文件,可以使用模块级配置参数查找一个众所周知的入口点,然后从那里开始。我使用文件监控的东西,一些活跃的插件活跃,但这是一个很好的。
当然,任何要求都说“我不需要[大而复杂的事情] X;我只是想要轻量级的东西”,有一次重新实现X一个发现的要求的风险。但这并不是说你无法做一些有趣的事情:)

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Building a minimal plugin architecture in Python

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

2 + 5 =