netbeans php 10,转移到NetBeans平台的10个技巧

欢迎进入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已经没有再继续开发了,如下图所示。

test.jsp?url=http%3A%2F%2Fjava.chinaitlab.com%2FUploadFiles_8734%2F201006%2F20100629100548507.jpg&refer=http%3A%2F%2Fjava.chinaitlab.com%2Fadvance%2F812706.html

图 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

test.jsp?url=http%3A%2F%2Fwww.chinaitlab.com%2Fcms%2Fimages%2Flogo14.gif&refer=http%3A%2F%2Fjava.chinaitlab.com%2Fadvance%2F812706.html

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【1】项目代码完整且功能都验证ok,确保稳定可靠运行后才上传。欢迎下载使用!在使用过程中,如有问题或建议,请及时私信沟通,帮助解答。 【2】项目主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 【3】项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 【4】如果基础还行,或热爱钻研,可基于此项目进行二次开发,DIY其他不同功能,欢迎交流学习。 【注意】 项目下载解压后,项目名字和项目路径不要用中文,否则可能会出现解析不了的错误,建议解压重命名为英文名字后再运行!有问题私信沟通,祝顺利! 基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip基于C语言实现智能决策的人机跳棋对战系统源码+报告+详细说明.zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值