【问题标题】:law of Demeter in ABAP [closed]ABAP中的得墨忒耳定律[关闭]
【发布时间】:2012-07-05 20:50:39
【问题描述】:

我想发现并解决违反德墨忒尔法则的行为。ABAP。

重点是类级别。 有人有什么想法或文章吗?

请回复

最好的问候 银啸

【问题讨论】:

  • 当你说“解决违规”时,你是在说自动重写类吗?
  • 是的,这只是一个想法,我知道解决问题很难,但我想尝试一下。请帮忙。
  • 我不认为这个问题提供了几乎足够的证据来证明即使是试用实现也不能被认为是与编程相关的。 OP 应该阅读 SO FAQ 并研究一些得到很好答案的问题,然后重新制定这个问题。就目前而言,不太适合 SO。

标签: abap law-of-demeter


【解决方案1】:

好的,

这是您需要使用的(以及更多):

  • READ REPORT <prog> INTO <itab>.这会将代码读入内部表进行分析
  • SYNTAX-CHECK FOR <prog> MESSAGE <m> LINE <l> WORD <w> PROGRAM <itab>. 这将检查您对代码所做的任何更改的语法
  • CALL FUNCTION 'RS_DELETE_PROGRAM' 在保存更改的报告之前,您可能需要先将其删除
  • INSERT REPORT p_abap FROM it_prog. 这将从更改后的 itab 创建更改后的报告
  • GENERATE REPORT p_abap. 这将生成您插入的报告
  • 分析TRDIR表,对于类名XYZ,你会发现里面所有的组件名称为XYZ========<componentname>,这些都是你可以阅读和修改的报告
  • 我还会研究 SAP 是如何“在哪里使用”的,它可能会帮助您轻松找到违规行为

致智者的一句话:SAP 不可能支持这一点;这些关键字中有 80% 仅供内部使用(这些关键字当然是最有趣的;),如果这不是学术练习,那么您几乎肯定是在浪费时间。

另外,我不确定符合得墨忒耳定律的代码一定是更好的代码,但这是与啤酒最好的哲学讨论。

T.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多