小编典典

反对注解的论点

java

我的团队正在向Spring 3.0迁移,有些人想开始将所有内容迁移到注释中。当我看到具有此类方法的类时,我的直觉会很不好(代码气味?)(仅作为示例-
并非所有真正的注释)

@Transaction
@Method("GET")
@PathElement("time")
@PathElement("date")
@Autowired
@Secure("ROLE_ADMIN")
public void manage(@Qualifier('time')int time) {
...
}

我是不是落后于时代,或者这对其他任何人来说似乎都是一个可怕的主意?而是使用诸如继承和多态性之类的OO概念,现在一切都按惯例或通过注释进行。我只是不喜欢它。必须重新编译所有代码以更改IMO所配置的内容似乎是错误的。但这似乎是一切(尤其是Spring)发展的方向。我应该只是“克服它”还是应该后退并尝试使我们的代码尽可能地保持注释的自由?


阅读 211

收藏
2020-11-01

共1个答案

小编典典

实际上,我认为您对直觉的不良感觉更多地与注释(如此混合配置与代码)有关。

就我个人而言,我的感觉与您相同,我希望将配置(例如事务定义,路径元素,控制器应映射到的URL等)保留在代码库本身之外以及外部Spring
XML上下文文件中。

我认为,尽管正确的方法取决于意见和您偏爱的方法-我预计,社区的一半将同意注释方法,另一半将同意外部配置方法。

2020-11-01