前言

有时,您需要标记部分代码以供将来参考,比如: 优化,改进,可能的更改,要讨论的问题等。 通常我们会在代码中加入如下的标记表示待办:

//TODO 我将要在这里做 xxx

你这样做,别人也会这样做。一时间,项目中可能会存在大量的 TODO,当你搜寻你的 TODO 时也就变得非常麻烦,如同石沉大海,也就失去了这个标记的意义。

IntelliJ IDEA允许我们添加特殊类型的注释,使得这些注释在编辑器中突出显示,它们被索引,并在 TODO 工具窗口 中列出。这样,我们就容易追踪自己的 TODO 了。

默认的 TODO

默认情况下,IntelliJ IDEA识别两种模式:小写和大写的 TODOFIXME 这些模式可在任何受支持文件类型的行注释和块注释内部使用。我们可以根据需要修改默认模式或添加自己的模式

如上图,我们可以创建多行的 TODO (类似 Spring Boot 中的 YAML 配置多个值),需要缩进第一行之后的注释行。如果没有缩进,则将行视为常规注释行

要禁用多行 TODO 项目,使用快捷键 ⌘ + , 打开 Preferences, 搜索 TODO (Editor | TODO), 你会看到如下界面

要查看系统中的所有 TODO,请打开 TODO 工具窗口 (快捷键 ⌘ + 6 )。切换选项查看 TODO 范围:

  • 从当前项目中的所有文件
  • 仅基于当前文件的范围
  • 指定范围的文件
  • 活动的变更列表

到这里 Intellij IDEA 默认提供的 TODO 就介绍完了,为了能更快的找到我们自己的 TODO,我们就需要进行自定义

自定义 TODO

重新打开 TODO 位置,新增 TODO item,这里新增 optimize,用于标识待优化内容

添加个过滤器,用于 TODO 的分组

随便添加一个优化备注,通过以上介绍的功能,快速定位到我们自己的 TODO

如果你的待办事项通常是相对固定的描述,你也可以配合 Live Template 快速生成 TODO 内容

高清大图,请查看原文:小小TODO也有大道理

总结

当团队规模很大,你又同时有很多待办的时候,TODO 特性可以帮助我们做标识,自定义 TODO 可以帮我们快速定位,我们可以充分利用这个特性,但是

定期清理 TODO

灵魂追问

  1. 你觉得项目中代码有哪些不规范/不够整洁的地方?(欢迎到博客下方留言讨论)

欢迎持续关注公众号:「日拱一兵」

  • 前沿 Java 技术干货分享
  • 高效工具汇总 | 回复「工具」
  • 面试问题分析与解答
  • 技术资料领取 | 回复「资料」

以读侦探小说思维轻松趣味学习 Java 技术栈相关知识,本着将复杂问题简单化,抽象问题具体化和图形化原则逐步分解技术问题,技术持续更新,请持续关注......


