Projektowanie Aplikacji Internetowych. Wzorce projektowe warstwy usług
|
|
- Lech Małek
- 6 lat temu
- Przeglądów:
Transkrypt
1 Wzorce projektowe warstwy usług
2 Wzorce projektowe warstwy usług Service Locator Ułatwia wyszukanie komponentów usługowych Service Activator Umożliwia asynchroniczne przesyłanie żądań do komponentów biznesowych Session Façade Zapewnia wspólny interfejs dla wielu komponentów biznesowych Wzorce projektowe warstwy usług 2
3 Service Locator Wzorce projektowe warstwy usług 3/\
4 Service Locator - problemy Połączenie się z komponentem usługowym wymaga jego odnalezienia lub utworzenia nowego komponentu. Do tego celu wykorzystuje się obiekty domowe komponentów. Dla uzyskania dostępu do obiektu domowego trzeba utworzyć inicjalny kontekst usługi U wielu różnych klientów pojawia się ten sam kod wykorzystujący API usługi. Wyszukanie obiektu domowego zużywa znaczną ilość zasobów. Wzorce projektowe warstwy usług 4
5 Struktura komponentów Client uses «singleton» Service Locator uses creates uses uses uses Initial Context looks up Business Service looks up / creates Service Factory Wzorce projektowe warstwy usług 5/\
6 Współdziałanie komponentów Client «singleton» Service Locator Business Service 1: Get Instance 1.1: Get Instance Initial Context 2: Get service 2.1: Lookup 2.3: Return Service 2.4: Invoke Method 2.1.2: Return Service Factory 2.2: Get Service 2.1.1: Create Service Factory 2.2.1: Create / lookup Wzorce projektowe warstwy usług 6/\
7 Strategie implementacji Dla komponentów EJB z wykorzystaniem obiektu domowego (interfejs EJBHome) Przy wymianie komunikatów P2P (point-topoint) z wykorzystaniem kolejki komunikatów (JMS) Przy wymianie komunikatów P/S (publish/subscribe) z wykorzystaniem usług tematycznych Wzorce projektowe warstwy usług 7
8 Przykład implementacja lokalizatora z wykorzystaniem obiektu domowego (1) public class ServiceLocator private static ServiceLocator me; InitialContext context = null; private ProjectHome = null; private ResourceHome = null; // Tworzenie nowego kontekstu inicjalnego private ServiceLocator() context = new InitialContext(); // Implementacja Singletona metoda zwraca pojedynczą instancję klasy public static ServiceLocator getinstance() if (me == null) me = new ServiceLocator(); return me; Wzorce projektowe warstwy usług 8
9 Przykład implementacja lokalizatora z wykorzystaniem obiektu domowego (2) // Wyliczenie typów usług public class Services final public static int PROJECT = 0; final public static int RESOURCE = 1; // Definicje klasy i nazwy dla EJB "Project" final static Class PROJECT_CLASS = ProjectHome.class; final static String PROJECT_NAME = "Project"; // Definicje klasy i nazwy dla EJB "Resource" final static Class RESOURCE_CLASS = ResourceHome.class; final static String RESOURCE_NAME = "Resource"; Wzorce projektowe warstwy usług 9
10 Przykład implementacja lokalizatora z wykorzystaniem obiektu domowego (3) // Zwraca klasę dla danego typu usługi static private Class getserviceclass (int service) switch( service ) case Services.PROJECT: return PROJECT_CLASS; case Services.RESOURCE: return RESOURCE_CLASS; return null; // Zwraca nazwę JNDI dla danego typu usługi static private String getservicename (int service) switch( service ) case Services.PROJECT: return PROJECT_NAME; case Services.RESOURCE: return RESOURCE_NAME; return null; Wzorce projektowe warstwy usług 10
11 Przykład implementacja lokalizatora z wykorzystaniem obiektu domowego (4) // Zwraca obiekt domowy dla danego typu usługi // wykorzystując nazwę JNDI i klasę obiektu private EJBHome gethome (int service) EJBHome home = null; // utworzenie inicjalnego kontekstu Context initial = new InitialContext(); // Wyszukanie referencji do obiektu // przez inicjalny kontekst Object objref = initial.lookup (getservicename(service)); // Zawężenie klasy obiektu domowego Object obj = PortableRemoteObject.narrow (objref, getserviceclass(s)); // Utworzenie obiektu domowego home = (EJBHome)obj; return home; // Zwraca statyczny obiekt domowy dla usługi public EJBHome getservicehome(int service) switch( service ) case Services.PROJECT: if (ProjectHome==null) ProjectHome=GetHome(s); return ProjectHome; case Services.RESOURCE: if (ResourceHome==null) ResourceHome=GetHome(s); return ResourceHome; return null; Wzorce projektowe warstwy usług 11
12 Zalety zastosowania wzorca Ukrycie złożoności procesu wyszukiwania i tworzenia obiektów biznesowych Zapewnienie jednolitego dostępu do usług Ułatwienie dodawania nowych obiektów biznesowych Zwiększenie wydajności sieci Zwiększenie wydajności aplikacji przez lokalne buforowanie Wzorce projektowe warstwy usług 12
13 Service Activator Wzorce projektowe warstwy usług 13/\
14 Service Activator - motywacje Wywoływanie metod komponentów biznesowych następuje przez zdalne referencje w sposób synchroniczny. Brak mechanizmu zapewniającego ciągły stan aktywności i gotowości komponentu biznesowego. Niektórzy klienci nie chcą lub nie mogą czekać na zakończenie przetwarzania synchronicznego. Komponenty biznesowe nie zapewniają mechanizmu dostępu asynchronicznego do usług (zwłaszcza komponenty ze stanami i komponenty encji). Wzorce projektowe warstwy usług 14
15 Rozwiązanie Aktywator usług odbiera komunikaty od klientów i przetwarza je na wywołania komponentów usługowych. Może powiadamiać klienta o zakończeniu przetwarzania asynchronicznego lub o błędach w przetwarzaniu. Może być zaimplementowany jako osobna usługa (wywołuje usługi po stronie serwera). Może wykorzystywać lokalizator usług. Wzorce projektowe warstwy usług 15
16 Współdziałanie komponentów Client Service Activator Business Object 1 Business Object 2 1: Send (Message (Request)) 1.1: Parse (Message) 1.2: Process (Request) 1.3: Process (Request) 14: Send (Acknowledge (Result)) Wzorce projektowe warstwy usług 16/\
17 Strategie implementacji Dla komponentu usługowego: Zastosowanie komponentu encji Zastosowanie komponentu sesji Dla aktywatora usług: Implementacja w postaci osobnej aplikacji sterowanej komunikatami Implementacja w postaci usługi serwera aplikacji Komponent biznesowy w roli klienta Klientem może być inny komponent biznesowy Możliwość integracji starszych aplikacji z J2EE Wzorce projektowe warstwy usług 17
18 Przykład implementacja aktywatora przez kolejkę komunikatów (1) public class OrderServiceActivator implements javax.jms.messagelistener // Obiekty realizujące kolejkę komunikatów private QueueSession orderqueuesession; private QueueReceiver orderqueuereceiver; // Nazwy powinny pochodzić ze środowiska lub pliku konfiguracyjnego private String connfactoryname = "PendingOrdersQueueFactory"; private String queuename = "PendingOrders"; // Wykorzystywany lokalizator usług private JMSServiceLocator servicelocator; // Konstruktor aktywatora rozpoczyna nasłuchiwanie komunikatów public OrderServiceActivator(String connfactoryname, String queuename) super(); this.connfactoryname = connfactoryname; this.queuename = queuename; startlistener(); Wzorce projektowe warstwy usług 18
19 Przykład implementacja aktywatora przez kolejkę komunikatów (2) // Metoda nasłuchiwania private void startlistener() try // Korzystamy z lokalizatora usług i tworzymy połączenie dla kolejki servicelocator = new JMSServiceLocator (connfactoryname); qconnfactory = servicelocator.getqueueconnectionfactory(); qconn = qconnfactory.createqueueconnection(); // Tworzymy sesję kolejki, samą kolejkę i odbiornik kolejki orderqueuesession = qconn.createqueuesession (...); Queue ordersqueue = servicelocator.getqueue(queuename); orderqueuereceiver = orderqueuesession.createreceiver(ordersqueue); // Do odbiornika kolejki podłączamy ten komponent aktywatora orderqueuereceiver.setmessagelistener(this); catch (JMSException excp)... Wzorce projektowe warstwy usług 19
20 Przykład implementacja aktywatora przez kolejkę komunikatów (3) // Asynchronicznie wywoływana metoda reakcji na komunikat przychodzący do kolejki public void onmessage(message msg) try // rozpoznanie komunikatu Message msg... // wykorzystanie delegata biznesowego do przetwarzania zamówienia OrderProcessorDelegate orderprocdeleg = new OrderProcessorDelegate(); // Wykorzystanie parametrów z komunikatu do realizacji zamówienia orderprocdeleg.fulfillorder(...); // wysyłanie potwierdzenia... catch (JMSException jmsexcp)... catch (Exception excp)... Wzorce projektowe warstwy usług 20
21 Zalety i wady Możliwość wprowadzenia sterowania komunikatami dla starszych aplikacji Zapewnia asynchroniczne wywołanie dla wszystkich typów komponentów biznesowych. Zwalnia klientów od konieczności oczekiwania na zakończenie wykonywania usług. Implementacja w postaci osobnej aplikacji wymaga upewnienia się co to aktywności aplikacji rozwiązanie implementacja jako usługa serwera usług. Wzorce projektowe warstwy usług 21
22 Session Façade Wzorce projektowe warstwy usług 22/\
23 Session Façade - problemy Zmiany interfejsów komponentów usługowych wymuszają zmiany ich wykorzystania po stronie klienta. Brak jednolitej strategii dostępu dla klienta niespójne interfejsy komponentów usługowych Liczne żądania wywołania przekazywane między klientem a warstwą usług problemy z wydajnością sieci. Wzorce projektowe warstwy usług 23
24 Zalecenia Uprościć interfejs między klientami a komponentami biznesowymi. Zmniejszyć liczbę komponentów biznesowych udostępnianych dla klienta przez warstwę sieciową. Ukryć przed klientem interakcje i wzajemne zależności między komponentami biznesowymi. Stworzyć jednolitą, gruboziarnistą warstwę pośredniczącą oddzielającą komponenty biznesowe od warstwy aplikacji. Wzorce projektowe warstwy usług 24
25 Rozwiązanie Fasada sesji (Session Façade) jako klasa pośrednicząca pomiędzy warstwą aplikacji a warstwą usług, która: Zarządza interakcjami pomiędzy klientami a obiektami biznesowymi oraz pomiędzy samymi obiektami biznesowymi. Zarządza cyklem życia obiektów biznesowych (tworzenie, wyszukiwanie, modyfikacja, usuwanie). Może delegować zarządzanie do pojedynczego obiektu (np. lokalizatora usług). Modeluje nietrwałe relacje między obiektami jako przepływ pracy (workflow). Wzorce projektowe warstwy usług 25
26 Session Façade struktura komponentów Client uses «session» Session Facade accesses Business Object «entity» Business Entity «session» Business Session accesses accesses DAO Wzorce projektowe warstwy usług 26/\
27 Współdziałanie komponentów Client «session» Session Facade «entity» Business Entity 1 «session» Business Session «entity» Business Entity 2 DAO 1: Invoke Method 1.1: Get / Set Data 1.2: Invoke Method 2: Invoke Method 2.1: Invoke Method 2.1.1: Get / Set Data 2.1.2: Get/Set Data 3: Invoke Method 3.1: Get/Set Data Wzorce projektowe warstwy usług 27/\
28 Implementacja bezstanowa a implementacja stanowa Niekonwersacyjny proces biznesowy tylko jedno wywołanie metody umożliwia całkowite wykonanie usługi bezstanowy komponent sesyjny Konwersacyjny proces biznesowy wykonanie usługi wymaga kilku wywołań metod komponent sesyjny ze stanami Wzorce projektowe warstwy usług 28
29 Strategie implementacyjne dla obiektów biznesowych Implementacja przez komponent sesyjny Implementacja przez komponent encyjny Implementacja przez DAO Wzorce projektowe warstwy usług 29
30 Przykład interfejs zdalny fasady sesji (1) public interface ProjectResourceManager extends EJBObject // Połączenie do nowego zbioru encji public resetentities (String resourceid, String projectid,...) throws RemoteException, ResourceException ; // Przypisanie zasobu do projektu public void assignresourcetoproject (int numhours) throws RemoteException, ResourceException ; // Odłączenie zasobu od projektu public void unassignresourcefromproject () throws RemoteException, ResourceException ;... // Metody dostępu do danych zasobu public ResourceTO getresourcedata() throws RemoteException, ResourceException ; public void setresourcedata (ResourceTO resource) throws RemoteException, ResourceException ; public ResourceTO createnewresource (ResourceTO resource) throws ResourceException ; Wzorce projektowe warstwy usług 30
31 Przykład interfejs zdalny fasady sesji (2) // Blokowanie czasu zasobu public void addblockouttime(collection blockouttime) throws RemoteException,BlockoutTimeException ; // Aktualizacja blokady (odblokowanie) czasu zasobu public void updateblockouttime(collection blockouttime) throws RemoteException,BlockoutTimeException ; // Metody dostępu do angaży zasobu public Collection getresourcecommitments() throws RemoteException, ResourceException; // Metody dostępu do danych projektu public ProjectTO getprojectdata() throws RemoteException, ProjectException ; public void setprojectdata (ProjectTO project) throws RemoteException, ProjectException ; public ProjectTO createnewproject (ProjectTO project) throws RemoteException, ProjectException ;... Wzorce projektowe warstwy usług 31
32 Przykład implementacja fasady sesji (1) public class ProjectResourceManagerSession implements SessionBean // wewnętrzny kontekst sesji private SessionContext context; // Zdalne referencje do komponentów encyjnych private Resource resourceentity = null; private Project projectentity = null;... // Tworzenie sesji dla określonego zasobu i projektu public void ejbcreate(string resourceid, String projectid,...) throws CreateException, ResourceException try // Połączenie z wymaganymi komponentami encyjnymi connecttoentities(resourceid, projectid,...); catch(...)... Wzorce projektowe warstwy usług 32
33 Przykład implementacja fasady sesji (2) // Metoda połączenia z komponentami encyjnymi // dla podanych wartości kluczy głównych private void connecttoentities (String resourceid, String projectid) throws ResourceException resourceentity = getresourceentity(resourceid); projectentity = getprojectentity(projectid);... // Metoda ponownego połączenia fasady sesji // z innymi komponentami encyjnymi dla innych wartości kluczy public resetentities (String resourceid, String projectid,...) throws PSAException connecttoentities(resourceid, projectid,...); Wzorce projektowe warstwy usług 33
34 Przykład implementacja fasady sesji (3) // Prywatna metoda uzyskania dostępu do obiektu domowego zasobów private ResourceHome getresourcehome() throws ServiceLocatorException return ServiceLocator.getInstance().getHome ("ResourceEntity", ResourceHome.class); // Prywatna metoda uzyskania dostępu do obiektu domowego projektu private ProjectHome getprojecthome() throws ServiceLocatorException return ServiceLocator.getInstance().getHome ("ProjectEntity", ProjectHome.class); Wzorce projektowe warstwy usług 34
35 Przykład implementacja fasady sesji (4) // Prywatna metoda uzyskania dostępu do encji zasobu private Resource getresourceentity (String resourceid) throws ResourceException try ResourceHome home = getresourcehome(); return (Resource) home.findbyprimarykey(resourceid); catch(... )... // Prywatna metoda uzyskania dostępu do encji projektu private Project getprojectentity (String projectid) throws ProjectException... Wzorce projektowe warstwy usług 35
36 Przykład implementacja fasady sesji (5) // Metoda realizacji przepływu związanego z przypisaniem zasobu do projektu public void assignresourcetoproject (int numhours) throws PSAException try if ((projectentity == null) (resourceentity == null)) // Błąd przy braku dostępu do encji projektu lub zasobu throw new PSAException(...); ResourceTO resourceto = resourceentity.getresourcedata(); // Pobranie danych zasobu ProjectTO projectto = projectentity.getprojectdata(); // Pobranie danych projektu projectentity.addresource (resourceto); // Dodanie zasobu do projektu CommitmentTO commitment = new CommitmentTO(...); projectentity.addcommitment(commitment); catch(...)... // Utworzenie nowego angażu dla projektu // Dodanie angażu do zasobu Wzorce projektowe warstwy usług 36
37 Skutki zastosowania wzorca (1) Wprowadza warstwę sterującą warstwą biznesową w większych aplikacjach można zastosować wiele fasad sesji w mniejszych służy jako proxy Przedstawia jednolity interfejs Upraszcza interfejs do warstwy biznesowej Ujednolica interfejsy do różnych komponentów usługowych Zmniejsza powiązanie, ułatwia zarządzanie Przy modyfikacji warstwy usług aplikacje klienckie mogą pozostać bez zmian modyfikacje kończą się w warstwie pośredniczącej Zwiększa wydajność, redukuje drobnoziarnistość metod Zmniejsza narzut sieciowy na aplikację poprzez zmniejszenie liczby wywołań usług z warstwy biznesowej przez klienta. W zamian klienci wywołują gruboziarniste usługi fasady. Wzorce projektowe warstwy usług 37
38 Skutki zastosowania wzorca (2) Zapewnia dostęp gruboziarnisty Zamiast osobnego interfejsu do każdego komponentu encyjnego można stosować pojedynczą fasadę dla każdego podsystemu. Jedna fasada dla całego systemu tylko w prostych aplikacjach Centralizuje zarządzanie bezpieczeństwem Poprzez scentralizowanie metod bezpieczeństwa w fasadzie można prowadzić ujednoliconą politykę bezpieczeństwa dla wszystkich komponentów usługowych (nie potrzebne wielokrotne logowanie) Centralizuje sterowanie transakcjami Umożliwia dopasowanie usług do modelu przypadków użycia na zasadzie przepływu sterowania (workflow). Umożliwia sterowanie transakcyjne. Prezentuje mniej zdalnych interfejsów dla klientów Ułatwia zrozumienie interfejsu przez klienta. Wzorce projektowe warstwy usług 38
39 Literatura Rysunki i przykłady pochodzą z następujących źródeł: Literatura uzupełniająca: Gamma et al: Wzorce projektowe, WNT Warszawa Buschman et al: Pattern-Oriented Software Architecture Volume 1: A System of Patterns, Wyd. Wiley, Schmidt et al: Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects, Wyd. Wiley, Wzorce projektowe warstwy danych 39
Projektowanie Aplikacji Internetowych Jarosław Kuchta. Wzorce projektowe warstwy biznesowej
Jarosław Kuchta Wzorce projektowe warstwy biznesowej Wzorce projektowe dotyczące danych, obiektów i logiki biznesowej Transfer Object Assembler Łączy dane pochodzące z różnych komponentów biznesowych Composite
Bardziej szczegółowo"Biznesowe" wzorce projektowe
POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI Katedra Architektury Systemów Komputerowych Jarosław Kuchta Instrukcja do laboratorium z przedmiotu Projektowanie Aplikacji Internetowych
Bardziej szczegółowoZagadnienia projektowania aplikacji J2EE
211 Zagadnienia projektowania aplikacji J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 212 Wstęp Techniki projektowe: Wprowadzenie modułu
Bardziej szczegółowoWzorce projektowe warstwy danych
POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI Katedra Architektury Systemów Komputerowych Jarosław Kuchta Instrukcja do laboratorium z przedmiotu Projektowanie Aplikacji Internetowych
Bardziej szczegółowoWprowadzenie do Enterprise JavaBeans 2.0
71 Wprowadzenie do Enterprise JavaBeans 2.0 Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 72 Wprowadzenie do EJB Rodzaje komponentów Zdalny
Bardziej szczegółowoWarstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.
Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy
Bardziej szczegółowoBezstanowe komponenty sesyjne i zdarzenia zwrotne
Bezstanowe komponenty sesyjne i zdarzenia zwrotne 1. Zdarzenia zwrotne. klasy nasłuchujące, klasy nasłuchujące a dziedziczenie. 2. Bezstanowe komponenty sesyjne. interfejsy: bazowy, zdalny i lokalny, obiekty
Bardziej szczegółowoProjektowanie Aplikacji Rozproszonych Jarosław Kuchta. Wzorce projektowe warstwy danych
Rozproszonych Jarosław Kuchta Wzorce projektowe warstwy danych Wzorce projektowe Core J2EE Patterns (podział umowny) Warstwy danych: Data Access Object, Transfer Object, Value List Handler Warstwy biznesowej:
Bardziej szczegółowoEnterprise JavaBeans
Enterprise JavaBeans 1. Wprowadzenie. 2. Przegląd komponentów EJB. komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 3. Kontener komponentów EJB: JBoss. 1 Enterprise JavaBeans
Bardziej szczegółowoPlan prezentacji. Budowa aplikacji w technologii Enterprise JavaBeans. Przegląd architektur: CORBA. Cele budowy aplikacji rozproszonych
Plan prezentacji Budowa aplikacji w technologii Enterprise JavaBeans Przegląd architektur aplikacji rozproszonych: CORBA,, Wprowadzenie do Enterprise JavaBeans () Budowa komponentów sesyjnych Budowa komponentów
Bardziej szczegółowoBudowa aplikacji w technologii. Enterprise JavaBeans. Maciej Zakrzewicz PLOUG
Budowa aplikacji w technologii Enterprise JavaBeans Maciej Zakrzewicz PLOUG Plan prezentacji Przegląd architektur aplikacji rozproszonych: CORBA, SOAP, EJB Wprowadzenie do Enterprise JavaBeans (EJB) Budowa
Bardziej szczegółowoKomponenty sterowane komunikatami
Komponenty sterowane komunikatami 1. Usługa JMS asynchroniczność, model przesyłania komunikatów, 2. Przykład wysyłanie wiadomości, odbieranie wiadomości, komponent sterowany komunikatami 3. Komponenty
Bardziej szczegółowoAplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
Bardziej szczegółowoWzorce logiki dziedziny
Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),
Bardziej szczegółowoAplikacje internetowe i rozproszone - laboratorium
Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,
Bardziej szczegółowoObiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1
Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,
Bardziej szczegółowoEJB 3.0 (Enterprise JavaBeans 3.0)
EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Laboratorium 11 - przegląd wybranych wzorców mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 24 maja 2017 1 / 38 mgr inż. Krzysztof Szwarc Programowanie obiektowe Wzorce
Bardziej szczegółowoProgramowanie komponentowe 5
Budowa warstwy klienta w architekturze typu klient-serwer zbudowanych z komponentów typu EE - klient desktopowy i internetowy. Zastosowanie komponentów opartych na technologii EJB 3.2. na podstawie https://docs.oracle.com/javaee/7/jeett.pdf
Bardziej szczegółowoSingleton. Cel: Przykład: Zastosowanie: Zapewnienie, że klasa ma tylko jedną instancję i dostarczenie globalnego dostępu do niej.
1/8 Singleton Cel: Zapewnienie, że klasa ma tylko jedną instancję i dostarczenie globalnego dostępu do niej. Przykład: Niekiedy ważne jest, aby tworzyć tylko jedną instancję jakiejś klasy. Globalne zmienne
Bardziej szczegółowoPodejście obiektowe do budowy systemów rozproszonych
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm
Bardziej szczegółowoAnaliza i projektowanie obiektowe 2016/2017. Wykład 11: Zaawansowane wzorce projektowe (1)
Analiza i projektowanie obiektowe 2016/2017 Wykład 11: Zaawansowane wzorce projektowe (1) Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Wzorce projektowe
Bardziej szczegółowoEnterprise JavaBeans. 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss.
1 Enterprise JavaBeans 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss. 2 Enterprise JavaBeans Enterprise JavaBeans (EJB) to specyfikacja
Bardziej szczegółowoWzorce dystrybucji i wspólbieżności autonomicznej
Wzorce dystrybucji i wspólbieżności autonomicznej 1. Wzorce dystrybucji, fasada zdalna (Remote Facade), obiekt transfery danych (Data Transfer Object), 2. Wzorce współbieżności autonomicznej, blokada optymistyczna
Bardziej szczegółowoRemote Method Invocation 17 listopada 2010
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia
Bardziej szczegółowoPodejście obiektowe do budowy systemów rozproszonych
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak 1 Mechanizm RMI umożliwia
Bardziej szczegółowoJava RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoWzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski
Adapter: opis Wzorce Strukturalne Tomasz Borzyszkowski Alternatywna nazwa: Wrapper (opakowanie) Rola obiektu Adapter: pełni wobec Klienta rolę otoczki, która umożliwia przetłumaczenie jego żądań na protokół
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia
Bardziej szczegółowoAplikacje RMI Lab4
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych
Bardziej szczegółowoRemote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1
P d jś i bi kt d b d t ó Podejście obiektowe do budowy systemów rozproszonych Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java),wywiedziony idi z Remote obie kt aplikacja klie ncka interfe js serw
Bardziej szczegółowoProxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego.
Proxy (pełnomocnik) Cel: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Zastosowanie: Wszędzie tam, gdzie oczekujemy bardziej zaawansowanego odwołania do obiektu, niż zwykły
Bardziej szczegółowoRemote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1
interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoStanowe komponenty sesyjne
Stanowe komponenty sesyjne 1. Porównanie komponentów stanowych i bezstanowych. 2. Cykl życia stanowego komponentu sesyjnego, 3. Komponenty sesyjne a kontekst utrwalania, 4. Zagnieżdżanie komponentów sesyjnych,
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do
Bardziej szczegółowoUsługa TimerService ejbtimeout() @javax.ejb.timeout
TimerService i JNDI 1. Usługa TimerServiece, interfejsy TimedObject, TimerService, Timer, TimerHandle transakcje, zastosowanie usługi w komponentach EJB, cykl życia EJB, problemy. 2. Zasoby JNDI i wstrzykiwanie,
Bardziej szczegółowoSzkolenie wycofane z oferty. Program szkolenia: Enterprise Java Beans 3.0/3.1
Szkolenie wycofane z oferty Program szkolenia: Enterprise Java Beans 3.0/3.1 Informacje: Nazwa: Enterprise Java Beans 3.0/3.1 Kod: Java-EE-EJB Kategoria: Java EE Grupa docelowa: developerzy Czas trwania:
Bardziej szczegółowoZdalne wywołanie metod - koncepcja. Oprogramowanie systemów równoległych i rozproszonych Wykład 7. Rodzaje obiektów. Odniesienie do obiektu
Zdalne wywołanie metod - koncepcja Oprogramowanie systemów równoległych i rozproszonych Wykład 7 RMI (Remote Method Invocation) - obiektowe RPC, dostarcza klientowi interfejs do obiektu, implementacja
Bardziej szczegółowoOprogramowanie systemów równoległych i rozproszonych Wykład 7
Wykład 7 p. 1/2 Oprogramowanie systemów równoległych i rozproszonych Wykład 7 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Zdalne wywołanie
Bardziej szczegółowoDzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton
Dzisiejszy wykład Wzorce projektowe Visitor Client-Server Factory Singleton 1 Wzorzec projektowy Wzorzec nazwana generalizacja opisująca elementy i relacje rozwiązania powszechnie występującego problemu
Bardziej szczegółowoEnterprise JavaBeans (EJB)
Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z sesyjnymi komponentami Enterprise JavaBeans. Zilustrowane będą różnice między komponentami stanowymi i bezstanowymi. Pokazane będzie
Bardziej szczegółowoPrzykładowa implementacja
Wzorce projektowe, cz. 10 Facade Fasada służy do ujednolicenia dostępu do złożonego systemu poprzez udostępnienie uproszczonego i uporządkowanego interfejsu programistycznego. Fasada zwykle implementowana
Bardziej szczegółowoJava RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć
interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka stub interfejs serwer szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoProjektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2015
Projektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2015 1 Wzorce podstawowe 1.1 Interface vs Abstract class class InterfaceAbstractClass
Bardziej szczegółowoEJB 2.x oraz zmiany w standardzie dla EJB 3.0. Michał Stanek
Enterprise JavaBean EJB 2.x oraz zmiany w standardzie dla EJB 3.0 Michał Stanek Plan prezentacji Czym jest EJB Architektura aplikacji J2EE oraz kontener EJB Typy komponentów JavaBean EJB 1.0, EJB 2.x Wady
Bardziej szczegółowoWspółbieżność w środowisku Java
Współbieżność w środowisku Java Wątki i ich synchronizacja Zagadnienia Tworzenie wątków Stany wątków i ich zmiana Demony Synchronizacja wątków wzajemne wykluczanie oczekiwanie na zmiennych warunkowych
Bardziej szczegółowoEnkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
Bardziej szczegółowoSystemy Rozproszone - Ćwiczenie 6
Systemy Rozproszone - Ćwiczenie 6 1 Obiekty zdalne Celem ćwiczenia jest stworzenie obiektu zdalnego świadczącego prostą usługę nazewniczą. Nazwy i odpowiadające im punkty końcowe będą przechowywane przez
Bardziej szczegółowoNarzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl
Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z
Bardziej szczegółowoZaawansowane programowanie w C++ (PCP)
Zaawansowane programowanie w C++ (PCP) Wykład 4 - wzorce projektowe. dr inż. Robert Nowak - p. 1/18 Powtórzenie klasy autonomiczne tworzenie nowych typów: dziedziczenie i agregacja dziedziczenie: przedefiniowywanie
Bardziej szczegółowo1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)
Instrukcja tworzenia aplikacji EE na podstawie aplikacji z dostępem do bazy danych, prezentowanej na zajęciach lab.5 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie
Bardziej szczegółowoPlan wykładu CORBA. Cechy aplikacji rozproszonych. Aplikacje rozproszone
Plan wykładu CORBA Wprowadzenie Architektura CORBA IDL język definicji interfejsów ORB Object Request Broker Usługi i POA Aplikacje CORBA tworzenie serwera tworzenie klienta Aplikacje rozproszone Cechy
Bardziej szczegółowoMETODY PROGRAMOWANIA
METODY PROGRAMOWANIA Wzorzec Repository 21 października 2017 Krzysztof Pawłowski kpawlowski@pjwstk.edu.pl Każdy wzorzec opisuje problem, który ciągle pojawia się w naszej dziedzinie, a następnie określa
Bardziej szczegółowoEnterprise JavaBeans (EJB)
Enterprise JavaBeans (EJB) Wykład prowadzi: Marek Wojciechowski Enterprise JavaBeans (EJB) 1 Plan wykładu Wprowadzenie do technologii EJB Typy komponentów EJB Klienci dla komponentów EJB Transakcje w EJB
Bardziej szczegółowoProjektowanie obiektowe. Roman Simiński Wzorce projektowe Wybrane wzorce strukturalne
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Wzorce projektowe Wybrane wzorce strukturalne Fasada Facade Pattern 2 Wzorzec Fasada Facade Pattern koncepcja 3 Wzorzec
Bardziej szczegółowoProblemy projektowania obiektowego. Czy podobne problemy można rozwiązywac w podobny sposób?
Problemy projektowania obiektowego Czy podobne problemy można rozwiązywac w podobny sposób? Czy te problemy można przedstawić w abstrakcyjny sposób, tak aby były pomocne w tworzeniu rozwiązań w różnych
Bardziej szczegółowo2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK
Zaawansowane aplikacje internetowe EJB 2 Celem tego laboratorium jest pokazanie, w jaki sposób aplikacje stworzone w różnych technologiach mogą korzystać z funkcjonalności udostępnianej przez komponenty
Bardziej szczegółowoProjektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2017
Projektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2017 1 Wzorce podstawowe 1.1 Interface vs Abstract class class InterfaceAbstractClass
Bardziej szczegółowoTechnologia Programowania 2016/2017 Wykład 4
Technologia Programowania 2016/2017 Wykład 4 Wzorce projektowe GoF Jakub Lemiesz Wzorce GRASP a wzorce GoF Znamy 9 wzorców GRASP ogólne zasady Na GRASP opierają się klasyczne wzorce GoF Na wzorcach GoF
Bardziej szczegółowoPodstawowe informacje o technologii Java EE 7
Podstawowe informacje o technologii Java EE 7 na podstawie https://docs.oracle.com/javaee/7/jeett.pdf Programowanie komponentowe 2 Programowanie komponentowe 2, Zofia Kruczkiewicz 1 I. Wielowarstwowa architektura
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowoTworzenie i wykorzystanie usług
Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi
Bardziej szczegółowoInstrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom.
Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie systemów informatycznych Przekształcenie
Bardziej szczegółowoLaboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz
Aplikacja internetowa zbudowana w oparciu o środowisko Visual Web Java Server Faces. Zarządzanie obiektami typu SesionBeans, RequestBeen i ApplicationBeans, Laboratorium 1 Wzorce oprogramowania lab1, Okres
Bardziej szczegółowoJava: interfejsy i klasy wewnętrzne
Java: interfejsy i klasy wewnętrzne Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 INTERFEJSY Interfejs to opis co klasa implementująca dany interfejs powinna robić, ale bez określania
Bardziej szczegółowoProjektowanie obiektowe Wzorce projektowe. Gang of Four Wzorce odpowiedzialności
Projektowanie obiektowe Wzorce projektowe Gang of Four Wzorce odpowiedzialności 1 Roadmap Singleton Observer Mediator Proxy Flyweight 2 Wzorce odpowiedzialności Udostępniają techniki centralizacji, delegowania
Bardziej szczegółowoWykład 1 Inżynieria Oprogramowania
Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI
Bardziej szczegółowoRola EJB na platformie Java EE. Enterprise JavaBeans (EJB)
Wielowarstwowe aplikacje internetowe Plan wykładu Enterprise JavaBeans (EJB) Wprowadzenie do technologii EJB Typy komponentów EJB Klienci dla komponentów EJB Transakcje w EJB JavaServer Faces (JSF) Enterprise
Bardziej szczegółowoPlatforma J2EE i EJB. Oprogramowanie systemów równoległych i rozproszonych Wykład 9. Rola EJB na platformie J2EE. Dr inż. Tomasz Olas olas@icis.pcz.
Platforma J2EE i EJB Oprogramowanie systemów równoległych i rozproszonych Wykład 9 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Platforma
Bardziej szczegółowoKurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
Bardziej szczegółowoJAX-RS czyli REST w Javie. Adam Kędziora
JAX-RS czyli REST w Javie Adam Kędziora Webservice Usługa sieciowa (ang. web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności. SOAP,UDDI,XML,WSDL
Bardziej szczegółowo1. Podstawowe usługi bezpieczeństwa. 2. Użytkownicy i role. przydzielanie uprawnie ń metodom, role komponentów, korzystanie i konfiguracja
Bezpieczeństwo 1. Podstawowe usługi bezpieczeństwa. 2. Użytkownicy i role. przydzielanie uprawnie ń metodom, role komponentów, korzystanie i konfiguracja mechanizmów bezpieczeństwa w Jboss 3. Java Authentication
Bardziej szczegółowoSzczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Szczególne problemy projektowania aplikacji Jarosław Kuchta Miejsce projektowania w cyklu wytwarzania aplikacji SWS Analiza systemowa Analiza statyczna Analiza funkcjonalna Analiza dynamiczna Analiza behawioralna
Bardziej szczegółowoInterfejsy w Javie. Przykład zastosowania interfejsów:
1 Plan wykładu 1. Interfejsy w Javie. 2. Zdalne wywołanie metod (Remote Method Invocation). interfejsy w RMI, architektura RMI, przykładowa aplikacja korzystająca z RMI, przekazywanie parametrów, dystrybucja
Bardziej szczegółowoTomasz Dobek. t.dobek@students.mimuw.edu.pl
Spring Framework Tomasz Dobek t.dobek@students.mimuw.edu.pl Plan prezentacji Spring z lotu ptaka Kontener Spring IoC Spring AOP Menedżer transakcji w Springu Spring DAO Testy integracyjne Podsumowanie
Bardziej szczegółowoJ2EE Project TEMATY PROJEKTÓW PRZEMYSŁAW SOŁTAN. (0.2 build 18.12.2004) e-mail: kerk@moskit.ie.tu.koszalin.pl
J2EE Project PRZEMYSŁAW SOŁTAN e-mail: kerk@moskit.ie.tu.koszalin.pl TEMATY PROJEKTÓW (0.2 build 18.12.2004) Wstęp Tworząc projekty opieramy się na źródłach mojego projektu będącego swego rodzaju szkieletem
Bardziej szczegółowoWzorce prezentacji internetowych
Wzorce prezentacji internetowych 1. Model kontrolera widoku (Model View Controller). 2. Kontroler strony (Page Controller). 3. Kontroler fasady (Front Controller). 4. Szablon widoku (Template View). 5.
Bardziej szczegółowoWprowadzenie do technologii Web Services: SOAP, WSDL i UDDI
Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI Maciej Zakrzewicz PLOUG mzakrz@cs.put.poznan.pl Plan prezentacji Wprowadzenie do architektury zorientowanej na usługi Charakterystyka technologii
Bardziej szczegółowo1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Bardziej szczegółowoJava. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ
Procesy i wątki Proces posiada samodzielne środowisko wykonawcze. Proces posiada własny zestaw podstawowych zasobów w czasie wykonywania; W szczególności, każdy proces ma własną przestrzeń pamięci. W uproszczeniu
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe III. Refleksja Małgorzata Prolejko OBI JA16Z03 Plan Klasa Class. Analiza funkcjonalności klasy. Podstawy obsługi wyjątków. Zastosowanie refleksji do analizy obiektów. Wywoływanie
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 5 Marcin Młotkowski 23 marca 2017 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 50 Historia Początkowe założenia Projekt OAK Sterowanie urządzeniami
Bardziej szczegółowoWzorce projektowe. dr inż. Marcin Pietroo
Wzorce projektowe dr inż. Marcin Pietroo Wzorce projektowe Wzorzec projektowy (ang. design pattern) w inżynierii oprogramowania, rozwiązanie często pojawiających się, powtarzalnych problemów projektowych.
Bardziej szczegółowoDariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Problem: Jak zaimplementować stos? Co się stanie gdy dodamy do stosu obiekt typu Czlowiek? Co się stanie, gdy spróbujemy ten obiekt odczytać
Bardziej szczegółowoSystemy rozproszone. Dr inż. L. Miękina. Department of Robotics and Mechatronics AGH University of Science and Technology 1/1
1/1 Systemy rozproszone Dr inż. L. Miękina Department of Robotics and Mechatronics AGH University of Science and Technology Marzec, 2013 RMI - zdalne wywołanie metod Rozproszone obiekty Stan obiektu składa
Bardziej szczegółowoKurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/
Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Wprowadzenie Automatyczne ładowanie klas Składowe klasy, widoczność składowych Konstruktory i tworzenie obiektów Destruktory i
Bardziej szczegółowoSIMON SAYS ARCHITECTURE! Usługi zdalne. Technologie, techniki i praktyki implementacji
SIMON SAYS ARCHITECTURE! Usługi zdalne Technologie, techniki i praktyki implementacji O mnie Bloguję: SIMON-SAYS-ARCHITECTURE.COM Twittuję: www.twitter.com/szymonpobiega Koduję: DDDSample.Net, NetMX, WS-Man.Net
Bardziej szczegółowoTworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2
Kod szkolenia: Tytuł szkolenia: EJB Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2 Dni: 3 Opis: Adresaci szkolenia: Szkolenie adresowane jest
Bardziej szczegółowoCertyfikaty firmy Sun. Ścieżka certyfikacyjna dla Javy Egzamin SCJP
Certyfikaty firmy Sun Ścieżka certyfikacyjna dla Javy Egzamin SCJP Ścieżka certyfikacyjna Java Podstawa J2EE J2ME J2SE Sun Certified Programmer Sun Certified Developer Sun Certified Web Component Developer
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoNowy powiew od Słońca: EJB 3.0. Copyright Piotr Kochański & Erudis,
Nowy powiew od Słońca: EJB 3.0 Wstęp Agenda EJB podstawowe informacje Problemy EJB 1.X i 2.X Zmiany wprowadzone w EJB v. 3.0 uproszczone API nowe komponenty encyjne wzorce i antywzorce Przykład, czyli
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak
Bardziej szczegółowoJ2EE wzorce projektowe. Alicja Truszkowska
J2EE wzorce projektowe Alicja Truszkowska Motywacja Znaczące miejsce J2EE pośród systemów biznesowych Bogactwo narzędzi i technologii Dobre praktyki projektowania aplikacji Każde, nawet najdoskonalsze
Bardziej szczegółowoOmówienie wzorców wykorzystywanych w Prism 5.0. Dominika Różycka
1 Omówienie wzorców wykorzystywanych w Prism 5.0 Dominika Różycka Czym jest wzorzec projektowy? 2 3 Wzorzec projektowy 1. Uniwersalne i sprawdzone w praktyce rozwiązanie często pojawiających się, powtarzalnych
Bardziej szczegółowoEnterprise Java Beans Narzędzia i Aplikacje Java EE
Enterprise Java Beans Narzędzia i Aplikacje Java EE Michał Piotrowski Michał Wójcik Waldemar Korłub Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika
Bardziej szczegółowoInstrukcja 5 Laboratorium z Podstaw Inżynierii Oprogramowania. Warstwy integracji z bazą danych: Wzorzec DAO Technologia ORM
Instrukcja 5 Laboratorium z Podstaw Inżynierii Oprogramowania Warstwy integracji z bazą danych: Wzorzec DAO Technologia ORM Cel laboratorium 5 Należy wykonać dwie aplikacje zawierające warstwę integracji
Bardziej szczegółowoPHP 5 język obiektowy
PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje
Bardziej szczegółowo1. Model ACID. 2. Deklaratywne zarządzanie transakcjami, atrybuty transakcji. 3. Propagacja transakcji. transakcje rozproszone, propagacja kontekstu
Transakcje 1. Model ACID. 2. Deklaratywne zarządzanie transakcjami, atrybuty transakcji. 3. Propagacja transakcji. transakcje rozproszone, propagacja kontekstu utrwalania. 3. Izolacja typowe problemy,
Bardziej szczegółowo