I want to implement my project using interface oriented programming. Since Python itself does not have native support to the Interface keyword, I am planning to leverage the zope.*
package. But the zope.component
package is really a huge package with lots of dependencies. Because I want to keep my project slim with less external dependency, I am wonder if it is useful/helpful to use the zope.*
packages. Especially I am planning to deploy my project in GAE, and it does not include the zope
package as a supported third-party package.
If not using zope.*
package, what is the best practice to implement Python project with interface oriented concepts?
You could use
zope.interface
. For example, it is used by Twisted, Pyramid frameworks.