前言

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

//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. Python--day69--ORM正反向查找(外键)

    ForeignKey操作 正向查找 对象查找(跨表) 语法: 对象.关联字段.字段   示例: book_obj = models.Book.objects.first() # 第一本书对象 prin ...

  2. [转][Linux/Ubuntu] vi/vim 使用方法讲解

    vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...

  3. eclipse本地启动tomcat报错集锦

    1.eclipse本地添加tomcat服务器    打开Eclipse,单击“window”菜单,选择下方的“Preferences”: 找到Server下方的Runtime Environment, ...

  4. UVA 1625 "Color Length" (基础DP)

    传送门 •参考资料 [1]:HopeForBetter •题意 •题解(by 紫书) •我的理解 用了一上午的时间,参考紫书+上述博文,终于解决了疑惑: 定义第一个颜色序列用串 s 表示,第二个用串 ...

  5. 实体Bean

    持久化实体管理EntityManager EntityManager 在Java persistence规范中,EntityManager是为所有持久化操作提供服务的中枢.Persistence co ...

  6. H3C开启Ssh

    [H3C]ssh server enable                       //开启SSH服务 [H3C]user-interface vty 0 4 [H3C-ui-vty0-4]au ...

  7. 【record】#10

    反正最近就一直在1600分左右徘徊;好想回蓝名啊

  8. URL参数中加号“+”丢失的问题

    Java解决方法(推荐) URLEncoder.encode(urlParams,"UTF-8");

  9. Python9_类

    类的基础知识 属性:类变量.实例变量.方法:初始化方法 __init__  //初始化方法不是必须的:其他方法: //类的定义class Employee: empCount = 0 //类变量,有些 ...

  10. python 可变参数示例

    练习1:请使用**kw的方式,把可变的所有参数, # 算一字典的value乘积 def fun(**kw): product =1 for k ,v in kw.items(): if isinsta ...