Home > Database > Mysql Tutorial > 转移到NetBeans平台的10个技巧

转移到NetBeans平台的10个技巧

WBOY
Release: 2016-06-07 15:24:09
Original
1592 people have browsed it

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入 NetBeans可能是JSR-296项目的最大赢家,它能帮助开发人员在他们的项目中采取下一步行动,如果没有NetBeans,他们可能不知道该怎么做,如他们用JSR-296中的SingleFrameApplication类代替了JFrame,因为

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

    NetBeans可能是JSR-296项目的最大赢家,它能帮助开发人员在他们的项目中采取下一步行动,如果没有NetBeans,他们可能不知道该怎么做,如他们用JSR-296中的SingleFrameApplication类代替了JFrame,因为使用它能更容易与JSR-296(我拒绝把它称为Swing应用程序框架,SAF,因为这个名字太自大了,好像就没有其它Swing应用程序框架似的)接轨,特别是在NetBeans IDE的帮助下,许多开发人员都这样做了,迅速地看到了他们的开发成果。

    但遗憾的是JSR-296已经停止开发了,当你用最新的NetBeans IDE 6.9创建这种应用程序时,它会警告你JSR-296已经没有再继续开发了,如下图所示。

 转移到NetBeans平台的10个技巧
图 1 NetBeans 6.9新建Swing应用程序时的警告信息

    因此,现在有更多的开发人员需要NetBeans平台,因为只有它能为Swing应用程序提供最合理的下一步行动,特别是当你的代码中大量采用了JSR-296规范时,如你的代码中找不到JFrame,你可能将重点放在你的业务领域而不是基础设施了,因此你需要生命周期管理,Action系统和Task,你现在仍然需要它们,而这些NetBeans平台都还为你保留着。

    我与一些正在向NetBeans平台转移的开发人员深入交谈后,总结出转移到NetBeans平台的10个实用的技巧,如果你也有转向NetBeans的计划,不妨先学习一下别人的经验。

    1、按CRUD教程办事

    现在到处都有各种各样的教程可供下载阅读,甚至有视频教程可以观看,但我这里推荐的是Netbeans平台CRUD应用程序教程,我最近遇到一位对NetBeans平台感到很困惑的开发人员,当我向他推荐了这个教程学习后,他问的问题也显著不同了,这个教程涵盖了NetBeans平台的典型应用场景,通过它你可以学到更多,关于NetBeans平台,API,过程等一切需要了解的都应有尽有。没有理由不看这个教程就开始NetBeans之旅。

    2、打印NetBeans平台的Refcard

    面对NetBeans平台时一个很大的问题是作用域,换句话说就是,NetBeans平台到底能干些什么呢?你为什么要使用,什么时候使用?这个时候看视频教程是最有帮助的了,但你也应该打印最基本的NetBeans平台Refcard,它涵盖的内容很全面,甚至连最小的细节都不会放过,在你的编程过程中可以给你很多代码提示和编码技巧。

    3、原型

    快速实现一个原型,这样你才知道你需要些什么,任何事情都是想起来容易做起来难,因此使用原型可以尽早知道实现目标的难度,备份你的源代码,在NetBeans IDE中创建一个新的NetBeans平台应用程序,创建一个新的模块,然后将你的代码粘贴到这个模块中,接下来打包所有使用到的第三方开发库,根据需要设置依赖,创建一个TopComponent,然后在你的新应用程序窗口中显示一些数据,原型就搭建好了。

    4、将外部JAR转换成模块

    开发人员经常问的一个头痛的问题是“真的吗?我需要将我所有的库都打包成模块吗?为什么?”,有这种想法表示你想创建一个模块化应用程序,你可以从模块化中受益,如依赖管理,版本控制和信息隐藏,你甚至可以将多个JAR放在相同的模块中(在“库打包成模块向导”中按住CTRL点击或按住Shift点击),但是你需要思考将多个JAR放进同一个模块的缘由,因为你的目标是要创建一个模块化应用程序,因此只应该将那些应该放在同一模块的JAR组织在一起,不要顾此失彼。

    5、思考一下模块化的边界

    什么时候该创建一个新的NetBeans模块(或OSGi捆绑)?阅读“如何将应用程序拆分成模块”(http://java.dzone.com/news/how-to-split-into-modules)文档很重要。

    6、注册Action类

    自NetBeans 6.7以来,你通常不再需要NetBeans平台Action类的子类,在“我应该使用哪一个NetBeans平台Action类”(http://netbeans.dzone.com/news/which-netbeans-platform-action)文章中有详细的解释,为什么那样做就好?因为现在你可以直接从原来的应用程序复制ActionListeners和AbstractActions,然后粘贴到NetBeans模块即可,你需要做的就是正确地注册它们,然后就大功告成了,这意味着你的Action类转移到菜单和工具条了,从键盘快捷键调用它们就只是一个注册问题了,而不再涉及到复杂的编码。

    7、爱上层

    层是你最好的朋友,一个“层”就是一个XML文件,每个模块最多有一个层,应用程序启动时每一层都被添加到虚拟文件系统,你可以在层上注册你喜欢的东西,然后就可以从Java代码中读取这个层了,听起来似乎很抽象,但如果你看了“可插拔的JXTaskPane”示例(http://blogs.sun.com/geertjan/entry/pluggable_jxtaskpane)后,你就觉得很简单了,这也是你转移应用程序最具魔力的地方了,在层中创建一个文件夹(folder),命名为“Products”,然后每个模块提供的新产品在“Products”下注册一个文件夹,在你的代码中,你可以遍历Products文件夹,找出所有的产品,然后在应用程序的窗口中显示它们。服务提供者也可以在层上注册,具体请参考“NetBeans扩展点如何工作?”(http://netbeans.dzone.com/news/netbeans-extension-points)文章。

    8、保留JPanels

    你的应用程序中使用JPanels了吗?如果你用了,那么你应该感到很高兴,因为你可以无用做任何修改继续使用它们,创建一个新的TopComponent类,然后调用add(myJPanel)即可,就这么简单,你也可以通过选项或向导窗口来完成,例如,你发现JPanel可以被用来配置什么(在选项或向导窗口),以及作为窗口中的一个编辑面板,因此你可以在多个不同的地方重复使用它,只需要在你工作的NetBeans平台容器中调用add(myJPanel)即可。

    9、参与社区

    通过参与社区你一定会得到更多收获,在dev@platform.netbeans.org邮件列表中你可以看到重要的内容,各种各样的问题和响应的解答,你了解得越多,你越应该利用机会向别人分享你的经验,你也可以参与某些社区应用程序的开发(http://platform.netbeans.org/screenshots.html),为社区贡献一份力量。

    10、转移是一个过程

    51CTO认为转移是一个过程,不是一时半会儿就能完成的,可能需要发布几次产品的迭代,因此需要有相应的计划,例如,当你转移到NetBeans平台后发布第一个版本时,你可能只是简单地将JPanels转移到新平台的TopComponents,在下一个版本中,你可能想将你的业务对象打包成Node类,以便它们可以显示在资源管理器视图中,包括属性窗口等,这些都应根据你自己的步伐进行调整。根据要转移的规模,你花在转移上的时间可能需要数周或数月,这都很正常,如果你没有那么多时间,你应该考虑分步实施,为每一个版本确定好要转移的功能,没有什么规则可循,只要根据你自己的需要安排就行了。

    这就是我总结的技巧,读了这篇文章你有何感想呢?你还有其它建议吗?希望看到你的评论!

    原文名:10 Tips for Porting to the NetBeans Platform

    作者:Geertjan Wielenga

转移到NetBeans平台的10个技巧

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template