我是一名Android开发者,下面的问题出现在我的脑海中:当我为了编译过程而添加一个大注释时,当我们在代码中添加有用的注释时,编译器是否可以在注释部分花费一些时间?
如果没有,那么它没有得到任何效果,因为多长时间我们的评论?
编译器可以在注释部分花费一些时间吗?
除了遍历注释对应的字节的IO开销(只要不是几兆字节长的注释,这应该可以忽略不计)之外,它不会产生任何影响。大多数编译器甚至不包括AST中的注释,这意味着解析后注释完全消失了。
永远不要根据编译时间来决定是否包含注释。您的决定完全基于它是否使代码更具可读性。
进一步阅读:
- 如何写注释
- 我如何以适当的方式编写代码内注释和文档?这有什么标准吗? 如何写出好的javadoc注释?
是的,您编写的每个注释都会使编译变慢,因为编译器必须读取更多的文本。但是,对于编译器来说,读取注释是非常容易的,而且很快就能完成,所以你不必担心。
你可以自己试一试。编写一个程序,让生成一些带有大量注释的简单源代码。
int i = 0;
...
i++; /* This is a comment, and maybe a very long one. */
...
现在您可以尝试使这个(生成的)注释非常长,甚至可能是兆字节。然后在编译带有小注释和大注释的代码时测量差异,您将看到速度仍然是可以接受的。
阅读和解析这些注释块需要时间,但这次时间很短,您不会注意到,无论如何,这不是不将(扩展和有用的)注释放入程序的借口:-)