论坛首页 入门技术论坛

netbeans(1):开篇初步使用技巧

浏览 1510 次
该帖已经被评为新手帖
作者 正文
   发表时间:2010-01-03   最后修改:2010-01-05

     首先,谈下自己对Java的认识吧!

     网上不乏有人说Java老矣,或者说Java开发效率不行,.net是Java的3倍,到最近又有说法——ROR,试了就知道,试了连.net都不想了更别说Java了。的确新生事物有着更加鲜明的与当前需求想结合的特色,但是用的深了,真的那样吗?为什么不反过来说,Java如何如何的成熟呀。

     .Net开发为什么快?因为有一个高度集成的IDE环境,这个环境是微软搭建好的,但是你需要付费的,当然也有免费版,我一点都没了解更别提学过.net了,因此我无法说出收费版和免费版间的区别。因此,我只能羡慕下好了,也不去过多的想了,因为我想学好Java。

      我觉得Java是开发者的语言,就好像ruby groovy python等那样,你能做自己需要的。

从高水平讲,自己可以定制Java的JDK等,当然Java的IDE更是可以自己定制。

高水平的定制

如果说现成的,比如,我看到金蝶公司的jsf框架,他们就自己定制了基于eclipse的开发环境,可以自动配置好spring+hibernate(或JPA)+jsf的开发环境,并一站式生成实体以及service类,页面支持拖拽方式,类似.net开发环境,并且这都是免费的。他们靠卖自己服务器赚钱,因为框架他们改了,有一部分特性只有他们支持,正是因为此,我才没用。我选择了richfaces作为富客户首选。金蝶自己在框架里加入了很多注释,我感觉有些别扭,比如在受管bean里通过id注释来绑定页面里的id,有点不合规范。JSF规范可不会这么做,这不是可持续发展形式的。

spring在忽悠我们吗?

这些年来大家都spring了,spring真轻量吗?真的那么好吗?殊不知多少配置文件呀。殊不知.net是Java效率的3倍,就是跟SSH比出来的,为什么?1 代码集成 2 调试与部署。 看到一些文章说.net调试与自动部署很方便很快捷,而ssh,一旦重新部署,你就看着调试窗口等去吧。一旦改动类文件,ssh就得先销毁然后在重新初始化。

      可是,很少有人注意到,其实EJB3尤其最新的EJB3.1重部署不会超过3秒。甚至是一眨眼就好了。

难道spring不是在忽悠大家吗?EJB高度集成,很多事情可以交给容器去做。spring说自己轻量级说EJB重量级,我觉得目前可以调转过来了。因为SSH开发实在太慢了,不说别的,光重新部署都得点时间。当然可以测试驱动开发,不过这也需要写代码不是,况且有些时候,就是列出一些数据,还是看下比较好,顺便看些页面布局。

即便不说SSH开发慢,但是那个struts也应该尘封了,我现在自己做服饰网,快完了,struts真够笨重的,我用它的js验证功能,它会在页面后面附带高达60多K的js。

struts不如spring自己带的MVC,MVC是对struts的改进。

然后就是struts2了,它设计较复杂,拦截器都一堆,效率降低不少。如果和spring集成,简直多余,spring都有拦截机了,没必要用struts2的了,除非单独使用struts2,或者考虑和其他类似spring的框架集成可能有用。

我觉得spring的出路,就是集成,集大成。把东西统一起来,使得开发一路顺风就好了。另外,自动重新部署学下EJB,或者说.NET,实现按需重部署,目前这种重部署太慢了。这两点弄好了spring就无敌了。没人嘲笑Java开发慢了。

当然,我们如果使用EJB容器的话,就不至于了,但是EJB容器消耗比较大,最好弄个2g内存,那样会很爽。

如果EJB不那么高傲,而是可以按需配置,它将是更好的选择,因为它是标准,标准被以标准的方式支持。

 

最好的还是EJB和spring走到一起,看看spring为JDBC以及映射框架做的工作,就很好。起码有个模板可以简化代码工作。

进入正题

     目前,我有了一个打造自己开发工具的计划,我发现很多的操作都是在重复而已,唯一不同的地方就是名字。

因此,自己完善IDE功能,也算是java的一大乐趣,并且官方也是支持的,甚至可以将自己的插件贡献出去。

首先,低级做法就是用现有IDE提供的功能进行定制,比如定制模板

其次,可以自己写些拖拽组件,这些官网有教程,自己改下需要拖入的内容就可以了,这个难度也不高

最后,扩展插件,最近我在研究netbeans的struts插件,希望能够扩充功能。

 

netbeans在安装新版本后,将会询问是否导入上一版本的东西,点同意,那么以前自己的东西将被拷贝到新版IDE中继续使用。因此,你的任何改进和优化不会白费,如果在新版本中不能运行,它会提示你,你再改下就好了。

eclipse就没这些好处了。

 

可见,netbeans的继承性做的很好。

上面述及部署问题,我查了点资料,应该得益于服务器的热部署功能,tomcat不具备热部署能力,因此导致重部署很慢,开发效率低。glassfish支持热部署,因此改动类文件后,部署才那么快。

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics