ZAWWW-2st1.2-w10.tresc-1.0-Slajd10

Z Studia Informatyczne
Wersja z dnia 19:25, 28 sie 2006 autorstwa Juliusz Jezierski (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Złe praktyki w warstwie biznesowej

Złe praktyki w warstwie biznesowej


Podobnie jak w warstwie prezentacji, w warstwie biznesowej łatwo jest popełnić wiele błędów projektowych. Poniżej przedstawiono najczęściej spotykane złe praktyki programistyczne występujące w warstwie biznesowej lub warstwie integracji.

  1. Mapowanie modelu obiektowego aplikacji bezpośrednio na model komponentów encyjnych: odwzorowanie każdej klasy modelu obiektowego aplikacji na komponent encyjny powoduje powstanie zbyt dużej liczby komponentów, nadmierne obciążenie kontenera, wprowadzenie niepotrzebnych zależności między komponentami oraz ogólne zmniejszenie wydajności aplikacji
  2. Mapowanie modelu relacyjnego bezpośrednio na model komponentów encyjnych: sposób reprezentacji związków 1:N i M:N (jeden-do-wiele i wiele-do-wiele) w modelu relacyjnym jest nieprzystający do modelu komponentów encyjnych, każdy komponent encyjny powinien reprezentować jedną encję biznesową, a nie jej tablicową reprezentację w bazie danych, takie odwzorowanie gwałtownie zwiększa liczbę komponentów i zależności między nimi, tym samym wpływając negatywnie na wydajność systemu
  3. Większość kontenerów EJB nie obsługuje komponentów "tylko do odczytu" i traktuje takie komponenty jak zwykłe komponenty, synchronizując ich stan ze stanem bazy danych, stąd wykorzystywanie komponentów encyjnych jako obiektów tylko do odczytu powoduje marnotrawstwo zasobów
  4. Osadzanie usług wyszukiwania po stronie klienta: wyszukiwanie komponentów encyjnych z poziomu aplikacji klienta nie powinno się odbywać za pomocą interfejsu JNDI, ponieważ grozi to umieszczeniem kodu wyszukującego w wielu miejscach aplikacji w warstwie klienta, rozwiązaniem jest wprowadzenie specjalnego mechanizmu lokalizacji zasobów, który zostanie omówiony później.
  5. Rozdrabnianie komponentów encyjnych: jak już wcześniej wspomniano, komponenty encyjne reprezentują encje biznesowe, a nie encje występujące w bazie danych czy modelu warstwy prezentacji. Należy unikać niepotrzebnego podziału komponentów encyjnych na mniejsze jednostki.


<< Poprzedni slajd | Spis treści | Następny slajd >>