小小TODO标识,你用对了吗?
前言
有时,您需要标记部分代码以供将来参考,比如: 优化,改进,可能的更改,要讨论的问题等。 通常我们会在代码中加入如下的标记表示待办:
//TODO 我将要在这里做 xxx
你这样做,别人也会这样做。一时间,项目中可能会存在大量的 TODO
,当你搜寻你的 TODO
时也就变得非常麻烦,如同石沉大海,也就失去了这个标记的意义。
IntelliJ IDEA允许我们添加特殊类型的注释,使得这些注释在编辑器中突出显示,它们被索引,并在 TODO 工具窗口
中列出。这样,我们就容易追踪自己的 TODO
了。
默认的 TODO
默认情况下,IntelliJ IDEA识别两种模式:小写和大写的 TODO
和 FIXME
这些模式可在任何受支持文件类型的行注释和块注释内部使用。我们可以根据需要修改默认模式或添加自己的模式
如上图,我们可以创建多行的 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
灵魂追问
- 你觉得项目中代码有哪些不规范/不够整洁的地方?(欢迎到博客下方留言讨论)
欢迎持续关注公众号:「日拱一兵」
- 前沿 Java 技术干货分享
- 高效工具汇总 | 回复「工具」
- 面试问题分析与解答
- 技术资料领取 | 回复「资料」
以读侦探小说思维轻松趣味学习 Java 技术栈相关知识,本着将复杂问题简单化,抽象问题具体化和图形化原则逐步分解技术问题,技术持续更新,请持续关注......
小小TODO标识,你用对了吗?的更多相关文章
- eclipse使用技巧之 //TODO标识
通常有三种方式去表示你的待办: //TODO 待实现 //XXX 勉强可以工作,但是性能差 //FIXME 代码错误,必须修复. 在task窗口可以查找所有TODO. 使用ctrl + K 去单页面定 ...
- IntelliJ IDEA的这个接口调试工具真是太好用了!
你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it well enough ...
- JUnit4在Eclipse中的使用
测试是项目开发中很重要的一环.实际上,建议的项目前期编写过程是:构思-> 编写单元测试代码-> 编写接口->编写实现类-> 测试实现类->编写主类....JUnit是一个 ...
- JAVAEE——BOS物流项目11:在realm中授权、shiro的方法注解权限控制、shiro的标签权限控制、总结shiro的权限控制方式、权限管理
1 学习计划 1.在realm中进行授权 2.使用shiro的方法注解方式权限控制 n 在spring文件中配置开启shiro注解支持 n 在Action方法上使用注解 3.★使用shiro的标签进行 ...
- VS Code 编辑器
使用VS Code 编辑器有一段时间了,感觉非常好用,已经成为了我的第一选择了.现在需要学习了一下了. 1,更改编辑器的默认设置 文件 =>首选项 => 设置 或 ctrl + ,(逗号) ...
- 从 demo 到生产 - 手把手写出实战需求的 Flink 广播程序
Flink 广播变量在实时处理程序中扮演着很重要的角色,适当的使用广播变量会大大提升程序处理效率. 本文从简单的 demo 场景出发,引入生产中实际的需求并提出思路与部分示例代码,应对一般需求应该没有 ...
- 【转】代码中特殊的注释技术——TODO、FIXME和XXX的用处
(转自:http://blog.csdn.net/reille/article/details/7161942) 作者:reille 本博客网址:http://blog.csdn.net/reille ...
- Java SE 基础:标识(zhì)符
Java SE 基础:标识(zhì)符 一.标识符定义 标识符,就是给类.接口.方法.变量等起名字时的字符序列 二.组成规则与注意事项 1.组成规则 英文大小写字母 数组 $ 和 _ 2.注意事项 不 ...
- 关于几种编程过程中的注释(TODO、FIXME、XXX等)
最近看别人写的代码,注意到很多规范的代码的注释写的都特别好.只是不太明白TODO.FIXME这些事什么意思.查阅资料,看到一篇博客,遂转载而来,以供今后查阅. (转载地址http://www.cnbl ...
随机推荐
- Python--day47--mysql执行计划
1,什么是mysql执行计划? 让mysql预估执行操作:在要执行的语句前面加explain,就不会真的执行sql语句,只是给出了要执行的数据的情况,如大约有多少条,查询类型.
- tf.variance_scaling_initializer() tensorflow学习:参数初始化
CNN中最重要的就是参数了,包括W,b. 我们训练CNN的最终目的就是得到最好的参数,使得目标函数取得最小值.参数的初始化也同样重要,因此微调受到很多人的重视,那么tf提供了哪些初始化参数的方法呢,我 ...
- 2018-8-3-WPF-读取硬件序列号
title author date CreateTime categories WPF 读取硬件序列号 lindexi 2018-8-3 11:8:2 +0800 2018-8-2 19:28:6 + ...
- 《代码整洁之道 中文版》高清 PDF 电子书下载
代码整洁之道.PDF 下载 代码整洁之道.PDF 中文版 高清 PDF 电子书下载 代码整洁之道下载 点我下载 作者简介 · · · · · · Robert C. Martin,Object ...
- linux 分配和释放设备编号
在建立一个字符驱动时你的驱动需要做的第一件事是获取一个或多个设备编号来使用. 为 此目的的必要的函数是 register_chrdev_region, 在 <linux/fs.h>中声明: ...
- 小程序 scroll-view 左右横向滑动没有效果(无法滑动)问题
scroll-view 中的需要滑动的元素不可以用 float 浮动:
- flex布局属性说明
flex布局又称为盒子布局或弹性布局,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为 Flex 布局. 给父容器添加display: flex/inline-flex;属性,即可使容器内容采 ...
- Codevs 均分纸牌(贪心)
题目描述 Description 有 N 堆纸牌,编号分别为 1,2,…, N.每堆上有若干张,但纸牌总数必为 N 的倍数.可以在任一堆上取若于张纸牌,然后移动. 移牌规则为:在编号为 1 堆上取的纸 ...
- The Preliminary Contest for ICPC Asia Nanjing 2019ICPC南京网络赛
B.super_log (欧拉降幂) •题意 定一个一个运算log*,迭代表达式为 给定一个a,b计算直到迭代结果>=b时,最小的x,输出对m取余后的值 •思路 $log*_{a}(1)=1+l ...
- 2018-2-13-C#-解析-sln-文件
title author date CreateTime categories C# 解析 sln 文件 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23 ...