„Objektumorientált szoftvertervezés - Tervezési minták” változatai közötti eltérés
Nincs szerkesztési összefoglaló |
Nincs szerkesztési összefoglaló |
||
| 14. sor: | 14. sor: | ||
Mármint az első hívást ugye a kliens kezdeményezi, és utána ha esemény történik, akkor a szerepek megcserélődnek, és a szerver kezdeményez visszahívást a kliensek felé. | Mármint az első hívást ugye a kliens kezdeményezi, és utána ha esemény történik, akkor a szerepek megcserélődnek, és a szerver kezdeményez visszahívást a kliensek felé. | ||
callback.png | [[Fájl:callback.png]] | ||
===Factory=== | ===Factory=== | ||
| 21. sor: | 21. sor: | ||
A szerver minden egyes új hívásnál új példányt hoz létre a kiszolgáló servantból. | A szerver minden egyes új hívásnál új példányt hoz létre a kiszolgáló servantból. | ||
factory.png | [[Fájl:factory.png]] | ||
===Mobil ügynök=== | ===Mobil ügynök=== | ||
| 29. sor: | 29. sor: | ||
Lehet például arra használni, hogy elküldeni egy adatbázisnak, ott leszelektálja az eredményt, majd azzal visszajön, így ha valamit nem tudunk SQL-be megírni, akkor is csak minimális lesz a hálózati forgalom. | Lehet például arra használni, hogy elküldeni egy adatbázisnak, ott leszelektálja az eredményt, majd azzal visszajön, így ha valamit nem tudunk SQL-be megírni, akkor is csak minimális lesz a hálózati forgalom. | ||
mobileagent.png | [[Fájl:mobileagent.png]] | ||
===Observer=== | ===Observer=== | ||
| 69. sor: | 70. sor: | ||
Objektumok viselkedésének kiterjesztése anélkül, hogy módosítanánk az oszályt. | Objektumok viselkedésének kiterjesztése anélkül, hogy módosítanánk az oszályt. | ||
Szükséges hozzá egy | Szükséges hozzá egy IAdaptable interface, amiben van egy Object getAdapter(Class adapter) fv. Ez megkapja, hogy mivé szeretnénk kiegészíteni(adapter class-a), és létrehozza azt, majd visszaadja. A kiegészítendő osztályunknak ezt kell implementálnia. | ||
A probléma ezzel az, hogy ha új kiegészítést akarunk felvenni(új fajta adapter), akkor módosítanunk kell az osztályt. Erre megoldás, ha létrehozunk egy IAdapterFactory-t és egy IAdapterManager-t(ez benne van az Eclipse-ben, szal ezt nem kell nekünk megírni), ahol az AdapterManager-be regisztálhatunk adaptereketé az AdapterFactoryból pedig a Object getAdapter(Object adaptableObject, Class adapterType) fv-n keresztül elkérhetjük a kiterjeszteni kívánt osztályhoz tartozó adaptert. | A probléma ezzel az, hogy ha új kiegészítést akarunk felvenni(új fajta adapter), akkor módosítanunk kell az osztályt. Erre megoldás, ha létrehozunk egy IAdapterFactory-t és egy IAdapterManager-t(ez benne van az Eclipse-ben, szal ezt nem kell nekünk megírni), ahol az AdapterManager-be regisztálhatunk adaptereketé az AdapterFactoryból pedig a Object getAdapter(Object adaptableObject, Class adapterType) fv-n keresztül elkérhetjük a kiterjeszteni kívánt osztályhoz tartozó adaptert. | ||