2013 ZTP 05

background image

1

5

5

Jerzy R. Jaworowski,

Jerzy R. Jaworowski,

dr in

dr in

ż

ż

.

.

Instytut Teleinformatyki PK

Instytut Teleinformatyki PK

Zaawansowane techniki

Zaawansowane techniki

programowania

programowania

2013 / 2014

2013 / 2014

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

2

2

5

5

J2EE

J2EE

patterns

patterns

Definowane

Definowane

dla poszczeg

dla poszczeg

ó

ó

lnych warstw :

lnych warstw :

Presentation

Presentation

Layer

Layer

(

(

np

np

. Front

. Front

Controller

Controller

)

)

Business

Business

Layer

Layer

Integration

Integration

Layer

Layer

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

3

3

5

5

Bussines

Bussines

Layer

Layer

patterns

patterns

Najbardziej typowe :

Najbardziej typowe :

Session

Session

Facade

Facade

Service

Service

Locator

Locator

Business

Business

Delegate

Delegate

Transfer

Transfer

Object

Object

>>

>>

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

4

4

5

5

Session

Session

Facade

Facade

Cel zasadniczy :

Cel zasadniczy :

Dla zapewnienia jednolitego

Dla zapewnienia jednolitego

-

-

zorientowanego na zarz

zorientowanego na zarz

ą

ą

dzanie

dzanie

strumieniem prac (

strumieniem prac (

workflow

workflow

)

)

-

-

interface

interface

u

u

z warstw

z warstw

ą

ą

prezentacji

prezentacji

(klientem)

(klientem)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

5

5

5

5

Session

Session

Facade

Facade

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

6

6

5

5

Session

Session

Facade

Facade

Transakcje :

Transakcje :

Zarz

Zarz

ą

ą

dzanie skomplikowane, ka

dzanie skomplikowane, ka

ż

ż

dy

dy

bean

bean

realizuje

realizuje

swoj

swoj

ą

ą

oddzieln

oddzieln

ą

ą

transakcj

transakcj

ę

ę

po stronie serwera.

po stronie serwera.

Potrzebna zatem koordynacja

Potrzebna zatem koordynacja

(synchronizacja) operacji na poziomie

(synchronizacja) operacji na poziomie

repozytorium.

repozytorium.

Zapewnienie koordynacji w celu obj

Zapewnienie koordynacji w celu obj

ę

ę

cia

cia

wielu

wielu

bean

bean

’ó

’ó

w

w

pojedyncz

pojedyncz

ą

ą

transakcj

transakcj

ą

ą

wymaga dodatkowej logiki.

wymaga dodatkowej logiki.

background image

2

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

7

7

5

5

Session

Session

Facade

Facade

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

8

8

5

5

Session

Session

Facade

Facade

Takie rozwi

Takie rozwi

ą

ą

zanie w oczywisty spos

zanie w oczywisty spos

ó

ó

b

b

pozwala na obj

pozwala na obj

ę

ę

cie operacji

cie operacji

wykonywanych przez wiele obiekt

wykonywanych przez wiele obiekt

ó

ó

w

w

pojedyncz

pojedyncz

ą

ą

transakcj

transakcj

ą

ą

.

.

Daje zar

Daje zar

ó

ó

wno mo

wno mo

ż

ż

liwo

liwo

ść

ść

obs

obs

ł

ł

ugi b

ugi b

łę

łę

d

d

ó

ó

w

w

jak i wycofania si

jak i wycofania si

ę

ę

(

(

rollback

rollback

) z

) z

pomy

pomy

ś

ś

lnie zako

lnie zako

ń

ń

czonych fragment

czonych fragment

ó

ó

w

w

operacji, je

operacji, je

ż

ż

eli w p

eli w p

ó

ó

ź

ź

niejszych etapach

niejszych etapach

pojawia si

pojawia si

ę

ę

problem.

problem.

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

9

9

5

5

Session

Session

Facade

Facade

W praktyce pojedynczy obiekt tego typu

W praktyce pojedynczy obiekt tego typu

by

by

ł

ł

by zbyt rozbudowany.

by zbyt rozbudowany.

Z drugiej strony traci sens tworzenie

Z drugiej strony traci sens tworzenie

obiekt

obiekt

ó

ó

w tego typu na zasadzie 1

w tego typu na zasadzie 1

-

-

1 dla

1 dla

ka

ka

ż

ż

dego przypadku u

dego przypadku u

ż

ż

ycia.

ycia.

W praktyce stosujemy grupowanie

W praktyce stosujemy grupowanie

operacji, a wi

operacji, a wi

ę

ę

c pojedynczy obiekt

c pojedynczy obiekt

steruje przep

steruje przep

ł

ł

ywem prac w obr

ywem prac w obr

ę

ę

bie

bie

pewnej logicznie wyodr

