Что вы ищете в диаграмме последовательности, чтобы указать, что система хорошо спроектирована?
Какие идиомы, указывающие на передовую практику, вы ищете в последовательности вызовов методов, как показано на диаграммах последовательности?
2 ответа
Решение
Ищите контрольный центральный контроллер. Хорошо продуманная система будет иметь тенденцию к равномерному распределению обязанностей между классами. Плохо разложенная система вместо этого имеет тенденцию иметь диаграмму последовательности со многими сообщениями, идущими к или от класса в середине, который лихорадочно получает сообщения, принимает решения, вызывает подчиненных и вообще выполняет все.
Не случайно, что класс контроллера также имеет тенденцию быть большим, иметь много процедурного кода и, как правило, выглядеть забавно в FORTRAN.
Я бы сказал так же, как и для хорошей программной инженерии:
- Именование (классов и методов, а не имен экземпляров)
- Сколько параметров у методов (если показано)?
- Имеет ли смысл цепочка вызовов относительно уровня детализации (например, от мелкого до мелкого или грубого?)