Recently I am planning an internal training regarding Software engineering concept to my colleagues and one topic is “Interface Segregation”.

The following guideline is quoted from OODesign:

“When we design an application we should take care how we are going to make abstract a module which contains several submodules. Considering the module implemented by a class, we can have an abstraction of the system done in an interface. But if we want to extend our application adding another module that contains only some of the submodules of the original system, we are forced to implement the full interface and to write some dummy methods. Such an interface is named fat interface or polluted interface.

The Interface Segregation Principle states that clients should not be forced to implement interfaces they don’t use. Instead of one fat interface many small interfaces are preferred based on groups of methods, each one serving one submodule.”

I am very curious whether SAP standard code contains such fat interface or not. So I wrote a small CDS view:

And get all interfaces which contains more than 10 methods:

DATA: lt_int TYPE STANDARD TABLE OF Zfat_Interface.SELECT * INTO TABLE @lt_int FROM ZFAT_INTERFACE where method_count > 10 ORDER BY method_count DESCENDING.

The result is there are totally 3139 such interfaces in my CRM development system.

I quickly go through the list, most of them are used to build system functionalities and NO application will implement them, so in my opinion the fact is acceptable.

On the other hand there is also another category of interfaces which has NO methods or attributes defined. Refer to this blog Tag(Marker) Interface in ABAP and Java for more detail.

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

将ABAP透明表的定义(元数据)解析出来导入到剪切板(clipboard)里相关推荐

  1. 将ABAP数据库表的定义导入到PostgreSQL

    Replicate ABAP database table definition to PostgreSQL PostgreSQL is one the most popular open sourc ...

  2. html粘贴excel内容,如何用JS解析剪切板里的excel内容

    前言 这次记录的是昨晚一个想法:把excel内容复制到剪切板并转成自己想要的json格式,核心是要把excel内容转json,这部分主要看excel的格式和json如何业务的映射,不展开.倒是通过实践 ...

  3. html5读取剪切板 内容,实践笔记:js解析剪切板里的excel内容

    这次记录的是昨晚一个想法:把excel内容复制到剪切板并转成自己想要的json格式,核心是要把excel内容转json,这部分主要看excel的格式和json如何业务的映射,不展开.倒是通过实践,收获 ...

  4. SAP Hybris Commerce里类似ABAP里的透明表设计

    标题的"透明表"得上引号,原因是因为Hybris里的table modelling和Netweaver里的transparent table还不是绝对的一致, 虽然从作用上说都是从 ...

  5. 透明表——ABAP程序创建透明表

    技术背景:解决项目上的不必要重复劳动. 涉及FUNCTION: GOX_GEN_TABLE_STD: 生成透明表 DDIF_TABL_GET: 获得表的相关信息 DDIF_TABL_PUT: 设置表的 ...

  6. 数据表为什么又叫透明表?

    大家如果经常进行 SAP 的报表开发,对透明表就一定不会陌生,对透明表可以进行各种标准的数据表操作,获得可一个报表开发需求时,只要找到相关的透明表,也就可以着手开发报表了.但是肯定有很多朋友对透明表这 ...

  7. Hive表的定义,删除、修改

    Hive表的定义.删除 创建表 只涉及简单的建表,不涉及分区等复杂操作. 1. 建表语句 CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db ...

  8. 【Metabase二次开发 • 四】元数据解析

    文章目录 一.元数据概述 二.元数据表结构 1. 用户相关 2. 权限相关 3. 数据源相关 4. 查询相关 5. 运行日志相关 6. 定时任务相关 7. 数据图表相关 8. 邮件推送相关 9. 其它 ...

  9. SAP ABAP 内表使用

    SAP里面主要有三处类型的内表:standard table,sorted table,hashed table 定义语法:TYPES|DATA itab {TYPE|LIKE} tabkind OF ...

最新文章

  1. Springboot配置拦截器出现“No mapping for GET“静态资源的情况
  2. 以太网数据帧的报尾封装字段是什么_16、90秒快速“读懂”数据包的封装、解封装...
  3. keil5建立工程步骤_5个步骤建立实践社区
  4. 计算机绘图实训任务书,autocad模块化实训任务书-2011.11
  5. 2019年ACM大赛:北大清华无缘前十,莫斯科大学第一
  6. 【Git】git add
  7. MemoryStream
  8. 【虚拟机】无法连接虚拟设备 sata0:0,因为主机上没有相应的设备。 您要在每次开启此虚拟机时都尝试连接此虚拟设备吗?
  9. 超微服务器查型号,超微 云服务器
  10. 论文阅读_基于知识图谱的约束性问答
  11. 怎样制作BT种子文件,即torrent后缀的文件?
  12. 洛谷 P2071 座位安排 seat.cpp/c/pas
  13. 免费IDM注册机下载
  14. I2C-pcf8563
  15. 计算机网页设计论文加成品,计算机网页设计教学研究论文
  16. 微信小程序关于内层view设置margin-top无效的解决方案
  17. Android变调代码,Android 之 Fmod 变音的实现
  18. 给自己看的unity知识点随手记(记录)
  19. 量化交易之回测篇 - 添加获取天勤合约数据api
  20. 装修新软件,666的

热门文章

  1. Nginx自动安装脚本
  2. oracle中directory的使用
  3. 寻一名师傅叫我破译电脑各种密码和攻克防火墙
  4. 比较第一与第二个字符串,是否有连续的5个字符相同.sql
  5. 一个实例告诉你Python中关于 if __name__ == ‘__main__‘ 有何作用
  6. 【PP MRP】MRP参数详解
  7. Window (Standard IO)
  8. 20071025-吉武
  9. go get github.com/astaxie/beego 没有反应
  10. 利用python爬虫(part9)--Xpath与谓词の爱