-
Notifications
You must be signed in to change notification settings - Fork 0
Domain model
Ap13Crow edited this page Apr 6, 2025
·
1 revision
- Learner
- Properties: ID(int), Name(string), Associated courses (List[number of courses(int), course(class), progress of course(int)])
- Course
- Properties: ID(int), Name(string), Topics (List of Topics)
- Topic
- Properties: ID(int), Name(string), Modules (Liste of Modules)
- Module
- Properties: ID(int), IsCompleted(boolean), ModuleItems(list of Type(class))
ModuleItems:
- Quiz
- Properties: ID(int), Name(string), Question(string), Answer(string), dueTime(dateTime), Result(int), isCompleted(bool)
- Dictionary
- Properties: ID(int), Vocabulary(list of words), Meaning(string), ExampleSentence(string), IsLearned(bool)
- Note
- Properties: ID(int), Name(string), Content(string), Tags(List of strings), CreatedDate(dateTime), ModifiedDate(dateTime)
(I assumed that a course has one or more topics divided into one or more modules. These modules have different types of items like quizzes, dictionaries, content, and associated notes.)
- DataStore
- Methods: SaveData(), LoadData()
- NoteManager, CourseManager, QuizManager, VocabularyManager
- Each is responsible for adding, editing, deleting, and searching their entity.
