Как представить сеттер c# на диаграмме последовательности UML? - PullRequest
1 голос
/ 06 августа 2020

Я хотел бы установить значения в свойстве Scores. Как нарисовать это на диаграмме последовательности UML? Могу я уточнить, правильна ли приведенная ниже диаграмма?

Код (C#):

Из файла: Test.cs

public class Test<T>
{
    public IEnumerable<T> Scores { get; set; }
}

Из файла: TestScore.cs

public class TestScore
{
    List<int> numList = new List<int>() { 1, 2, 3, 4, 5 };
    Test<int> test = new Test<int>();
    test.Scores = numList;
}

Схема последовательности UML:

Схема последовательности

1 Ответ

2 голосов
/ 06 августа 2020

1. Схема правильная?

Нет, это неправильная схема. Следующая инициализация в классе TestScore:

test.Scores = numList;

будет сообщением set(numList), которое :TestScore отправляет test, потому что :TestScore вызывает установщик test.

Поскольку на самом деле вызывается сеттер test.Scores, вы могли бы даже подумать о setScores(numList), чтобы избежать какой-либо двусмысленности, если класс Test будет развиваться, чтобы открывать другие сеттеры.

2. Схема - хорошая идея?

Эта диаграмма кажется очень подробной. Может быть, слишком подробно. Диаграмма последовательности предназначена не для графического программирования, а для документирования (сложного?) Сценария взаимодействия между классами.

Цель состоит в том, чтобы облегчить понимание реализации или дизайна, включающего взаимодействия объектов. Всякий раз, когда код легче понять, чем график , вы должны спросить себя, не переусердствуете ли вы с проблемой, а также подумайте о том, какие усилия потребуются в будущем для обновления графа при каждом развитии кода. Только ты можешь судить, стоит ли это усилий.

...