现在这不是直接的编程问题,它更像是一个设计问题。
我目前正在开发一个 cdi 扩展。此扩展处理由配置的实例
- 一个 VM 参数(-D 参数)
- 来自类路径的属性文件
- 实现类上的注释
- 注入点的注释(例如 @MyAnnotation(value ="text") private Object obj;)
现在我无法决定如何优先考虑多个可用配置,例如哪个参数覆盖哪个..
(例如)当在类级别和注入点有一个带有值的注释时,应该使用哪个配置?“最小”(在注入点)注释总是获胜还是“最大”(vm参数)?
因为这应该成长为一个框架,所以我想把它做好。
对于“最小的总是获胜”的方法,我可以预见框架用户会因为类或成员级别的注释覆盖类路径中属性文件的配置而感到困惑的用例。有点相同的图片(仅反转)是由另一种方法绘制的..
所以这将是框架用户必须学习的规则。哪种方法更直观?
只是头脑风暴;)
来自德国的问候