• 关于桌面界面和插件设计思想


    关于桌面界面开发:

    Desktop版本的界面换语言啦!

    原先考虑的JavaFX,熟悉了一个星期。

    它是一个动态脚本语言,理论上是可以作出更快速的开发,和Java类的互操作也有问题。

    可惜,目前的IDE(NetBeans IDE)不能把它的优势完全发挥出来,连开发JavaFX的NetBeans插件都是Beta版本的- -

    相比较,应该选择Swing。

    所以今天早上我把桌面版本的界面重新做了下设计,原型已经出来了。

    下午结合辞典引擎的服务,已经可以搜索词汇了 :-)

    不过,目前问题比较大的是性能问题,和上次讨论的结果一样,性能问题出来了。

    试验中,我加载了两部辞典(物理大小20.4Mb,词汇共计62万左右),索引文件完全加载后程序运行起来至少耗费50Mb内存。。。。

    关于索引的部分必须要重新设计一下!

    到目前为止,我们的第一轮迭代基本完成了(14号迭代0结束,刚好2个星期),大家要注意关注项目管理中心的素材、任务、缺陷、Issue的计划。

     

    关于支持Plugins的设计思想:
    现在的词库引擎核心是Fixed和Dynamic两类。Fixed下目前只有StarDict的查询引擎;Dynamic下有基于XML的查询/编辑引擎。

    我觉得可以把Fixed类型的词库查询引擎做成支持插件的设计,可以让其他开发人员扩展查询引擎。举个例子:

    1. John开发了一个支持dict.org辞典格式的引擎

    2. Vanessa开发了一个可以在WikiPedia上搜索词汇的引擎

    他们的引擎都实现了Fixed类型引擎的接口并编译成了Jar包,我们的辞典框架可以方便地选择所需要的辞典引擎。对用户来说,可能就是在下载词库 引擎Jar后点,在StongeAge的词库引擎管理界面里来个"Install Query Engine",以后可以方便地 选择/反选/卸载 各种引擎。只要词库查询引擎够数量,世界上还有什么单词查不到的呢?这大大方便了用户!

    上面只考虑了Fixed类型的词库查询因为Fixed的查询方法前人已经有辞典格式/搜索服务接口来规定了,要作edit是不可能的。

    但,这至少有两个优点:

    1. 我们可以集中努力去做Open & Real-time的特性

    2. 让其他开发词库引擎的开发者可以更专注地做好Fixed类型搜索

    以上只是目前的想法,技术方面也作了一些研究:

    OSGi4.1,eclipse3.x用的就是这个规范(基于Equinox框架)

    这个是Java插件设计目前在业界据说使用最好的,但技术本身的复杂度还需要继续一定时间来实验。

     

    好了,今天又罗嗦了一推,还是那句话:大家要积极讨论啊,交流有益身心健康:-)  
  • 相关阅读:
    编写一个脚本,用它来操纵QTP的运行
    URLbased 方式和 HTMLbased方式的差别(摘自关河)
    提供软件测试、软件开发相关服务
    数组内容的参数化问题
    IIS状态代码的含义
    不成熟的测试工具
    LR利用foxmail发邮件部分的脚本代码
    FTP的两种模式
    pop3的基本流程
    自动化测试在企业中的实施
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6470621.html
Copyright © 2020-2023  润新知