IntelliJ下使用Code/Live Template加快编码速度:程序员的工作不是写程序,而是写程序解决问题
2016-07-07 20:34
656 查看
我们每天都在写代码,有些代码有结构性的相似,但不是所有的代码都可以被抽成方法。在这种情况下,我们应该考虑使用template的方式加快我们的开发速度。这篇博客会先介绍IntelliJ下已经有的一些code/live template,然后介绍如何自定义template。
1.IntelliJ下已有的template
在Java中,我们时常会遇到遍历一个iterable的情况。如下所示:
for (Integer item : items) {
//...
}
你可以选择一个字母,一个字母的敲,但是在IntelliJ下面,你只需要输入iter再按TAB键,就可以自动生成这个代码,和原来的代码比起来,你需要敲键盘的次数少了几倍。
这个时候,红色的框框部分就是当前你的编辑区域,因为我之前有一个items的变量,这里IntelliJ会建议Iterable是items。如果你觉得不对也可以修改,确认后敲Enter。
敲了回车以后,就进入下一个编辑的部分,而不需要你手动的去移动光标。确实很Intelligent啊。
IntelliJ中提供了很多现有的Code/Live Template,你可以在Settings中找到这些已有的template:
比如sout可以输出System.out.println(...), ifn可以输入if (xxx == null) 等等。学习这些template,并且灵活运用,可以缩短你敲键盘的速度。
2.自定义Live Template
IntelliJ提供了很多现成的template。但你也可以根据自己的需要创建新的template。举个例子,我们经常在测试代码中写出如下的代码:
assertThat(person.getAge(), is(18));
我们会写很多次的assertThat(..., is(...))。每次这样去敲,让我觉得很烦,
我们来看如何在IntelliJ中配置这个模板来简化这个输入。
如上图所示,进入IntelliJ的Settings的Live Template,我们创建一个新的template:ati。
1)缩写名(Abbreviation):ati。ati就是assertThat(..., is(...))的缩写,在以后,你只需要输入ati,就有办法自动变成assertThat(..., is(...));了
2)模板文本(Template text):assertThat($result$, is($expect$))。这里被$括起来的部分就是敲了Enter以后,光标会停留的部分。
3)使用情况(Applicable):statement。这表示你创建一个statement的时候,可以用到这个template。
4)选项(options):Enter。这里我选择的使用Enter出发ati变成完整的assert语句。不过建议使用TAB,这样的话,和IntelliJ自己提供的template保持统一。
这样就配好了template。让我们来试验一下:
第二行就是提示template,这个时候轻盈的按下TAB键,就会看到:
光标就正在等待你输入了。
来自:http://blog.csdn.net/kiwi_coder/article/details/17113759
相关文章推荐
- 面试题25:二叉树中和为某一值的路径
- 优雅编程之做1个“正常”的程序员
- 剑指Offer:面试题27——二叉搜索树与双向链表(java实现)
- 基类指针创建子类对象 构造顺序 面试必考
- Mysql学习总结(21)——MySQL数据库常见面试题
- Mysql学习总结(21)——MySQL数据库常见面试题
- 剑指Offer:面试题26——复制复杂的链表(java实现)
- Java公司面试题集锦(四)
- 剑指offer-4-面试21:包含min函数的栈
- 对代码不满足,是任何真正有天才的程序员的根本特征
- 剑指Offer:面试题25——二叉树中和为某一值的路径(java实现)
- Java公司面试题集锦(三)
- 程序员常常登录的技术网站
- 说的烂掉的面试话语 "看源码"
- .NET面试题系列[3] - C# 基础知识(1)
- 一个面试官的忠言..
- 黑马程序员_Java基础_我的Day07学习笔记
- 高级MySQL数据库面试问题 附答案
- java面试题
- 剑指Offer:面试题24——二叉搜索树的后序遍历序列(java实现)