小小TODO标识,你用对了吗?的更多相关文章

  1. eclipse使用技巧之 //TODO标识

    通常有三种方式去表示你的待办: //TODO 待实现 //XXX 勉强可以工作,但是性能差 //FIXME 代码错误,必须修复. 在task窗口可以查找所有TODO. 使用ctrl + K 去单页面定 ...

  2. IntelliJ IDEA的这个接口调试工具真是太好用了!

    你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it well enough ...

  3. JUnit4在Eclipse中的使用

    测试是项目开发中很重要的一环.实际上,建议的项目前期编写过程是:构思-> 编写单元测试代码-> 编写接口->编写实现类-> 测试实现类->编写主类....JUnit是一个 ...

  4. JAVAEE——BOS物流项目11:在realm中授权、shiro的方法注解权限控制、shiro的标签权限控制、总结shiro的权限控制方式、权限管理

    1 学习计划 1.在realm中进行授权 2.使用shiro的方法注解方式权限控制 n 在spring文件中配置开启shiro注解支持 n 在Action方法上使用注解 3.★使用shiro的标签进行 ...

  5. VS Code 编辑器

    使用VS Code 编辑器有一段时间了,感觉非常好用,已经成为了我的第一选择了.现在需要学习了一下了. 1,更改编辑器的默认设置 文件 =>首选项 => 设置 或 ctrl + ,(逗号) ...

  6. 从 demo 到生产 - 手把手写出实战需求的 Flink 广播程序

    Flink 广播变量在实时处理程序中扮演着很重要的角色,适当的使用广播变量会大大提升程序处理效率. 本文从简单的 demo 场景出发,引入生产中实际的需求并提出思路与部分示例代码,应对一般需求应该没有 ...

  7. 【转】代码中特殊的注释技术——TODO、FIXME和XXX的用处

    (转自:http://blog.csdn.net/reille/article/details/7161942) 作者:reille 本博客网址:http://blog.csdn.net/reille ...

  8. Java SE 基础:标识(zhì)符

    Java SE 基础:标识(zhì)符 一.标识符定义 标识符,就是给类.接口.方法.变量等起名字时的字符序列 二.组成规则与注意事项 1.组成规则 英文大小写字母 数组 $ 和 _ 2.注意事项 不 ...

  9. 关于几种编程过程中的注释(TODO、FIXME、XXX等)

    最近看别人写的代码,注意到很多规范的代码的注释写的都特别好.只是不太明白TODO.FIXME这些事什么意思.查阅资料,看到一篇博客,遂转载而来,以供今后查阅. (转载地址http://www.cnbl ...

随机推荐

  1. Android 设置TextView字体颜色

    设置TextView字体的颜色其实很简单,尤其是直接在XML文件中,可以直接通过textColor属性指定颜色值,达到设置文本颜色的效果:那在代码中如何动态设置字体的颜色值呢? 接下来,介绍如何通过J ...

  2. python yield 和 return 对比分析

    相同点:都是返回函数执行的结果 不同点:return 在返回结果后结束函数的运行,而yield 则是让函数变成一个生成器,生成器每次产生一个值(yield语句),函数被冻结,被唤醒后再产生一个值 例子 ...

  3. H3C 帧中继虚电路

  4. scala资料总结,一些小技巧

    scala资料总结,一些小技巧 1.得到每种数据类型所表示的范围 Short.MaxValue 32767 Short.MinValue -32768 Int.MaxValue 2147483647 ...

  5. 3-7 彻底搞清楚unicode和utf8编码

  6. mpvue的坑,持续更新-.-

    mpvue... 坑 怎么说呢,去github看一下,发现还是有很多问题没有解决... 不支持filter 亲,到现在还没有支持filter哦.只能用替代方法了,用computed或者渲染前先处理数据 ...

  7. linux scull 中的缺陷

    让我们快速看一段 scull 内存管理代码. 在写逻辑的深处, scull 必须决定它请求的内 存是否已经分配. 处理这个任务的代码是: if (!dptr->data[s_pos]) { dp ...

  8. C# 对 byte 数组进行模式搜索

    本文告诉大家几个方法从 byte 数组找到对应的相同序列的数组 最简单的方法是进行数值判断,但是代码最少是使用Linq ,效率比较高是使用 Boyer-Moore 算法,下面就告诉大家几个算法的代码 ...

  9. 深浅Copy的理解

    在python里对对象进行拷贝有三个,即赋值,深拷贝,浅拷贝. 而对象又分为两种,一种是不可变对象(字符串.元组.数字 ),一种是可变对象(列表.字典). 而深浅拷贝有三种情况:拷贝的是不可变对象.拷 ...

  10. Linux 内核 MCA 总线

    微通道体系(MCA)是一个 IBM 标准, 用在 PS/2 计算机和一些笔记本电脑. 在硬件级别, 微通道比 ISA 有更多特性. 它支持多主 DMA, 32-位地址和数据线, 共享中断线, 和地理 ...