Pinghua 的个人资料诚志照片日志列表更多 工具 帮助

日志


12月30日

关于JAVA

一直处于转向JAVA的状态,一来因为工作,二来我喜欢JAVA,确切的说,我喜欢JAVA的社区,至于JAVA语言本身我不知道怎么说,可能是还没有完全熟悉他,现在把一些东西记下来,知道的兄弟们给我个答案,不知道的兄弟们就当一个初学者的小牢骚.

  1. 我写了第一个构造函数,然后写第二个构造函数,这个构造函数我要先处理一些东西,再调用第一个构造函数完成对象构造(这里面逻辑非常清楚),这个时候才知道原来对第一个构造函数的调用代码必须在第一行,语言里竟然有一个这样的规定,只好写了一个静态方法,在调用第一个构造函数的方法里直接调用这个静态方法,我的目的达到了,但是这个在其它地方毫无用处的静态方法让我写得心里不爽.
  2. 昨天老婆写一个页面的控制器,继承自Spring中的某个控制器,老婆重载了其中一个来写自己的业务逻辑,最后不管什么逻辑,都是直接转到成功页面,查的那是一个苦啊,最后才发现老婆写的业务逻辑从来没有被调用,我想应该是没有重载吧,我从Spring里直接COPY函数声明过来,还是没有用,还好我想起来有一个@Override的标注,写上后马上提示有错,再接着找才发现N个参数里,有一个参数引入单元引入错了,改正后马上好了.
    这里我觉得有两个问题,1是JAVA中所有方法不加说明都可以被子类重载,一来这让子类不知不觉就重载了一个方法而自己混然不知,二来子类以为自己的方法签名与父类方法一样就已经重载了,我所知的DELPHI与C#都在语言级别有专门的重载关键字,父类与子类心里都非常清楚自己重载了什么方法,哪些方法可以被重载.JAVA5里终于提供了一个标注,虽然感觉像是贴上的一块膏药,但终究好了一点.
    2是JAVA每一个单元一个类的做法让JAVA似乎重名的类非常多,引错了一个类似乎很多人都经历过,而在其它语言里,这种经历到是非常少.
  3. 因为用GWT的原因,在客户端只能够使用JDK1.4,才发现没有枚举类型,觉得枚举用处还是很广的,不知道为啥1.5之前都没有.
  4. 异常.很久以前看到JAVA的检查型异常机制,感觉那真是一个极为理想的世界,还希望DELPHI里要是也有这样的机制多好. 再后来发现理想的世界和现实世界似乎还真有一段路要走,优点也有变成缺点的时候,正好一直用的SpringFramwork,所有JAVA检查型异常都被他苦心的包装成了运行期检查,我也只看着这样的理想国度,在代码里还是尽量使用运行期检查.
  5. 简化使用.记得在DELPHI与C#里写组件,与组件功能同时考虑一起设计的还有组件的设计器,甚至感觉一个组件没有设计器就觉得不完整,觉得对不起观众(使用者),来到JAVA的世界才发现基本上都是靠文本或者是XML来配置的,开始的时候还不知道如何是好,现在虽然适应了些,但是出错的机会还是很多,往往一个程序还没有运行就得先在配置文件上查N久.觉得这个问题可能和JAVA世界里IDE一直纷乱有关,SUN是JAVA名义上的领导,但是在IDE上好多年都作为不大,JBuilder似乎做得还不错,只可惜英雄短命而且也贵,还好Eclipse让人非常兴奋,RSA出国后就没有用过,想想我用RSA把自己变懒了,到外面反而会找不到工作,还是老老实现的写XML配置文件吧.

话说回来了,纵观整个开发世界,除了JAVA我找不出来第二个我愿意进入的领域,没有一个语言有JAVA这么强的生命力、如此壮大的社区。

还有最重要的自由。在我看来,除开BSD许可,ApacheLicense就是这种自由奉献的代名词,并且很多人为之而努力着。也一直在关注Groovy与Grails社区,这一群可爱的人正在JAVA平台上努力实现他们软件开发的理想国度。

12月3日

