2

我最近偶然发现了 Intellij IDEA 中的一个简洁功能,它让我质疑我的一种做法。这是字符串自动完成。基本上,如果我在属性文件中定义一个键值对,然后开始在 java 代码中键入一个字符串,该字符串将保存值作为属性文件中的键,IDEA 可以自动完成它。更多,我可以用 ctrl+click 导航到它并且可以重构它!

我所说的做法与显示属性文件中的值有关。我目前正在为此使用枚举,其类型与属性文件中的键具有相同的名称。我这样做是因为我获得了类型检查和重构。但似乎我可以通过在 IDEA 中使用字符串来获得相同的好处(嗯,它并没有真正给我类型检查,但它有点接近)。

我想知道你们中是否有人使用简单的字符串值来检索消息。这是一个好习惯吗?

4

3 回答 3

1

一个折衷方案是让枚举具有属性,其中枚举值是属性字符串。通过这种方式您可以获得类型安全,IDEA 将识别枚举值来自属性并让您轻松导航到它。

于 2012-12-19T09:32:40.697 回答
1

我不认为这是一个好习惯。开发应用程序时不应依赖 IDE。如果其他人使用例如eclipse,他就有机会搞砸这一切。我喜欢使用枚举而不是字符串的解决方案,只是因为它提供了编译时间检查。您甚至可以构建您的枚举,以便它还读取属性文件,并且枚举中的每个项目都包含属性文件中的键和值。

于 2012-12-19T09:17:42.437 回答
0

如果他们抱怨向他们展示这个问题(以及许多其他问题),使用 Enum 并让与您一起工作的每个人都使用 intellij 可能会更好。

还值得牢记的是,一些字符串值需要编译时常量,这使事情变得更复杂一些

于 2012-12-19T09:44:01.503 回答