Ulipad-框架分析(一)

ulipad是一个limodou用python+wxPython编写的IDE,功能很强大,支持多种语言,自定义themes,内建python的shell等等,但是也有一些缺陷,比方说调试功能比较麻烦,代码风格也比较杂散,开发文档比较少,不容易进行二次开发,最新版本为4.0。有关ulipad的更多信息可以查看:

http://hi.baidu.com/limodou/

http://code.google.com/p/ulipad/

ulipad采用mixin方法进行主要框架的搭建,然后逐渐将界面窗口,菜单等添加进行去,添加的方法非常类似wordpress的插件编写方式。所谓的mixin方式,与C++的多重继承类似,只是python有自己的多重继承方式,又是动态语言,容易绑定的关系,因此更加灵活些。

ulipad的主要实现功能在modules和mixins两个文件夹下面,modules是主要框架实现功能,mixins目录下是各种功能的实现,整个结构不是特别清晰,未能够将界面与功能也区分开来。

自然,整个技术核心是mixin,在modules/mixin.py中的Mixin类实现的,有一个类变量,__mixinname__,表示继承自Mixin子类名称,然后通过调用initmixin方法来将类中的信息添加到__mixins_funcs_time_set__和__mixinset__两个dict中,通过__mixinname__来区分不同的类,不明白,为什么ulipad不使用metaclass技术。这个类提供了基本的插件调用方法,callplugin_once,callplugin,execplugin_once以及execplugin四个方法。

通过mixin.py中的setMixin和setPlugin方法,添加mixin方法和plugin方法。

原文链接: https://www.cnblogs.com/ubunoon/archive/2011/02/21/1959448.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    Ulipad-框架分析(一)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/21303

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月7日 下午11:20
下一篇 2023年2月7日 下午11:20

相关推荐