Что такое модули высокого уровня и модули низкого уровня.?
Я знаю, что это точный дубликат ссылке ниже.
но после прочтения, что я не понимаю, что именно это.
High level modules are abstract classes and Interfaces ?
1 ответов
модуль высокого уровня-это интерфейс / абстракция, которая будет потребляться непосредственно слоем презентации. С другой стороны, низкий уровень-это куча небольших модулей (подсистем), которые помогают высокому уровню выполнять свою работу. Пример ниже-модуль высокого уровня. Я исключил инъекцию конструктора зависимостей для более короткого образца.
public class OrderService : IOrderService
{
public void InsertOrder(Order ord)
{
if(orderValidator.IsValidOrder(ord)
{
orderRepository.InsertNew(ord);
userNotification.Notify(ord);
}
}
}
и один из модулей низкого уровня (OrderValidator
):
public class OrderValidator : IOrderValidator
{
public bool IsValidOrder(Order ord)
{
if(ord == null)
throw new NullArgumentException("Order is null");
else if(string.IsNullOrEmpty(ord.CustomerId))
throw new InvalidArgumentException("Customer is not set");
else if(ord.Details == null || !ord.Details.Any())
throw new InvalidArgumentException("Order detail is empty");
}
}