如何为Java类定义设计规则?

我想为团队开发的中型项目定义一些设计规则.这些规则不像“if语句必须使用括号”规则.它们与设计理念有关.

示例规则:

>如果某个类与JPA类有关联,则它不应与GUI类有任何关联.
>对于Message的每个子类,应该有一个Serializer的子类.
>如果标记为DTO的类,它应该只有getter和setter方法.

有没有办法定义像示例一样的规则并检查它们的编译时间?

谢谢

最佳答案 我认为你需要设计一些编译时处理注释.并设计了一个非常聪明的注释处理器.

从来没有这不是一件容易的事,也许你想写下来而不是硬编码.但是,如果你想这样做,这里有一些你的例子的建议:

>创建一个必须与任何JPA关联类一起使用的@IsJPA注释.
创建一个必须与任何GUI类一起使用的@IsGUI批注.
在注释处理器中,扫描每个@IsJPA带注释的类,以获取对@IsGUI注释类的引用.
>创建一个@IsMessage注释,并在注释处理器中检查这些类是否为Serializer的子类
>创建一个@IsDTO注释,并在注释处理器中检查这些类是否只有getter和setter.

点赞