pewnej logicznie wyodr

ę

ę

bnionej grupy

bnionej grupy

operacji.

operacji.

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

10

10

5

5

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

11

11

5

5

Session

Session

Facade

Facade

Session

Session

Facade

Facade

jest

jest

synchroniczn

synchroniczn

ą

ą

metod

metod

ą

ą

komunikowania si

komunikowania si

ę

ę

z warstw

z warstw

ą

ą

logiki

logiki

bussinesowej, a wi

bussinesowej, a wi

ę

ę

c mo

c mo

ż

ż

e (winna) by

e (winna) by

ć

ć

u

u

ż

ż

ywana w sytuacjach w kt

ywana w sytuacjach w kt

ó

ó

rych oczekujemy

rych oczekujemy

natychmiastowej odpowiedzi (reakcji). Ten

natychmiastowej odpowiedzi (reakcji). Ten

typ operacji dotyczy np.

typ operacji dotyczy np.

odczytu

odczytu

(pobrania)

(pobrania)

informacji.

informacji.

W sytuacji zapisu (

W sytuacji zapisu (

write

write

) lub aktualizacji

) lub aktualizacji

(

(

update

update

) mo

) mo

ż

ż

e by

e by

ć

ć

sensownym rozwa

sensownym rozwa

ż

ż

enie

enie

u

u

ż

ż

ycia wzorca

ycia wzorca

Message

Message

Facade

Facade

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

12

12

5

5

Service

Service

Facade

Facade

background image

3

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

13

13

5

5

Service

Service

Facade

Facade

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

14

14

5

5

Bussines

Bussines

Delegate

Delegate

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

15

15

5

5

Bussines

Bussines

Delegate

Delegate

Bussines

Bussines

Delegate

Delegate

pe

pe

ł

ł

ni rol

ni rol

ę

ę

proxy

proxy

dla

dla

klient

klient

ó

ó

w

w

dla ka

dla ka

ż

ż

dego odwo

dego odwo

ł

ł

ania do

ania do

obiektu zdalnego istnieje zwykle

obiektu zdalnego istnieje zwykle

odpowiednik lokalny (relacja 1

odpowiednik lokalny (relacja 1

-

-

1).

1).

Korzystaj

Korzystaj

ą

ą

c z takiego podej

c z takiego podej

ś

ś

cia klient

cia klient

wo

wo

ł

ł

a

a

żą

żą

dan

dan

ą

ą

us

us

ł

ł

ug

ug

ę

ę

i po pierwsze nie

i po pierwsze nie

musi

musi

wiele o niej wiedzie

wiele o niej wiedzie

ć

ć

(service

(service

locator

locator

), po drugie nie jest istotne, czy

), po drugie nie jest istotne, czy

jest to us

jest to us

ł

ł

uga lokalna, czy zas

uga lokalna, czy zas

ó

ó

b zdalny

b zdalny

(bussines

(bussines

delegate

delegate

)

)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

16

16

5

5

Bussines

Bussines

Delegate

Delegate

Ten obiekt winien zapewnia

Ten obiekt winien zapewnia

ć

ć

niezb

niezb

ę

ę

dn

dn

ą

ą

logik

logik

ę

ę

dla obs

dla obs

ł

ł

ugi :

ugi :

b

b

łę

łę

d

d

ó

ó

w

w

typu us

typu us

ł

ł

uga czasowo

uga czasowo

niedost

niedost

ę

ę

pn

pn

ą

ą

(np. brak

(np. brak

łą

łą

czno

czno

ś

ś

ci sieciowej

ci sieciowej

z zasobem zdalnym)

z zasobem zdalnym)

powt

powt

ó

ó

rnego wykonania (

rnego wykonania (

retry

retry

) w przypadku

) w przypadku

wyst

wyst

ą

ą

pienia sytuacji umo

pienia sytuacji umo

ż

ż

liwiaj

liwiaj

ą

ą

cych

cych

dalsz

dalsz

ą

ą

obs

obs

ł

ł

ug

ug

ę

ę

np. w trybie

np. w trybie

failover

failover

obs

obs

ł

ł

ugi wyj

ugi wyj

ą

ą

tk

tk

ó

ó

w (t

w (t

ł

ł

umaczenie wyj

umaczenie wyj

ą

ą

tk

tk

ó

ó

w

w

warstwy us

warstwy us

ł

ł

ug

ug

na wyj

na wyj

ą

ą

tki

tki

warstwy

warstwy

aplikacji

aplikacji

)

)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

17

17

5

5

Business

Business

Delegate

Delegate

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

18

18

5

5

Business

Business

Delegate

Delegate

background image

4

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

19

19

5

5

BD

BD

with

with

Adapter

Adapter

strategy

strategy

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

20

20

5

5

JNDI

JNDI

Java

Java

