Я бы предложил, чтобы ваш выходной объект был полностью независим от вашего входного объекта.В противном случае ваш входной объект должен «знать» о выходном объекте.Это кажется неразумным, потому что каждый раз, когда вы изменяете выходной объект, вы меняете входной объект по расширению.Или, возможно, вы хотите несколько разных выходных объектов.Затем входной объект должен знать обо всех выходных объектах, или у вас есть нетипизированная ссылка (например, object
в .NET), которую вам нужно привести.
Входной объект - это именно то, что:он представляет данные, полученные от вашего хранилища данных или чего-то ещеЭти входные данные передаются через какое-то преобразование для создания какого-либо выходного объекта, который может иметь очень мало отношения к входному объекту.
Короче говоря, у входного объекта нет веских оснований иметь какие-либо знания овыходной объект.Фактически, входной объект даже не должен беспокоиться о том, что выходной объект существует.Придание объекту ввода этих знаний приведет к ненужной связи, что усложнит изменение вашего кода в будущем.