Co to jest logika biznesowa, logika aplikacji, domena biznesowa?

0

Cześć, zabrałem się za pisanie aplikacji internetowej z wykorzystaniem ASP.NET MVC jednak nie rozumiem tych 3 zagadnienien. Podstawy już znam, ale chciałbym pójść o krok dalej i nie pisać "spagetti codu" w kontrolerze tak jak pokazuje większość kursów tylko podejść do sprawy profesjonalnie, jednak mam problem ze zrozumieniem kilku kwestii.

  1. Logika biznesowa, czym jest i gdzie się ją stosuje (czy nie są to metody znajdujące się w modelu dajmy na to User?)
  2. Logika aplikacji, czy są to wszelakie metody znajdujące się w kontrolerze tj. Zaloguj, Zarejestruj?
  3. Domena biznesowa, czy to nie jest przypadkiem to samo co logika biznesowa?

Bardzo bym prosił o jakieś sensowne wyjaśnienia, dziękuje i pozdrawiam.

0

Domena to jest po prostu dziedzina. Jak piszesz system bookowania lotów to domeną jest właśnie branża e-commerce i linie lotnicze.
Logika aplikacji to to samo co logika biznesowa i są to wszystkie (głównie domenowe) funkcjonalności dostarczane przez aplikację. Więc np. bookowanie i wyszukiwanie lotu to jest logika biznesowa aplikacji.

3

Domena biznesowa to obszar rzeczywistości, którym zajmuje się aplikacja. Np. dla aplikacji księgowej będą to faktury, przychody, wydatki, itd. Częścią prawidłowo zaprojektowanej aplikacji, w której zamodelowana jest domena biznesowa, nazywa się "logiką biznesową". A logika aplikacji, to ten kod, który sprawia, że aplikacja działa, ale niezwiązany z samą domeną, np. mechanizm autoryzacji i autentykacji, serwisy pośredniczące między logiką biznesową a GUI, integracja z zewnętrznymi źródłami danych, itd.

1

Ja uzupełnię powyższe wypowiedzi o poczytankę:
http://markone-dev.blogspot.com/2014/12/logika-aplikacji-logika-biznesowa.html

0

Dziękuje za odpowiedź. W takim bądź razie tworząc sklep internetowy to domeną biznesową będzie: koszyk, zamówienie, produkty, płatności itp. dobrze to pojmuje ? Serwisy pośredniczące, jak to rozumieć.

Pozdrawiam

1

Z tym koszykiem to bym nie przesadzał, on nawet nie musi istnieć jako byt po stronie serwera.

Serwisy pośredniczące - to klasy, które np. zbierają dane przysłane z warstwy prezentacji, mapują na modele, a następnie wysyłają do logiki biznesowej. (I w drugą stronę też.) Takie serwisy mogą być wystawione jako jakieś webserwisy, ale mogą też być bezpośrednio wywoływane z innego kodu - wszystko zależy od rozmiaru i architektury aplikacji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1