Патерн сервісного рівня

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Патерн сервісного рівня — архітектурний шаблон проєктування

Переваги та недоліки[ред. | ред. код]

Переваги[ред. | ред. код]

  • сервіси приховують в собі бізнес логіку чим забезпечують незалежність від системи
  • групують логіку операцій в залежності від даних

Недоліки[ред. | ред. код]

  • додавання або зміна функціоналу вимагає редагування вже написаного коду

Опис мовою C#[ред. | ред. код]

Запишемо інтерфейс сервісу, та його реалізацію:

public interface IUserService
{
    void CreateNewUser();
}
public class UserService : IUserService
{
    public void CreateNewUser()
    {
        // . . .
    }
}

Код бізнес логіки можна використовувати незалежно від платформи

public class UserController : ControllerBase
{
    IUserService userService;

    public UserController(IUserService userService)
    {
        this.userService = userService;
    }

    public IActionResult CreateNewUser()
    {
        // бізнес логіка
        userService.CreateNewUser();

        // генерація вигляду, залежить від технологій
        return View();
    } 
}

Див. також[ред. | ред. код]