Java GUI设计利器—Netbeans介绍
一、下载Netbeans后直接解压缩即可运行
Netbeans是一个纯Java的程序。Windows、OS2、OpenVMS和Linux版是同一个程序,只不过通过不同的启动程序启动。这一点很好。纯C++的Java编译器速度比纯Java的快了很多。语法分析和编译部分,可以用纯C++写出来,比如Visual Age for java。当然C++的标准中缺少跨平台的动态连接库标准,是一个极大的失策,这是外话,不提。
Netbeans可以使用外部的编译器,比如jdk中的javac。当然javac也是一个慢家伙。通常Netbeans调用netbeans\bin\fastjavac\目录下的fastjavac来编译。我看到有Windows,Linux,Solaris三种。不知道OS2和OpenVMS版本的fastjavac哪里去了?
Netbeans支持GUI编程,在GUI编程过程中向导产生一个initComponents函数,类似于JBuilder向导产生的jbInit函数。
不过需要注意的是initComponents在编辑器中不可修改。这可能是来源于Java语法的一大缺陷。Java语法中并没有支持GUI design time的语法标签,对于编译器来说,在设计时从Java代码还原到设计窗口技术上太难。JBuilder允许程序员修改向导产生的jbInit函数,结果是JBuilder的GUIdesign经常出笑话,比如JBuilder好几个版本都存在的GUI设计时只认识this.setSize不认识this.setBounds的问题。Netbeans干脆不允许程序员修改initComponents函数,是好是坏还不一定。一般而言,Netbeans对于每一个可视化的.java文件都会生成一个.form文件。对于Netbeans编译器来说,在设计时从Java代码还原到设计窗口是通过解析.form文件,这样技术难度下降很多,也不会像JBuilder一样经常出低级笑话。当然这个问题的彻底解决需要Sun公司好好到Microsoft弦簧?VB的设计课程,只是不知道Microsoft要收多少学费,哈哈!!
Netbeans的initComponents函数中中文一般来说时经过Unicode编码过。这毫无道理。可能因为设计人员不懂亚洲字符的一些问题,为了保险起见,干脆编码了事。编码过的汉字在GUI设计窗口仍然是汉字。其它函数中的汉字不会自动编码。
二、使用向导生成代码
Netbeans支持倒入JBuilder的Project,只不过如果要修改由JBuilder生成的GUI代码,可能性基本为零。
Netbeans支持CVS,不支持Sourcesafe。JBuilder8支持Sourcesafe,不过经常出错,慎用!
Netbeans支持java格式的resource文件的多语言编程。不过,我一般将字符串放在.xml文件或数据库中,所以这一个功能对于我来说没有什么作用。