编程语言
首页 > 编程语言> > java – 没有反射就可以确定要运行的类

java – 没有反射就可以确定要运行的类

作者:互联网

所以我处在一种情况,我希望有一个包含要运行的类的对象数据库.它看起来像:

id  | Description       | pricingClass
1   | "static pricing"  | staticDeliveryPrice.class
2   | "Dynamic pricing" | dynamicDeliveryPrice.class

这样做的目的是允许我的编码灵活.我的想法是,这将允许多种方式来确定如何计算deliveryMethod的价格.

我担心的问题是,在这种情况下反映不好吗?有没有更好的方法呢?它是否遵循坚实的原则.(我会说是的,但我的一部分不同意).

解决方法:

您正在描述基于插件的架构.你真的需要这种灵活性吗?通常需要在以下时间:

>项目之外的人需要在没有您干预的情况下为代码添加新功能
>您希望允许运行时修改程序.

否则,它完全矫枉过正.您可以完全控制产品中的内容,因此您可以简单地依靠良好的旧多态来隔离功能的不同实现.

此外,将业务逻辑放在数据库中并不是一件好事:你混淆了问题,你创建了强大的耦合(突然重命名类会变得烦人!),当然,更难以推断代码中发生的事情只是看着它.

标签:java,oop,database,solid-principles
来源: https://codeday.me/bug/20190611/1218029.html