一   各种GUI开发插件的特色

Eclipse并不自带GUI的可视化开发工具,那么如果要在Eclipse进行可视化的GUI开发,就需要依靠第三方的插件。

1. Visual Editor

Eclipse官方提供了一个叫做Visual Editor(VE)的开源GUI插件,功能还是比较强。可以根据用户的界面GUI设计,自动生成相应的JAVA代码。同样也可以通过相应的JAVA代码,生成其匹配的可视化GUI编辑界面。不过VE缺点比较大,我从3.1到3.2之前一直在用VE,没有多少改观。VE是通过另外启动一个JVM来模拟执行GUI的class,然后在Eclipse的界面内生成一个可视化效果。

回顾一下Visual C++,NetBeans等其它IDE进行GUI可视化的方法,都是基于另外一个界面管理资源文件,非用户可以直接修改的。而直接通过程序代码来管理可视化的GUI编辑器,就需要极强的代码parse能力。很可惜,VE想这样做,确没有能够做到。

VE使用起来问题很多,网上有网友直接评价说VE是“可用性不强”。我自己用起来的感觉,问题就出在一下几个方面:

1). 另外启动JVM速度很慢,而且如果要同时打开几个Visual Class,那么就要启动几个JVM,内存消耗也大。而且,有些时候,反复打开关闭一个Visual Class,JVM还启动不起来。

2). 对于用户自己编辑的可视化Java代码的parse能力很弱。常见的错误就是,明明是正确的可视化GUI代码,但是VE里面窗口打开半天,结果只能显示一把叉。很多时候,就根本不能显示出一个完整的可视化窗口。而对于窗口上某个控件的定位能力不强,用户自己的代码稍微转几道弯儿,VE就不知道这个控件是在哪里产生的了,顶多只能显示出来,但是无法可视化编辑。

4).  3.1的VE编辑的代码到了3.2的VE里面,显示出来完全不一样了。

5).  安装比较麻烦,还需要用户自行去安装不只一个的辅助插件。

综上所述,VE真的“可用性不强”

2. SWT-Designer

SWT-Designer是大家公认的,最强的Eclipse下开发GUI的插件http://www.swt-designer.com/。很多Eclipse书籍上都是直接拿SWT-Designer来讲解如何在Eclipse开发GUI界面程序。不过SWT-Designer是一个收费的插件。不收费的是基础版本,功能受到很大的限制。当然,网上也有完整版的破解版。SWT-Designer做得比较大,6.0最新的安装文件有几十M,可想其功能之强大。

3. jigloo

jigloo严格意义上来说也是收费的,不过他提供了non_commercial的版本,而这个版本的功能和commercial是完全一样的http://www.cloudgarden.com/jigloo/。作为个人开发来说,是不受限制的。jigloo很小,最新的版本才3MB多,安装也比较简单。

jigloo同时支持SWT和Swing。

jigloo也是完全基于Java代码的,不过它的code parse的能力远比VE要强,也要快。至少我很多在VE下出现问题,不能显示的Visual Class可以很好地在jigloo下编辑,至今还没有遇到jigloo不能编辑,parse出错的时候。而jigloo还可以集成了一写比较好的Java GUI风格代码的支持,功能上比VE要强大一些。

当然,3MB多的插件,再强也强不过SWT-Designer完整版的,但是比其基础版的要好很多。而SWT-Designer也并不是完全基于JAVA开发的,比如Windows版本的,还携带了dll文件。而jigloo是完全基于JAVA开发的,下载下来只有一个class的zip文件,也支持Eclipse的在线安装。

二 jigloo的安装和使用

jigloo的安装很简单,和其它Eclipse插件一样,不需要任何安装程序,直接解压出来就行了。

创建新的窗口,直接输入File->New->Others->GUI Forms就可以了。

而如果要打开一个已经存在的Visual Class,可以直接右键点击,选择Open With->Form Editor打开就可以了。打开后,首先要进行code parse,不过这个速度很快,也不需要像VE那样还启动一个JVM。

三. 总结

根据3大Eclipse的GUI开发插件可以看出,基本都是基于Java code的GUI编辑管理。这种编辑器管理,当然就比以前Visual C++那样管理Windows界面程序要困难很多。但是,现行的很多IDE,比如Visual Studio .NET,2005都还是能够做得比较快。主要的就是要看起code parsing的能力。

VE前面的缺点已经总结得比较多,不知道这个官方的插件什么时候才能让人真正放心。作为开发者来说,心里还是最想给VE加把劲的,毕竟VE是开源的,随便用的。

SWT-Designer功能最强大,可惜价格不低。而jigloo可谓介于两者之间,对于个人开发者来说,可以免费使用,而且其功能也足够到开发各种大型的GUI应用程序了,应该是一个合适的选择。

