0

对象模型和抽象语法树有什么区别?

我对这些术语感到困惑。我对这些的了解是

  1. 对象模型提供对象的详细信息及其在应用程序中的关系。

  2. AST 将给出应用程序的程序元素的结构。

我们可以从对象模型中获得什么是 AST 无法获得的?

提前致谢。

4

1 回答 1

1

对象模型和 AST 代表不同抽象级别的事物,除了每个可能包含线条、框和文本的图表之外,它们几乎没有共同点。

AST的 Wikipedia示例显示了表示解析一小段编程语言的结果的树。

对象模型是 OO 设计的多种描述之一,我们正在考虑各种类的对象。当我们考虑对象时,我们想知道它们做什么以及它们“知道”什么。因此,如果我们有,比如说一个客户对象 C,一些订单 C 放置了 O1 和 O2,以及这些订单引用的一些产品 P1、P2、P3,我们可以绘制关系图,并开始推理在特定业务场景中可能发生的情况- 例如,假设 O2 是 { P2 和 P3 } 的订单,我们可以考虑如何计算订单的价格,或者如果 P3 缺货我们会做什么。

即使是单个类的 AST 也会非常广泛,并且在行为方面很难理解。我不相信您可以从 AST 中推断出这些业务场景。

于 2011-08-03T15:14:18.393 回答