通过当前项目帮助我了解OOD

时间:2009-04-29 17:50:46

标签: class oop

我非常难以理解课程需要如何与彼此沟通。在我正在进行的一个当前项目中,许多课程已经变得如此根深蒂固,以至于我已经开始使单身人士和静态领域出现(从我得到的这是一个坏主意)。

很难表达我的问题,并且像其他程序员一样没有这个问题。 这是该计划的一部分图像: Class diagram

  • EX1。当我创建Destination对象时,它需要来自Infopanel的信息。如何在InfoPanel中不使用静态getter来做到这一点?

  • EX2。 DestinationRouting用于everybranch。我真的必须在启动器中制作它然后在所有分支中传递它吗?

不确定这对任何人都有意义:) 这是一个在每个项目中都会重现的问题。

2 个答案:

答案 0 :(得分:1)

在查看您的类图之后,我认为您正在将一个程序性思维集应用于OO问题。您的单身人士似乎包含对您的域模型中的记录进行操作的所有行为,并且记录的行为很少。

为了更好地理解您的对象模型,我会尝试将类图中的关系(线)分类为“is-a”,“has-a”等等,以便您可以更好地看到你拥有的东西。

目的地需要来自InfoPanel的一些信息,但不太可能是所有信息。是否可以仅将所需信息传递给Destination而不是InfoPanel?

在DestinationRouting类中捕获哪些状态强制它成为单例?这些信息是否属于其他地方?

答案 1 :(得分:0)

这里的信息太少了。例如,我甚至不确定MapPanelInfoPanel是否应该如此。我很想尝试将装饰模式用于它的价值。我不知道为什么听众也是小组的孩子。我们需要知道这些对象是什么以及它是什么系统。