Код IT Загрузка примера кода…

C# main.cs
// Плохо: тесная связность
public class OrderService
{
    private readonly PaymentService _paymentService;
    private readonly InventoryService _inventoryService;
    private readonly NotificationService _notificationService;
    private readonly ReportingService _reportingService;
    // При изменении любого сервиса требуется пересборка OrderService
}

// Хорошо: слабая связность через интерфейсы
public class OrderService
{
    private readonly IPaymentGateway _paymentGateway;
    private readonly IInventory _inventory;
    private readonly INotification _notification;
    // Зависимость только от абстракций, не от реализаций
}
// Плохо: тесная связность
public class OrderService
{
    private readonly PaymentService _paymentService;
    private readonly InventoryService _inventoryService;
    private readonly NotificationService _notificationService;
    private readonly ReportingService _reportingService;
    // При изменении любого сервиса требуется пересборка OrderService
}

// Хорошо: слабая связность через интерфейсы
public class OrderService
{
    private readonly IPaymentGateway _paymentGateway;
    private readonly IInventory _inventory;
    private readonly INotification _notification;
    // Зависимость только от абстракций, не от реализаций
}