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的原创文章,请关注公众号"汪子熙":

SAP ABAP Netweaver里的胖接口(fat interface)相关推荐

  1. SAP系统里的胖接口Fat interface

    Recently I am planning an internal training regarding Software engineering concept to my colleagues ...

  2. SAP ABAP Netweaver里进程能够申请的最大内存

    Sent: Monday, June 25, 2012 4:23 PM Subject: [knowledge share]memory issue of search report Hi there ...

  3. SAP ABAP Netweaver里的SE80事务码是如何响应用户请求的

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qhGszh5N-1579337680354)(https://user-images.githubusercontent ...

  4. 浅谈 SAP ABAP 系统里的 ALV 输出方式实现

    由于国情原因,ABAP ALV相关的报表开发在国内众多SAP技术交流群里永远都是一个热门话题. 最近Jerry和朋友的技术交流群里,郭爷向大家介绍了ALV Integrated Data Access ...

  5. SAP ABAP Netweaver服务器的标准登录方式讲解

    最近Jerry把这个公众号之前发布的总共230篇文章按照类别整理了一系列合集出来,比如所有的ABAP文章,放在了这个合集里:汪子熙的ABAP合集. 本文继续介绍ABAP里的一个知识点:ABAP Net ...

  6. SAP ABAP Netweaver容器化, 不可能完成的任务吗?

    Jerry之前的文章 一个13年ABAP老兵的建议:了解这些基础知识,对ABAP开发有百利而无一害, 回顾了ABAP Netweaver服务器主要的组件.本文咱们就来聊聊ABAP Netweaver容 ...

  7. 如何使用Prometheus采集SAP ABAP Netweaver的应用日志数据

    Prometheus是一套开源的系统监控报警框架.它启发于Google的borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 2012 年创建,作为社区开源项目进行开发 ...

  8. SAP ABAP编辑器里的Code Completion(代码自动完成)的等待时间设置

    SAP ABAP编辑器里的Code Completion(代码自动完成)的等待时间设置:如果嫌默认的一秒等待时间太长,可以点图1右下角的图标,打开设置对话框,把1秒改成0.1秒即可.如果想研究ABAP ...

  9. 如何把 SAP ABAP 系统里一张数据库表的内容,显示在 Adobe PDF Form 里

    在本教程前几个步骤,我们依次学习了如何在 SAPGUI 里一步步创建自定义屏幕: 27. 一步步创建包含自定义 Screen 的 ABAP 程序的详细步骤 以及如何在 SAPGUI 里显示上传到 AB ...

最新文章

  1. 在Win10 Anaconda中安装Tensorflow
  2. 如何在10亿数中找出前1000大的数
  3. sqlite第三方类库FMDB的使用
  4. 矩阵分析与多元统计12 0-1矩阵 交换矩阵简介
  5. 十三五乐山全力推进智慧城市和新能源汽车等项目
  6. Nosql数据库之mongodb c++使用实例
  7. Blending and Bagging
  8. SegNet网络简析及caffe工程应用
  9. 阿里云OSS linux使用备忘录
  10. 前端学习(594):network面板
  11. LInux 下文件包的使用
  12. 对于JDBC的简单理解
  13. Ubuntu终端常用命令
  14. javascript设计模式--设计原则
  15. Html5开发工具介绍
  16. 手机上将mp4转换成amv_如何在Linux上将所有文本从大写转换为小写?
  17. 互联网创业如何起步(一)
  18. css技术点二:字体图标(阿里巴巴字体图标使用)
  19. 那些年,我们画过的圣诞树
  20. 西安计算机三本院校排名2015,2015年陕西三本院校排名

热门文章

  1. Android studio 开发中 用git实现批量忽略特定文件的方法
  2. Python之Matplotlib画图方法
  3. Flash获取html参数的方法
  4. 设计模式之 中介者模式
  5. 【python】获取列表中最长连续数字
  6. oracle 数据库,用户管理以及表空间等相关基础操作
  7. JavaScript 正则表达式相关理解
  8. gruntjs开发实例
  9. 分布式与人工智能课程(part16)--深度学习
  10. WebAPI(part9)--下拉菜单及留言案例