Вход на сайт
Подарки от программис'тов
6208 просмотров
Перейти к просмотру всей ветки
в ответ alex445 26.07.22 17:13
И то, и то - божественный объект.
Нет. Читай, что такое божественный объект.
Оттого, что вы разобьёте один класс на два, но очень связанных, от божественности вы не избавитесь.
Сильная связь - композиция. Слабая связь - агрегация. Что ты понимаешь под сильной и слабой связью мне не ведомо. Боюсь, что тебе тоже :)
Тут форма связана с сессией и с транзакцией в БД - явно без списков обошлись.
Список - это просто пример модели. Но если ты посмотришь на любую реляционную БД, то увидишь, что таблицы связаны между собой какими-то ключами.
Ну скажем Клиент через ID связан с каким-то Адресом. Т.е. имея Клиента ты всегда можешь получить адрес и имея адрес всегда можешь получить Клиента (или несколько).
Т.е. интерфейсы можно записать так:
public interface ICustomer { int Id { get; } string FirstName { get; } string LastName { get; } IAddress Address { get; } } public interface IAddress { string City { get; } string Zip { get; } string Street { get; } string HouseNr {get; } IEnumerable<ICustomer> Customers { get; } }
Такая конструкция вполне имеет право на жизнь. Никакого криминала тут нет.