驾照和想起来的几个笑话

  今天逃了一天的AMES的课,和老婆在家做驾照的题目。预约的下午3点,我们2点就到了,办完手续VICRoad工作人员就让我们直接上计算机考试去了,可能是因为职业原因,在做题的时候想了很多关于怎么样减化计算机操作,如何让每一个人都可以利用计算机进行操作的问题,驾照考试的这套应该是成功的,因为在澳洲的每一个人都要在这上面进行考试,不管你有没有计算机经验。虽然在考试的时候思路有点跑题,但是却一点也不敢怠慢,每一道题都看得仔仔细细,每次按上“确认”按钮的时候我都在想“这每一道题都是多少多少钱啊”,然后如果不确认就又回过头去再看一遍,以至于老婆比我后考,都比我先交卷:(
  在和老婆等分数的时候,我问了老婆之后才知道我犯了一个错误,题目是问如果你在路上看到交通事故,有人死了,而你没有协助,你的驾照会被吊销多少个月,有2个月、2年、10年来选,我想如果是我一定会帮忙的,但是如果我可能大概或许万一maybe没有帮忙,我的执照吊销两个月差不多吧,我承认我的对生命的看法是有严重问题的,更何况在这么一个注重生命、连交通法里都定义如何给动物让路的地方,怎么能够只吊销2个月,至少也要2年啊,10都不为过,心想这下了完蛋了,不会上次交的考试的钱就这么泡汤了吧。终于到后来PLMM叫我们,说我们考了Same scores, 97%, congratulations, 至此我们有了我们在澳洲的L牌。

  考完出来老婆问我她不清楚的一道题,说是车A,车B,车C,在一个什么路口,车A怎么开,车B怎么开,车C又想怎么开,最后车A到底应该怎么开,绕了半天没有绕清楚,做罢。
  后来去市场买菜,老婆站在一把菲菜前问我菲菜在哪里,怎么找不着了,我说不是在你前面么,她说这么小,不是菲菜,我说人家长得小已经够可怜了,你还说人家不是菲菜,真是大笨蛋老婆。

  有一日从Victoria Market买完菜回来,老婆说今天做猪肉吃,我回房间写程序,老婆在洗猪肉。
  “啊,这只猪怎么长了个青春痘?”
  我很诧异,脑袋里想像出猪长了个青春痘的样子,冲到厨房一看,我大笑起来,“大笨蛋老婆,这不是青春痘”。
  “啊?那是什么?”
  “是那个...”
  “是哪个?”
  “那个”
  “哪个?”
  “mimi...”

  又想起在广州的时候,和小A、那个时候还未成为老婆的老婆一起去帽封山爬山,老婆指着一窝竹子兴奋的说,“看那些甘蔗,长得好大啊。”我和小A听后马上笑得快昏了过去。

12月1日

在澳洲的第一个生日

  没想到室友从外面带回来了蛋糕,刚才还开了小小的生日Party,真是非常感谢。在FreeOZ上看到鸭子的回复,也是关于生日的,很是开心,MSN,QQ上也收到一些朋友们的祝福,真是非常开心。

  自从想要转到JAVA半个月以来,路途似乎都不怎么顺利,时间都浪费在了配置各种各样的三方类库上,与老婆一道悲叹现在想写写JAVA代码都成了一个奢望。

  先小心的将手机接上USB口,放上电池,手机竟然亮了,只是在显示屏上还有很多的水迹,我马上切断了电源,看来手机能接着用的可能性很大。买的时候比较了这部手机的几个版本,包括欧版、台版、韩版、港版和日版,当时就感觉日版最好,当然价格也贵出来几百,当时的感觉算上贵出来的这几百都比较值。想想以前还抵制日货的,但是日货的确是有优势。后来买了单反,几乎没得选择,日本的最好。

2007年12月1日

  今天我生日,昨晚过12点老婆祝我生日快乐后,两人又一起做完了两套驾照模拟题才入睡.虽然近1点才睡,因为心里一直惦记着的那些JAVA大杂烩,早上7点便早早的起了床,虽然是被梦中迎面冲过来的一条蛇所吓醒.

  终于在大概11点的时候,终于将GWT(google web toolkit)-Spring-Hibernate这一条线在项目中走通,想想这半个月来折腾,一个JAR的版本问题弄了我两天,最后不得不重建一个完整的第三方库项目,后来我想在eclipse设置GWT编译文件到布置目录,可能是设置错了,删除那个设置后,整个项目就没有办法编译通过了,只好新建一个然后把写的东西COPY过来,又花掉了半天.最后部署的tomcat怎么启动不了,总说一个"Error getConfigured"的错误,又找了N久,是APACHE一个公共包里MANIFEST.MF文件有问题.老婆在MyEclipse里做了个项目后,一直是某个SessionFactory无法正确创建,可怜的她还没有开始写代码呢就有错误,于是重新建了N个新项目,直到最后建立了个名叫"TNND"的工程后,终于找到原来是某个ASM版本不对,真是服了JAVA的世界,这半个月有70%的时间都花在了处理这些不知道错误的错误上.

  不管怎么说,眼前的这个项目将整条线都走通了,GWT-Spring-Hibernate, jackrabbit,quartz,Jmail,直是佩服自己,一直没有用过JAVA的我,自己建立的第一个项目就已经如此之复杂.
  "恭喜老公,走通了就休息下,我们一起去晾衣服吧."
  "嗯",我开始从洗衣机里往外掏衣服,掏到底的时候,我的使用不到一年的多普达P800赫然出现在我眼前.被洗衣粉充分清洗后,机身更新光洁如新,心里那个心痛啊,赶紧把机器拆了用电吹风吹干,现在还在一边晾着,晚上通电试一试,只能够祈祷了.

  将项目COPY给老婆后,老婆强烈反对使用GWT,理由是GWT不好找工作,但是我喜欢GWT,我觉得在WEB2.0, AJAX应用如火如荼的今天,他的成功只是时间问题,我们需要好好的利用google送给我们的礼物.两个人都很牛,没办法只得分道扬镳,她用struts2,我用GWT.

  谢谢雪儿,12点后她跟老婆说要祝我生日快乐,可怜我MSN,QQ都没有开,听老婆说后,我赶紧都打开,就等着她跟我说生日快乐了,哈哈.她告诉我我的生日可好记了,121,他们的气象号码.V