如何设计具有非面向对象部分的 UML 类图?

发布于 2024-07-30 00:45:12 字数 212 浏览 6 评论 0原文

我正在使用 ABAP 进行编码并实现了模板方法模式。 我喜欢为此画一些 UML 类图。 在 UML 中为类执行此操作没有问题。 但我的类是在功能模块(SAP 特定术语)中实现的,它就像一个独立的方法,我用它来使实现可用于远程过程调用。

那么在一个图中获得非 oo 功能模块和 oo 类的最佳可能性是什么? 有任何想法吗?

编辑:您可以混合组件图和类图吗?

I´m coding in ABAP and implemented a template method pattern. I like to draw some UML class diagramm for this. To do this in UML for the classes is no problem. But my class is implemented in a function module (SAP specific terms), its like an stand alone method which I use to make the implementation available to an Remote Procedure Call.

So what's the best possibility to get the non oo function module and the oo classes in one diagramm. Any ideas?

EDIT: Are you allowed to mix component and class diagrams?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

酒几许 2024-08-06 00:45:18

在面向对象(和类)方向中,一切都被视为对象,甚至非对象!

模块、命名空间和库是 UML 创建者似乎忽视的事情之一。

许多设计者将全局元素表示为封闭在文件、命名空间或模块中,将模块表示为单个对象或类。

像 Javascript 这样的语言,模块,被包含在单例对象或全局对象中。

这是如何实现非面向对象的一般示例。

......................................................................
..+----------------------------------------------------------------+..
..|                            <<module>>                          |..
..|                             Strings                            |..
..+----------------------------------------------------------------+..
..| [+] String[]: Letters                  <<constant>> <<global>> |..
..| [+] String[]: Digits                   <<constant>> <<global>> |..
..+----------------------------------------------------------------+..
..| [+] String: ToUppercase(String Value)  <<function>> <<global>> |..
..| [+] String: ToLowercase(String Value)  <<function>> <<global>> |..
..+----------------------------------------------------------------+..
......................................................................

干杯。

In Object (and Class) Orientation, everything is consider an object, even non objects !!!

Modules, namespaces, and libraries, are one of the things that U.M.L. creators seems to overlook.

Many designers represent global elements, enclosed in a file, namespace or module, representing the module as a single object or class.

I languages like Javascript, modules, are enclosed by a singleton object or global object.

This is a generic example of how non O.O. may be implemented.

......................................................................
..+----------------------------------------------------------------+..
..|                            <<module>>                          |..
..|                             Strings                            |..
..+----------------------------------------------------------------+..
..| [+] String[]: Letters                  <<constant>> <<global>> |..
..| [+] String[]: Digits                   <<constant>> <<global>> |..
..+----------------------------------------------------------------+..
..| [+] String: ToUppercase(String Value)  <<function>> <<global>> |..
..| [+] String: ToLowercase(String Value)  <<function>> <<global>> |..
..+----------------------------------------------------------------+..
......................................................................

Cheers.

身边 2024-08-06 00:45:17

UML 不仅仅是类图,基于所提供的有限信息,我将使 SAP 调用程序元素成为系统上的外部 Actor,使用系统边界来包含类图中记录的系统的 OO 方面,使用活动图表来记录完整的工作流程。

There is more to UML than class diagrams, based on the limited information provided I would make the SAP invoker element an external Actor on the system, use the system boundary to contain the OO aspects of the system documented within the Class diagram, use an activity diagram to document the full workflow.

余罪 2024-08-06 00:45:16

我们使用具有构造型 <> 的类来表示 - 好吧 - 具有构造型 <> 的函数池和方法code> 代表功能模块。 您可以使用 FORM 子例程、MODULE、子例程池等执行相同的操作。 我们还倾向于使用基于构造型的着色方案,以便界面呈绿色阴影,函数池等遗留程序内容呈红色等。 不幸的是,由于没有可行的建模工具同时具有系统到模型和模型到系统的链接,因此使用 UML 进行 ABAP 开发需要做大量工作。

We use a class with the sterotype <<function pool>> to represent - well - a function pool and methods with the stereotype <<function module>> to represent function modules. You can do the same thing with FORM subroutines, MODULEs, subroutine pools and the like. We also tend to use a stereotype-based coloring scheme so that interfaces are shaded green, the legacy procedural stuff like function pools is red and so on. Unfortunately, since there is no viable modeling tool with both system-to-model and model-to-system linkage, it’s rather a lot of work to use UML for ABAP development.

风吹过旳痕迹 2024-08-06 00:45:15

将功能组织到逻辑组中(例如它们的功能组)。 为每个逻辑组创建一个实用程序类,并将函数作为这些实用程序类的静态成员。

Organize the functions in logical groups (e.g. their function groups). Create a utility class for each logical group and put the functions as static members of those utility classes.

木落 2024-08-06 00:45:15

将每个函数视为具有一个(静态)方法的类?

Treat the/each function as a class with one (static) method?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文