关于一个成功的插件开发方法的思考
Kuma post in [About Codes]
2010-1-15 9:08 Friday
这两天在试图将一款WordPress的代码高亮插件WP-codebox移植到emlog,在从理论上实现之后,我试图将其真正变为emlog的插件的时候发现emlog3.4的编辑器有问题,在高亮插件安装后不能插入PHP等网页脚本代码,一旦插入,编辑器会对代码进行处理,最终导致代码乱七八糟,于是与emlog开发团队的其他人员讨论了这个问题,最终问题没解决,倒让我考虑了一下一个真正的、成功的插件应该如何开发。
我想,一款成功的插件至少应该实现如下几点:
- 1.插件开发完成后,其安装仅限于标准安装方式,即只需上传插件,然后后台启用即可,而不用对其他文件进行手动更改。
- 2.插件在对数据处理的时候,只能在数据显示在页面之前进行处理,而不能对原始数据进行处理。也就是不能更改数据库中的数据。
- 3.在插件功能上,应该尽量实现图形化操作。
- 4.在插件开启后,不会大幅度降低整个系统的运行速度,同时也不能过多的牺牲访问者的体验,例如过长增加页面的加载时间等。
- 5.插件的开发应该考虑到安全问题,不能让该插件引起整个系统的不稳定,以及出现漏洞导致系统危险。
- 6.插件应该具有良好的兼容性,不会轻易与其他插件冲突。
基于如上几点,我正在移植的代码高亮插件很难实现在emlog平台使用,其主要问题是本平台的编辑器不是很好,会对脚本内容进行过滤。然后想在emlog上实现,那么需要考虑下面几点:
- 1.修改其他核心文件。
- 2.更换编辑器
- 3.修改数据库
然而上面的几点都不符合自己提出的合理的插件开发,所以目前决定停止进一步移植本代码高亮插件。目前此代码高亮插件只是不支持php等脚本语言,但是不含<>标签的插件还是可以很好支持的。所以,决定将此插件私有化,用来自己贴ActionScript代码JS代码等等:)
当然,有需要的童鞋还是可以留言给我哦,然后我通过邮箱发送给你的。
下面来看看本插件效果:
package {
import flash.display.*;
import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLVariables;
import flash.net.URLRequestMethod;
import flash.utils.*;
import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;
import flash.display.SimpleButton;
import flash.text.TextField;
import flash.text.TextFieldType;
上面就是本插件的效果,可以实现对近50种代码实现高亮。具体大家可以看WordPress下的插件主页:http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/
耳朵长冻疮了
放假了

哥,你懂的……