[omaha] Plugin Framework/Architecture
Jeff Rush
jeff at taupro.com
Wed Jan 23 04:25:34 CET 2008
Jeff Hinrichs - DM&T wrote:
> There is an interesting write up on plugin architecture -- "g :: A
> Simple Plugin Framework",
> http://gulopine.gamemusic.org/2008/jan/10/simple-plugin-framework/
Thanks for the reading material!
> A project that I'm working on is going to require a plugin framework
> for a number of things: Logic, Data Storage, Reporting and I've been
> keeping my eyes open for papers/articles on plugin frameworks. Do you
> know of any resources/articles?
Two options you should consider:
1) The Twisted framework has a very nice plugin-architecture you
can use, whether you use the rest of Twisted or not. Google
for "twisted IPlugin".
For an example, you can take a peek at the Dallas-Ft. Worth
Pythoneers' subversion repository - we played with it a bit,
in relation to providing plugins to the D-BUS architecture.
https://www.dfwpython.org/repo/Projects/DBUS/
2) Python eggs, using the Setuptools software, have a concept of
entrypoints, which are named and categorized. They are an
upcoming standard way of doing plugins for Python. There is
a standard API for querying for entrypoints.
You can read all about it at:
http://peak.telecommunity.com/DevCenter/setuptools#extensible-applications-and-frameworks
It is also the method used by zc.buildout, a great
tool for managing development/deployment for repeatability.
And then the third way, of leveraging the interfaces database of the Zope
component system, as described in the article you provided.
-Jeff
More information about the Omaha
mailing list