unitTest插件模板

星期三, 三月 31st, 2010

unitTest是IntelliJ IDEA一个非常重要的插件,主要的功能是快速生成单元测试代码,同时在测试代码和被测试代码进行导航,方便切换,还有一个就是能够识别重构的rename,测试类会做自动调整。unitTest主要的功能是生成代码,主要是基于Velocity Template生成的,所以一个好的template会大大简化代码生成。个人之前写过一些文档介绍,但是模板文件都丢啦,这两天重新写了一下,放在github上,大家要是在用这个插件,可以参考一下,有什么问题,也可以提供给我。模板文件地址为: http://github.com/linux-china/unitTest_templates

IntelliJ IDEA Plugin大赛启动

星期二, 三月 30th, 2010

又一轮IntelliJ IDEA插件大赛启动啦,总的奖金:$15,000现金,$56,000软件授权,一等奖有$7,000现金奖励。大赛截止时间为4月30日。每年plugin大赛都会出现一些有创意和实用的插件,基本上IDEA的用户会受益。这次plugin大赛是在IDEA开源后举办的,相信插件的质量和功能会增强,毕竟很多会去阅读IDEA的代码,了解IDEA的运行机制,从而更好地去插件,每年都会参加一下,但是都是安慰奖,一件T-shirt,插件的创意非常关键,同时要花较大的精力去编写它,最终才能脱颖出来,期待能看到比较好的插件,个人也会从中受益。

PMIP插件介绍

星期天, 三月 28th, 2010

Poor Man’s IDE Plugin (PMIP) 与其他插件不一样,它更是一种扩展机制,允许我们同步编写脚本来扩展IDE工具功能。如果我们要给IDE工具扩展功能,通常是通过IDE plugin方式完成的,要编写plugin,然后进行部署,整个难度还是比较高的,于此同时如果我想针对特定项目编写一些plugin,IDE工具还是比较难实现的。PMIP就试图解决这些问题的,首先它通过JRuby和IDE进行交互,这样我们写一些脚本就可以完成功能扩展。同时PMIP是针对项目的,我们针对项目编写plugin,更具有针对性。PMIP有以下特性:

JRuby更灵活,功能也更强大,首先由大量的gem可以使用,我们稍加使用就能实现较强的功能
封装了IDE相关的API,如action,status bar等,这样我们操作IDE工具更方便,代码更简洁
动态加载的特性:当我们觉得需要调整自定义plugin逻辑时,修改脚本,然后刷新一下,就可以生效。
针对项目:PMIP会自动加载项目目录下的pmip子目录,而且相关的插件都是写在这个目录下,所以不同的项目会有不同的插件,满足个性需求。

目前PMIP使用并不广泛,主要它是要扩展IDE才能实现功能,但是如果你有一些想法,那么基于PMIP你就能完成各种特性。这里还需要澄清一个问题,那就是IDEA本身就支持JRuby,所以你写这些脚本很简单,代码提示和导航等非常简单,如果你想基于IDE做一些扩展,可以考虑一下PMIP。