初学Java,使用JBuilder X。
作为一个使用Delphi超过5年的老鸟(惭愧,我还在用Delphi 5),自然免不了将JBuilder与其作一个对比。一个粗略的印象是,相比之下,JBuilder简直对程序员呵护有嘉,而Delphi却欠缺太多。JBuilder拥有太多Delphi(包括最新的Delphi 8)所不支持的特性,包括在键入代码的时候能够自动进行语法检查,对重构的支持,对javadoc的支持,对cvs等版本治理工具的集成,对junit的集成等等。从使用delphi改为使用jbuilder好比是刘姥姥进了大观园,眼花缭乱又满心欢喜!
撩开java语言的面纱,与之亲密接触,不想没一会功夫就碰了壁。个中详情容后再禀。
Java语言与delphi(语言)有太多不同。比如.java文件。一个java文件只能有一个public的类(可以有多个私有类)。而在delphi里却不存在这个限制。再比如delphi中一个.pas文件可以属于多个包,而按照java的规则,.java必须要写明所属的包名称,而且只能属于一个包。一个.java文件就有这么多的奥妙。
回过头来说碰壁的事儿。本想依着教科书上的例子做一个简单的jsp应用,于是按部就班地先创建了一个名为circle的类,然后计划对这个类做单元测试。本来,在jBuilder中增加一个testcase是很方便的——new一个testcase,然后根据wizard的提示一步步做,要害在于选择要作测试的类。结果,我如法炮制之后,没有看到IDE为我生成任何新的.java文件。纳闷之余,请教了邻座的一位高手。高手来之后依法炮制,仍无结果。无奈之下再请教另一位高手。结果再他和我都叹着气,几乎绝望的时候,他眼里灵光一动,抓住了bug的法门。原来是因为circle类的名称不符合规范。
等等!这是哪门子规范?
无言。屈服。
顺带来了一个重构,改了类名“Circle”。在记不起是第几次“如法炮制”之后,终于由IDE为我生成了一个测试用例框架。
Good,very good。难忘的一课。
末了,补充一下,第二位高手在没能搞定的时候,建议我重新启动jBuilder,他说“可能是JBuilder的bug问题,重启一下可能就好了——每当我们看到莫名其妙的现象时,就重启它。”