ZAWWW-2st1.2-w12.tresc-1.0-Slajd12

Z Studia Informatyczne
Wersja z dnia 19:31, 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

Programowanie aspektowe

Programowanie aspektowe


Drugą, obok wstrzykiwania zależności, podstawową techniką wykorzystywaną w architekturze Spring jest programowanie aspektowe. W tradycyjnym programowaniu moduły kodu odpowiadają mniej więcej modułom wyodrębnianym na podstawie logiki biznesowej. Przykładowo, w aplikacji przedstawionej na slajdzie wyodrębniono trzy moduły biznesowe odpowiadające obsłudze zamówień, obsłudze klienta i obsłudze magazynu. Równolegle z modułami biznesowymi istnieją także zagadnienia (aspekty) obecne w wielu modułach i związane z architekturą i mechaniką aplikacji a nie logiką biznesową. Przykładami takich zagadnień mogą być: zapewnianie bezpieczeństwa i kontroli dostępu do modułów, zapewnianie trwałości obiektom wykorzystywanym przez moduły, zapisywanie zdarzeń pojawiających się w modułach do dziennika aplikacji, obsługa typowych błędów, itp. Każde z tych zagadnień jest oprogramowywane niezależnie w ramach każdego modułu biznesowego. W rezultacie, kod aplikacji zawiera wymieszane ze sobą fragmenty reprezentujące właściwą logikę biznesową i fragmenty reprezentujące owe zagadnienia przekrojowe. Skutkiem tego jest kod nieczytelny, trudny do modyfikacji i pielęgnacji, podatny na błędy.


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