最近,我发现Eclipse IDE中“保存操作”功能的乐趣。我可以强迫它重新格式化我的代码,插入缺少的@Override
注释,并做一些漂亮的事情,例如,final
每次点击时,自动删除表达式中不必要的括号或将关键字自动放置到任何地方ctrl + S
。我激活了其中一些触发器,男孩,它有很大帮助!
事实证明,这些触发器中的许多触发器都像对我的代码的快速健全性检查一样。
- 我打算重写一个方法,但是当我点击时注释没有出现
ctrl + s
?-也许我在某个地方搞砸了参数类型!
- 保存时从代码中删除了一些括号?-也许对于程序员来说,这种逻辑表达太困难了,以至于无法快速解决。否则,为什么我要首先添加那些括号?
- 该参数或局部变量不是
final
。是否必须改变其价值?
事实证明,变量越少更改,调试时的麻烦就越少。您跟踪某个变量的值有多少次才发现它以某种方式从5变为7?“怎么可能?!” 您会问自己,接下来的几个小时会花时间进入和退出无数种方法,以发现您在逻辑上犯了一个错误。为了修复它,您必须再添加一个标志,几个条件并仔细地在此处和此处更改一些值。
哦,我讨厌调试!每次我运行调试我觉得我的时间不多了,我迫切需要一个时间,使至少一些我儿时的梦想变成真!用调试去死吧!final
表示没有更多神秘的价值变化。更多final
s =>我的代码中更少的脆弱部分=>更少的bug =>花费更多的时间来做美好的事情!
至于final
类和方法,我并不在乎。我喜欢多态。多态性意味着重用意味着更少的代码意味着更少的错误。JVM无论如何都需要进行虚拟化和方法内联,所以我做得很好,因此我认为杀死代码重用的可能性并没有带来可观的性能优势,但我认为这没有价值。
final
起初在代码中看到所有这些s会使人分心,并且也需要时间来习惯。我的一些队友看到这么多final
关键字仍然感到非常惊讶。我希望在IDE中为它的特殊语法着色设置一个。我很乐意将其切换为某种灰色阴影(例如注释),这样它们在阅读代码时不会过于分散注意力。Eclipse当前为return
和所有其他关键字使用单独的颜色,但没有final
。
final
字段的语义与编写volatile
字段的语义相同,然后在以后读取它们时需要具有易读的读取语义,这并不总是您想要的