常量的OO接口类-建议什么?

2020-09-08 21:34发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在与一位同事一起进行...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在与一位同事一起进行ABAP开发,我们在处理项目常量的最佳方法方面存在一点分歧。 让我列出两种建议的方法:

说我们有一个销售订单开发程序,并且我们知道我们将有许多常数:

VBTYP:SD文档类别
TRVOG:交易组
AUART:销售文档类型

上面的每个字段都有2个常量,因此共有6个常量。

1。 为此,您可以创建销售订单界面,例如 ZIF_SALES_ORDER_CONSTANTS并将每个常量都添加到类中。 您最终得到1个界面和6个属性。

2。 您为VBTYP创建一个接口(ZIF_SD_DOC_CAT_CONSTANTS),将常量添加为属性,为TRVOG创建接口(ZIF_TRANS_GROUP_CONSTANTS),并将常量添加为属性,为销售单据类型创建接口(ZIF_SD_DOC_TYPE_CONSTANTS),然后将两个常量添加为属性。 您以及拥有3个接口的每个接口都有2个属性。

我希望获得一些反馈,以了解是否存在标准或其他开发人员对此有何看法。

问候,马丁。

13条回答
槿木_熙
2020-09-08 22:06

我不使用常量接口。 我认为没有理由不应该多次定义常量-但是我同意每个应用程序只能定义一次。 您需要注意不要创建不必要的依赖项。

我使用分层的开发方法,其中所有类都通过接口实现。 因此,例如,我具有用于处理alv显示和交互的控制器的接口,用于保存非屏幕逻辑的模型的接口以及用于访问的每个业务/数据库对象的接口

每个接口所需的常量在该接口中定义。 严格根据依赖关系,在实现类中使用来自其他接口的常量。 因此,控制器可以使用模型中的常量,但反之则不能,因为模型必须不依赖于控制器。

在您的特定情况下,我将在模型接口中定义常量。 db/business对象接口可能不会使用这些常量。 我会这样定义它们:

常量:
   开始于c_sd_doc_categories,
     投放类型vbtyp VALUE'',
     订购TYPE vbtyp VALUE'',
   END OF c_sd_doc_categories,

  等等。

显然,您可以为常数选择其他名称!

现在,您可以使用

 IF doc_category EQ c_sd_doc_categories-delivery。
 ... 

一周热门 更多>