【发布时间】:2019-11-02 17:33:15
【问题描述】:
我目前正在为一个应该类似于“Duolingo”的应用程序制作 UML 类图。
我正在为如何建模多对多关系而苦苦挣扎。 所以,我想你有很多用户可以参加很多课程(他们希望学习的不同语言)。出于这个原因,我决定创建一个 courseProgress 类来模拟这种多对多关系。
我想知道的是,我需要将用户 ID 和课程 ID 存储在我的 courseProgress 类中吗?我想我在这里混淆了如何在数据库中使用密钥。
见下图:
我走对了吗?
另外,我想知道您何时会使用私有和公共字段。因为在我看来,您似乎总是希望所有字段都是私有的,并且只使用 getter 和 setter 来始终访问这些字段?
注意,上图中的字段是公开的,因为我还没有将它们更改为私有
在上图中,我应该有 userID 字段和 courseID 字段,还是应该有 User 类型的用户字段和 Course 类型的 course 字段?
【问题讨论】:
-
实际上......用户或课程实体是否甚至需要一个 ID,或者是在创建对象时,它会在应用程序范围内自动唯一这一事实所暗示的唯一 ID?
-
这取决于图表的用途。你是在为现实世界的概念建模,你在为数据库建模,你在为软件建模吗?
标签: uml class-diagram model-associations