Naming

Naming

and

and

Directory

Directory

Interface

Interface

Interface

Interface

, kt

, kt

ó

ó

ry umo

ry umo

ż

ż

liwia wi

liwia wi

ą

ą

zanie (

zanie (

binding

binding

)

)

nazw

nazw

z us

z us

ł

ł

ugami oraz danymi

ugami oraz danymi

(informacjami)

(informacjami)

Us

Us

ł

ł

uga JNDI umo

uga JNDI umo

ż

ż

liwia stworzenie dla potrzeb

liwia stworzenie dla potrzeb

aplikacji pojedynczego mechanizmu

aplikacji pojedynczego mechanizmu

oznaczania

oznaczania

(nazywania) :

(nazywania) :

maszyn (serwer

maszyn (serwer

ó

ó

w)

w)

u

u

ż

ż

ytkownik

ytkownik

ó

ó

w

w

obiekt

obiekt

ó

ó

w

w

us

us

ł

ł

ug (innych)

ug (innych)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

21

21

5

5

Service

Service

Locator

Locator

Service

Service

Locator

Locator

pattern

pattern

przes

przes

ł

ł

ania

ania

(

(

hide

hide

)

)

fakt korzystania z us

fakt korzystania z us

ł

ł

ug JNDI przed

ug JNDI przed

klientem (klient korzysta z

klientem (klient korzysta z

nazw

nazw

)

)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

22

22

5

5

Service

Service

Locator

Locator

Pojedyncza instancja obs

Pojedyncza instancja obs

ł

ł

uguje

uguje

wszystkich klient

wszystkich klient

ó

ó

w. Poszukiwanie

w. Poszukiwanie

zasob

zasob

ó

ó

w (

w (

resource

resource

s

s

) JNDI odbywa si

) JNDI odbywa si

ę

ę

w obr

w obr

ę

ę

bie kontekstu, kt

bie kontekstu, kt

ó

ó

ry tworzony jest

ry tworzony jest

raz (podczas pierwszego wo

raz (podczas pierwszego wo

ł

ł

ania

ania

Service

Service

Locator

Locator

a

a

)

)

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

23

23

5

5

Example

Example

scenario

scenario

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

24

24

5

5

Transfer

Transfer

Object

Object

background image

5

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

25

25

5

5

Integration

Integration

Layer

Layer

patterns

patterns

Data Access

Data Access

Object

Object

Message

Message

Facade

Facade

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

26

26

5

5

Data Access

Data Access

Object

Object

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

27

27

5

5

JDBC Driver

JDBC Driver

Type

Type

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

28

28

5

5

Chwila na refleksj

Chwila na refleksj

ę

ę

...

...

Czy dowiedzia

Czy dowiedzia

ł

ł

e

e

ś

ś

si

si

ę

ę

czego

czego

ś

ś

nowego ?

nowego ?

Czy dowiedzia

Czy dowiedzia

ł

ł

e

e

ś

ś

si

si

ę

ę

czego

czego

ś

ś

Twym zdaniem

Twym zdaniem

wa

wa

ż

ż

nego ?

nego ?

Czy dostrzegasz zwi

Czy dostrzegasz zwi

ą

ą

zek i przydatno

zek i przydatno

ść

ść

przekazanych tre

przekazanych tre

ś

ś

ci w zawodzie, kt

ci w zawodzie, kt

ó

ó

ry sobie

ry sobie

wybra

wybra

ł

ł

e

e

ś

ś

?

?

Masz ewentualne uwagi b

Masz ewentualne uwagi b

ą

ą

d

d

ź

ź

sugestie,

sugestie,

podziel si

podziel si

ę

ę

nimi ...

nimi ...

jrj@pk.edu.pl

jrj@pk.edu.pl

2014

2014

-

-

02

02

-

-

06

06

©

©

2014, Jerzy R. Jaworowski

2014, Jerzy R. Jaworowski

29

29

5

5

Dzi

Dzi

ę

ę

kuj

kuj

ę

ę

za uwag

za uwag

ę

ę


Wyszukiwarka

Podobne podstrony:
2013 11 05
Higiena mleka, Wykład (5) 05-12-2013, Wykład (4) 05-12-2013
2013.10.05., angielski (słówka i zwroty)
2013 10 05 angielski (słówka i zwroty)id 28283
2013 ZTP 08
2013 10 05
2013 ZTP 04
01.Strona tytułowa, $$$$prace 2013$$$, energa, 05.KS 19-28z, PROJEKT 19-28z
2013 ZTP 07
2013 03 05 ochrona własności intelektualnej
2013 ZTP 06
2013 ZTP 00
2013 ZTP 03
2013 10 05 angielski (czasy Present S i Present C)id 28281
2013 ZTP 02
2013 ZTP 01
2013 11 05

więcej podobnych podstron