Login
Подарки от программис'тов
6208 просмотров
Перейти к просмотру всей ветки
in Antwort 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; }
}
Такая конструкция вполне имеет право на жизнь. Никакого криминала тут нет.