eclipseGUI的可视化开发工具插件的更多相关文章

  1. wxwidget wxpython 可视化开发工具

    wxwidget官方建议的工具集合:http://wiki.wxwidgets.org/Tools 支持wxpython可视化开发工具 wxFormBuilder wxGlade wxDesigner ...

  2. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  3. React 可视化开发工具 Shadow Widget 非正经入门(之五:指令式界面设计)

    本系列博文从 Shadow Widget 作者的视角,解释该框架的设计要点.本篇解释 Shadow Widget 中类 Vue 的控制指令,与指令式界面设计相关. 1. 指令式界面设计 Vue 与 A ...

  4. React 可视化开发工具 Shadow Widget 非正经入门(之六:markdown)

    本系列博文从 Shadow Widget 作者的视角,解释该框架的设计要点.本篇讲解 Markdown 在 Shadow Widget 中的应用. Markdown 在 Shadow Widget 中 ...

  5. React 可视化开发工具 shadow-widget 的非可视开发方法

    Shadow Widget 提倡在可视设计器中开发用户界面,输出转义标签,而非 JSX.许多童鞋可能不知道 SW 同样支持用 JSX 设计界面,开发体验比原生 React 编程好出很多,本文就介绍这方 ...

  6. IDEA 开发工具-插件{[转载]

    00 idea 开发工具使用技巧 01 idea插件推荐-- 02 IDEA插件 03 IDEA值得推荐的20款优秀的插件 04 IDEA插件精选」安利一个IDEA骚操作:一键生成方法的序列图

  7. extjs 可视化开发工具

    不清楚Ext可视化的可以看一下http://www.screencast.com/users/JackSlocum这里的三个视频哈. 安装和汉化的步骤 第一步下载:Ext需要支持AIR的支持 下载并安 ...

  8. UnityVR Steam_VR开发工具插件---VRTK 自带案例分析

  9. chrome安装react-devtools开发工具插件

    1.去git上下载react-devtools文件到本地,https://github.com/facebook/react-devtools 2.进入到react-devtools-master文件 ...

随机推荐

  1. 2018.09.25 poj2068 Nim(博弈论+dp)

    传送门 题意简述:m个石子,有两个队每队n个人循环取,每个人每次取石子有数量限制,取最后一块的输,问先手能否获胜. 博弈论+dp. 我们令f[i][j]f[i][j]f[i][j]表示当前第i个人取石 ...

  2. 2018.08.18 NOIP模拟 game(数位dp)

    Game 题目背景 SOURCE:NOIP2015-SHY4 题目描述 Alice 和 Bob 正在玩一个游戏,两个人从 1 轮流开始报数,如果遇到 7 的倍数或者遇到的这个数的十进制表示中含 7 , ...

  3. yii2 ActiveRecord的生命周期

    AR的生命周期 http://www.yii-china.com/doc/guide/db_active_record.html 理解AR的生命周期对于你操作数据库非常重要.生命周期通常都会有些典型的 ...

  4. 山东省第七届ACM竞赛 C题 Proxy (Dijkstra算法,单源路径最短问题)

    题意:给定0-n+1个点,和m条边,让你找到一条从0到n+1的最短路,输出与0相连的结点... 析:很明显么,是Dijkstra算法,不过特殊的是要输出与0相连的边,所以我们倒着搜,也是从n+1找到0 ...

  5. Android基础之使用Fragment控制切换多个页面[转]

    Android官方已经提供了Fragment的各种使用的Demo例子,在我们SDK下面的API Demo里面就包含了Fragment的各种使用例子,需要看Demo的朋友,直接看API Demo那个程序 ...

  6. docker 命令介绍

    查看镜像 docker images: 列出imagesdocker images -a :列出所有的images(包含历史)docker images --tree :显示镜像的所有层(layer) ...

  7. noip第11课作业

    1.    数字比较 定义一个函数check(n,d),让它返回一个布尔值,如果数字d在正整数n的某位中出现则返回true,否则返回false. 例如:check(325719,3)==true:ch ...

  8. bootstrap 问题

    less; sass: css预处理:可以直接使用.css,也可以修改.less,生成定制化的css CDN: 服务,使用这个效果会更好.theme一般不引入,jquery一般在js之前引入. 使用b ...

  9. Java IO流详尽解析(转)

    流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  10. Elasticsearch 健康状态处理

    笔者在自己的 ubuntu 服务器上使用 GET /_cat/health?v 命令时,返回值如下所示 可以看到集群状态为 yellow,这是什么意思呢?原来在 es 的集群状态中,有三种情况,官网描 ...