【发布时间】:2015-01-14 13:29:46
【问题描述】:
我目前正在学习软件工程课程(我必须)。 我们有一大堆任务需要我们在 Java 中使用设计模式。通常我只是一个PHP开发人员,所以我没有太多Java技能,这可能是个问题。
具体问题是:我们必须使用复合模式来解决以下问题:创建一个数学框架来解决术语。该术语可以是连接两个术语的数字(双)或“/”、“-”,或使用一个术语的“sin”。
我必须创建一个 UML 类图。 这是哪个
我不确定这是否正确。我得到的关于类图的两个主要问题是:
- 使用 value 和 first/second 用于 Composites 是否正确,因为它们只有 1 或 2 个术语,或者我应该使用
addmethod 列出一个列表并确保其中正好有 1/2 项清单? - 我是否应该为复合结构创建另一个接口(Sin、Divide、Subtract)
我做对了吗,还是我遵循了错误/错误的方法?
谢谢
伯纳德
【问题讨论】:
-
请注意设计模式不仅仅与 Java 相关联。实际上,GoF 使用 C++ 语言来说明他们的示例。设计模式与语言无关。
-
谢谢,我已经知道了。但是在这个课程中我们必须使用Java
-
对我来说看起来不错。可以使用第一个/第二个。如果您有更多操作,您可以添加基类 BinaryOperation 和 UnaryOperation。我只是将术语更改为表达式。对我来说 Term 应该是一个终结符号 (en.wikipedia.org/wiki/Terminal_and_nonterminal_symbols)。
标签: java design-patterns uml class-diagram composite