基于Flask的Web应用程序插件式结构开发

2018-11-26 07:58:58来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

        事实上,很多应用程序基于插件式结构开发,可以很方便了扩展软件的功能,并且这些功能完全可以依托于第三方开发者,只要提供好接口和完备文档,比如wordpress、谷歌火狐浏览器等。

Python这样的动态语言天生就支持插件式编程。与C++相比,Python已经定义好模块的接口,想要载入一个插件,一个__import__()就能很轻松地搞定。不需要特定的底层知识。而且与C++等静态语言相比,Python的插件式结构更显灵活。因为插件载入后,可以利用Python语言的动态性,充分地修改核心的逻辑。

——摘录于“如何设计插件式结构的程序,兼谈Python语言的动态性”

        个人在开发个人博客站中,由于为了更“高大上的效果”,参考了一些文章和wordpress插件代码改造成了简单的插件式,把一些内置的“功能点”改造成为了插件包。

        后期把相关功能独立成一个程序,托管到GitHub,经过重构,改写成Flask扩展,名:Flask-PluginKit,欢迎感兴趣的开发者fork代码提交pull request

----------------------------------------------完美分割线-----------------------------------------

Flask-PluginKit

基于Flask的插件式开发工具(Web program plugin development kit based on flask).

GitHub:https://github.com/staugur/Flask-PluginKit

PYPI:https://pypi.org/project/Flask-PluginKit/

文档:https://flask-pluginkit.readthedocs.io/

安装(Installation)

$ pip install flask-pluginkit

普通模式(Usage)

from flask_pluginkit import PluginManager
plugin = PluginManager(app)

工厂模式(The factory pattern)

from flask_pluginkit import PluginManager
plugin = PluginManager()
plugin.init_app(app)

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:第二十七天- 网络通信协议 TCP UDP 缓冲区

下一篇:django数据查询之F查询和Q查询