1 wprowadzenieid 8726 pptx

background image

Komponentowe
systemy
rozproszone

Wprowadzenie

background image

Komponent

... jest to

• podstawowa jednostka

oprogramowania

• z kontraktowo (deklaratywnie)

opisanymi interfejsami, i

• podanymi wprost zależnościami.

na podst. "Oprogramowanie komponentowe.

Obiekty to za mało" (1998)

background image

Komponent

Może być użyty przez inne elementy

programu

Jego użycie nie wymaga interwencji

programisty

Posiada pełną specyfikację zależności

Specyfikuje oferowaną przez siebie

funkcjonalność

Może być użyty wyłącznie na podstawie tej

specyfikacji

Można go złożyć z innymi komponentami

Integruje się z systemem w sposób szybki i

bezproblemowy

B.Meyer (2001)

background image

Komponent vs. obiekt

konfiguracja
wdrożenia

późne wiązanie
wywołań i
ładowanie kodu

pełna hermetyzacja

dziedziczenie
interfejsów

powtórne użycie na
poziomie binariów

polimorfizm

późne wiązanie
wywołań

częściowa
hermetyzacja

dziedziczenie klas

background image

Komponent z pudełka

... albo z kontenera...

Kontener jest odpowiedzialny za

zarządzanie komponentami:

steruje procesem tworzenia
komponentów

rozwiązuje zależności pomiędzy
komponentami

zarządza cyklem życia komponentów

background image

Problemy

Stabilność i poprawność działania

Testowanie

Dokumentacja komponentu

Wygoda użycia:

Brak silnych powiązań

Nieskomplikowny interfejs

Unikanie skomplikowanych protokołów

Przejrzyste specyfikowanie akcji

background image

Komponenty vs. poprawne OOD

OOD w praktyce sprowadza sie do

zarządzania zależnościami

Problemy ze złożonym

oprogramowaniem w dużej mierze

wynikają z niepoprawnych,

zagmatwanych i rozbudowanych

zależności

Tradycyjne metody OOx nader często

zawodzą z różnych przyczyn

Może komponenty to „porządnie”

zaprojektowane obiekty (gupy

obiektów) ?

background image

Rozwiązanie

S.O.L.I.D.

Poprawny i łatwy w utrzymaniu kod

Testy jednostkowe

umozliwiają łatwe testowanie

wyizolowanych klas/komponentów

stanowią dokumentację

weryfikują/ wymuszają (TDD/BDD) dobrą

architekturę kodu

są podstawą projektów realizowanych

przy pomocy metodyk zwinnych

background image

System rozproszony

obiekty+ komunikacja = s

ystem

rozproszony

?

background image

Krotka historia rozpraszania

Komunikacja pakietowa
Komunikacja strumieniowa (gniazda)
Komunikacja obiektowa (obiekty

rozproszone, CORBA, (D)COM+)

Architektura Zorientowana na Serwisy

(SOA)

ServiceBus ?

background image

Laborki

ORM
COM
WCF
NServiceBus
UT+Unity


Document Outline


Wyszukiwarka

Podobne podstrony:
1 Wprowadzenieid 10034 pptx
01 Wprowadzenieid 2981 pptx
1 zarządzanie nieruchomościami wprowadzenieid 8751 pptx
1 Wprowadzenieid 8724 pptx
1 Wprowadzenie do rachunkowości2016id 8735 pptx
01 opengl wprowadzenie 2011id 2873 pptx
01 WPROWADZENIE 2013id 2671 pptx
1 1 Wprowadzenie do Sieci Komputerowych Nawiązywanie połączenia z Internetemid 8855 pptx
1 Chemia organiczna wprowadzenie alkanyid 9109 pptx
1 Wprowadzenie do zarządzania ŁD Integracja łańcucha dostawid 10046 pptx
1 Przedsiębiorczość wprowadzenie 1id 9653 pptx
wprowadzenie[1]
Wykład 1 inżynierskie Wprowadzenie do zarządzania operacyjnego
PREZENTACJA 1 wprowadzenie
Wprowadzenie do medycyny rozwojowej 1
Zdrowie psychiczne wprowadzenie

więcej podobnych podstron