Projektowanie Aplikacji Internetowych Jarosław Kuchta. Wzorce projektowe warstwy biznesowej
|
|
- Andrzej Markowski
- 6 lat temu
- Przeglądów:
Transkrypt
1 Jarosław Kuchta Wzorce projektowe warstwy biznesowej
2 Wzorce projektowe dotyczące danych, obiektów i logiki biznesowej Transfer Object Assembler Łączy dane pochodzące z różnych komponentów biznesowych Composite Entity Łączy trwałe komponenty encji z obiektami zależnymi Business Delegate Działając po stronie klienta pośredniczy między komponentami warstwy prezentacji a obiektami biznesowymi Wzorce projektowe warstwy usług 2
3 Transfer Object Assembler
4 Transfer Object Assembler - motywacje Stosowanie wielu obiektów biznesowych powoduje: Ścisły związek między warstwą aplikacji a rozproszonym modelem obiektowym. Zmniejszenie wydajności sieci w przypadku licznych komponentów rozproszonych. Konieczność wbudowania logiki biznesowej do warstwy aplikacji ( gruby klient). Trudne zarządzanie zmianami logiki biznesowej w przypadku różnych typów klientów. Wzorce projektowe warstwy usług 4
5 Rozwiązanie Zbiorczy obiekt transferowy (Transfer Object Assembler) reprezentuje dane pochodzące z różnych komponentów biznesowych. Pobiera obiekty transferowe od wielu komponentów i łączy je w jeden. Przenosi dane do klienta przez wywołanie pojedynczej metody. Zbiorczy obiekt transferowy nie powinien być modyfikowalny. Wzorce projektowe warstwy usług 5
6 Struktura wzorca uses Transfer Object * 1 contains creates Client requests «session» Transfer Object Assembler 1 uses * Business Object «entity» Business Entity «session» Business Session Data Access Object Wzorce projektowe warstwy usług 6
7 Współdziałanie komponentów Client Transfer Object Assembler Business Entity Business Session DAO 1: Get Data 2: Create Transfer Object 3a: Get Data 3b: Get Data 3c: Get Data 4: Set Data 5: Return Object Wzorce projektowe warstwy usług 7
8 Strategie implementacyjne dla komponentu asemblera implementacja przez dowolny obiekt implementacja przez komponent sesji Wzorce projektowe warstwy usług 8
9 Implementacja przez dowolny obiekt Asembler obiektów transferowych jest implementowany przez dowolny obiekt. Uruchamiany w warstwie biznesowej. Zapobiega odwoływaniu się do źródłowych obiektów biznesowych pomiędzy warstwami. Wzorce projektowe warstwy usług 9
10 Implementacja przez komponent sesji Zbiorczy obiekt transferowy zawiera zdjęcie danych modelu. Przy zmianie modelu staje się nieaktualny. Preferowana sesja bezstanowa. Przy rzadkich zmianach modelu można zastosować sesję ze stanami (przechowuje zbiorczy obiekt transferowy) mechanizm rozpoznawania zmian. Wzorce projektowe warstwy usług 10
11 Przykład Aplikacja zarządzania projektem. Klient żąda zbiorczej informacji o projekcie, która zawiera: Dane identyfikacyjne projektu Dane osobowe kierownika projektu Listę zadań w tym projekcie Zasoby dla każdego zadania Wzorce projektowe warstwy usług 11
12 Kod zbiorczego obiektu transferowego public class ProjectDetailsData { public ProjectTO projectdata; public ProjectManagerTO projectmanagerdata; public Collection listoftasks;... } Wzorce projektowe warstwy usług 12
13 Kod asemblera (1) public class ProjectDetailsAssembler { public ProjectDetailsData getdata (String projectid) { // tworzenie zbiorczego obiektu transferowego ProjectDetailsData pdata = new ProjectDetailsData(); // pobieranie danych identyfikacyjnych projektu ProjectEntity project = projecthome.findbyprimarykey(projectid); ProjectTO projto = project.getdata(); pdata.projectdata = projto; // pobieranie danych osobowych kierownika projektu ProjectManagerEntity projectmanager = projectmanagerhome.findbyprimarykey(projto.managerid); ProjectManagerTO projmgrto = projectmanager.getdata(); pdata.projectmanagerdata = projmgrto; Wzorce projektowe warstwy usług 13
14 Kod asemblera (2) // pobieranie listy zadań dla projektu Collection projtasklist = project.gettaskslist(); ArrayList listoftasks = new ArrayList(); // wynikowa lista obiektów transferowych dla zadań Iterator taskiter = projtasklist.iterator(); while (taskiter.hasnext()) { TaskTO task = (TaskTO) taskiter.next(); // pobranie informacji o zasobach dla każdego zadania ResourceEntity resource = resourcehome.findbyprimarykey(task.assignedresourceid); ResourceTO resto = resource.getresourcedata(); // utworzenie obiektu transferowego dla zadania i jego zasobów TaskResourceTO trto = new TaskResourceTO( task.projectid, task.taskid, task.name, task.description, task.startdate, task.enddate, resto); listoftasks.add(trto); // i dodanie do listy wynikowej } // dodanie listy obiektów transferowych do zbiorczego obiektu transferowego i zwrot danych pdata.listoftasks = listoftasks; return pdata; Wzorce projektowe warstwy usług 14
15 Zalety i wady Oddzielenie logiki biznesowej od logiki aplikacji Rozluźnienie powiązań pomiędzy klientami i modelem obiektowym Zwiększenie wydajności sieci Zwiększenie wydajności klienta Zwiększenie wydajności transakcji Mogą pojawiać się nieaktualne obiekty transferowe Wzorce projektowe warstwy usług 15
16 Composite Entity
17 Composite Entity - motywacje Każde wywołanie przez klienta potencjalnie przechodzi przez sieć, nawet jeśli serwer znajduje się na tym samym komputerze. Im mniejsza ziarnistość obiektów, tym większy ruch w sieci i tym większy narzut sieciowy na wykonanie operacji. Komponenty encji powinny reprezentować gruboziarniste, trwałe obiekty zależne. Jednak nawet wtedy mogą być powiązane z wieloma obiektami zależnymi Bezpośrednie odwzorowanie modelu klas w komponenty encji nie uwzględnia ziarnistości. Wzorce projektowe warstwy usług 17
18 Composite Entity - problemy Konieczność walidacji referencji zdalnych do komponentów encyjnych Problemy z zarządzaniem i pielęgnowaniem systemu Problemy z wydajnością sieci Zależność aplikacji od schematu bazy danych Konieczność zarządzania relacjami przez klienta przeglądanie wielu tabel Wzorce projektowe warstwy usług 18
19 Rozwiązanie Wzorzec Composite Entity łączy gruboziarnisty obiekt trwały i jego obiekty zależne w złożony komponent encyjny. Klient wykonuje operacje get/set na obiekcie gruboziarnistym. Ten obiekt decyduje o pobieraniu lub modyfikowaniu obiektów zależnych. Wzorce projektowe warstwy usług 19
20 Strategie implementacyjne 1. Złożony komponent encyjny zawierający obiekt gruboziarnisty 2. Złożony komponent encyjny implementujący obiekt gruboziarnisty 3. Strategia "leniwego" ładowania 4. Zastosowanie markera modyfikacji 5. Zastosowanie złożonego obiektu transferowego Wzorce projektowe warstwy usług 20
21 Strategia 1 struktura komponentów «entity» Composite Entity contains Coarse Grained Object 1 contains * Dependent Object 1 * contains Wzorce projektowe warstwy usług 21
22 Strategia 1 - współdziałanie Client «entity» Composite Entity Coarse Grained Object Dependent Object 1 Dependent Object 2 Dependent Object 3 1: Get/Set Data 2: Get/Set Data 3a: Get/Set Data 3b: Get/Set Data 3b.1: Get/Set Data Wzorce projektowe warstwy usług 22
23 Strategia 2 struktura komponentów «entity» Composite Entity 1 * contains Dependent Object * 1 contains Wzorce projektowe warstwy usług 23
24 Strategia 2 - współdziałanie Client «entity» Composite Entity Dependent Object 1 Dependent Object 2 Dependent Object 3 1: Get/Set Data 1.1: Get/Set Data 1.1.1: Get/Set Data 1.1.2: Get/Set Data : Get/Set Data Wzorce projektowe warstwy usług 24
25 Wykorzystanie ładowania "leniwego" Komponent encyjny może być złożony na wiele poziomów w głąb. Ładowanie wszystkich obiektów zależnych na raz może być nieefektywne. Za pierwszym razem ładuje się tylko obiekty zależne pierwszego poziomu. Kiedy klient żąda dostępu do obiektu, który nie jest jeszcze załadowany, to obiekt ten jest ładowany na żądanie. Jeśli obiekt zależny został załadowany, to przy kolejnych wołaniach metody ładowania trzeba uwzględnić ten obiekt w aspekcie synchronizacji z pamięcią trwałą. Wzorce projektowe warstwy usług 25
26 Zastosowanie markera modyfikacji «interface» Dirty Marker setdirty(): void isdirty(): boolean resetdirty(): void setnew(): void isnew(): boolean resetnew(): void setdeleted(): void isdeleted(): boolean resetdeleted(): void «entity» Composite Entity 1 * contains Dependent Object * 1 contains Wzorce projektowe warstwy usług 26
27 Client Wykorzystanie złożonego obiektu «entity» Composite Entity transferowego Dependent Object 1 Dependent Object 2 Dependent Object 3 1: Get/Set Data 2a: Get/Set Data 2a.1: Get/Set Data 2b: Get/Set Data 2b.1: Get/Set Data 3: Create Transfer Object Assembler 4: Return Object Wzorce projektowe warstwy usług 27
28 Przykład implementacja obiektu gruboziarnistego public class ResourceEntity implements EntityBean { // dane o zasobie osobowym public String employeeid; public String lastname; public String firstname; public String departmentid; public String practicegroup; public String title; public String grade; public String ; public String phone; public String cell; public String pager; public String managerid; // kolekcje obiektów zależnych public Collection blockouttimes; public Collection skillsets; Wzorce projektowe warstwy usług 28
29 Tworzenie encji obiektu gruboziarnistego // utworzenie encji z obiektu transferowego public String ejbcreate(resourceto resource) throws CreateException { try { this.employeeid = resource.employeeid; setresourcedata(resource); getresourcedao().create(resource); } catch(exception ex) { throw new EJBException("Reason:" +...); } return this.employeeid; // funkcja zwraca identyfikator pracownika } Wzorce projektowe warstwy usług 29
30 Metody encji (prosta logika wewnętrzna) public String ejbfindbyprimarykey (String primarykey) throws FinderException {... } public void ejbremove() {... } public void setentitycontext(entitycontext context) {... } public void unsetentitycontext() {... } public void ejbactivate() {... } public void ejbpassivate() {... } public void ejbload() {... } public void ejbstore() {... } public void ejbpostcreate(resourceto resource) {... } Wzorce projektowe warstwy usług 30
31 Metody związane z obiektami transferowymi i zależnymi public ResourceTO getresourceto() {... } public void setresourcedata(resourceto resourceto) {... } public Collection getskillsetsdata() {... } // ta metoda implementuje strategię "lazy loading" Wzorce projektowe warstwy usług 31
32 Metody gruboziarniste (złożona logika wewnętrzna) public void addblockouttimes (Collection morebots) throws BlockOutTimeException // morebots to kolekcja obiektów transferowych BlockOutTimeTO {... } public void updateblockouttime(collection updbots) throws BlockOutTimeException {... } public void updateskillset(collection updskills) throws CommitmentException {... } Wzorce projektowe warstwy usług 32
33 Implementacja strategii leniwego ładowania public Collection getskillsetsdata() throws SkillSetException { checkskillsetload(); return skillsets; } private void checkskillsetload() throws SkillSetException { try { // ładowanie wówczas, gdy obiekt nie został jeszcze pobrany z DAO if (skillsets == null) skillsets = getskillsetdao(resourceid).loadall(); } catch(exception exception) { throw new SkillSetException(...); } } Wzorce projektowe warstwy usług 33
34 Zalety i wady stosowania wzorca Zmniejszenie liczby relacji między komponentami encyjnymi. Ułatwienie zarządzania klasami przez zmniejszenie liczby komponentów encyjnych. Zmniejszenie liczby wywołań między warstwą aplikacji a warstwą biznesową Zwiększenie wydajności sieci Zmniejszenie zależności aplikacji od schematu bazy danych Zmniejszenie gadatliwości w sieci Wymaga dodatkowego kodu przy zarządzaniu drzewem zależności wewnątrz obiektu. Wzorce projektowe warstwy usług 34
35 Business Delegate
36 Business Delegate - problemy Komponenty warstwy prezentacji mogą być wrażliwe na zmiany implementacji usług. Komponenty warstwy prezentacji wysyłają wiele wywołań przez sieć. Bezpośrednie korzystanie z API usług zmusza klienta do zajmowania się zagadnieniami sieciowymi. Wzorce projektowe warstwy usług 36
37 Rozwiązanie Delegat biznesowy jest abstrakcją usług po stronie klienta. Ukrywa implementację usług biznesowych. Chroni klienta przed możliwą zmianą implementacji API usług biznesowych. Wzorce projektowe warstwy usług 37
38 Struktura komponentów Client uses Business Delegate uses Business Service Service Locator lookups/ creates Wzorce projektowe warstwy usług 38
39 Współdziałanie komponentów Client Service Locator Business Service 1: Create Business Delegate 1.1: Get Service 1.1.1: Lookup 2: Invoke 2.1: Invoke 3: Get ID 3.1: Get ID for Business Service 3.1.1: Get Handle 3.1.2: Convert Handle to string ID Wzorce projektowe warstwy usług 39
40 Wykorzystanie identyfikatora usług Client Service Locator Business Service 4: Create (ID) Business Delegate 4.1: Get Service (ID) 4.1.1: Convert ID to Handle Handle 4.1.2: Get Service : Connect 5: Invoke 5.1: Invoke Wzorce projektowe warstwy usług 40
41 Strategie implementacyjne Delegat biznesowy jako klasa proxy Udostępnia funkcje proxy do przekazywania metod klienta do komponentu sesyjnego. Może lokalnie buforować dane, w tym referencje zdalne do komponentów. Może przetwarzać takie referencje na identyfikatory tekstowe. Delegat biznesowy jako adapter Dla środowiska B2B przy komunikowaniu się z usługami opartymi o J2EE Oddzielne systemy mogą wykorzystywać język XML, co wymaga wzorca Adapter (GoF) Wzorce projektowe warstwy usług 41
42 Integracja systemów B2B Client B2B Adapter Business Service 1: Invoke (XML) 1.1: Parse (XML) 1.2: Create 1.3: Invoke Business Delegate 1.3.1: Invoke 1.4: Prepare (XML) 1.5: Return (XML) Wzorce projektowe warstwy usług 42
43 Przykład implementacja delegata biznesowego w postaci proxy (1) public class ResourceDelegate { // zdalna referencja do usługi Session Facade private ResourceSession session; // konstruktor łączący z poprzednią sesją usług poprzez jej identyfikator public BusinessDelegate(String id) super(); reconnect(id); } public void reconnect(string id) { session = (ResourceSession)ServiceLocator.getService(id); } Wzorce projektowe warstwy usług 43
44 Metody lokalne przekazywane przez wywołania zdalne do sesji usługi public ResourceTO setcurrentresource(string resourceid) throws ResourceException { try { return session.setcurrentresource(resourceid); } catch (RemoteException ex) { throw new ResourceException(...); } } public ResourceTO getresourcedetails() throws ResourceException {... } public void setresourcedetails(resourceto vo) throws ResourceException {... } Wzorce projektowe warstwy usług 44
45 Korzyści ze stosowania wzorca Ukrycie szczegółów wywołania usług biznesowych. Zmniejszenie wrażliwości komponentów warstwy prezentacji na zmiany implementacji usług. Możliwość obsługiwania wyjątków od warstwy usług. Możliwość lokalnego buforowania wyników i referencji do zdalnych usług biznesowych. Wzorce projektowe warstwy usług 45
46 Literatura Rysunki i przykłady pochodzą z następujących źródeł: r.html 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 46
"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ółowoProjektowanie Aplikacji Internetowych. Wzorce projektowe warstwy usług
Wzorce projektowe warstwy usług 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
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ół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ół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ół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ół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 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 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ół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ół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ół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ół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ół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ół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ół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ół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ół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ół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ół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ół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ółowoWzorce projektowe. dr inż. Marcin Pietroo
Wzorce projektowe dr inż. Marcin Pietroo Adapter - strukturalny wzorzec projektowy, którego celem jest umożliwienie współpracy dwóm klasom o niekompatybilnych interfejsach - adapter przekształca interfejs
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ół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ół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ół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ółowoProgramowanie w języku Java WYKŁAD
Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational e-mail: pzabawa@pk.edu.pl www: http://www.pk.edu.pl/~pzabawa 26.05.2014 WYKŁAD 13 Refleksja Data Access Object
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
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ół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 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ół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ół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ół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ółowoProjektowanie logiki aplikacji
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy
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ółowoWypożyczalnia VIDEO. Technologie obiektowe
Wypożyczalnia VIDEO Jest to program do obsługi wypożyczalni i wypożyczeń klientów. Głównym zadaniem programu jest zarządzanie wypożyczeniami i drukowanie potwierdzenia wypożyczenia oraz naliczenie punktó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ół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ół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ółowoWprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o
Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa
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ół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ół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ół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ół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ół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ółowoRMI-2. Java Remote Method Invocation (RMI) na podstawie m.in. podręcznika firmy Sun Microsystems SYSTEMY ROZPROSZONE
Java Remote Method Invocation (RMI) na podstawie m.in. podręcznika firmy Sun Microsystems www.cs.agh.edu.pl/~slawek/zrodla_rmi2.zip Kilka pytań Co mamy? rok 2005-ty, gotową wersję 2 programu NoteBoard.
Bardziej szczegółowoProjektowanie obiektowe Wzorce projektowe. Gang of Four Wzorce rozszerzeń
Projektowanie obiektowe Wzorce projektowe Gang of Four Wzorce rozszerzeń 1 Roadmap Decorator Iterator Visitor 2 Wzorce rozszerzeń Mają na celu uczynić proces rozszerzania kodu bardziej czytelnym, prostym
Bardziej szczegółowoSYSTEM MONITORINGU PARAMETRÓW WĘZŁÓW PRZECHOWYWANIA DANYCH DLA PROJEKTU KRAJOWY MAGAZYN DANYCH PODRĘCZNIK DEWELOPERA
SYSTEM MONITORINGU PARAMETRÓW WĘZŁÓW PRZECHOWYWANIA DANYCH DLA PROJEKTU KRAJOWY MAGAZYN DANYCH PODRĘCZNIK DEWELOPERA 1 Spis treści: Wstęp... 3 Opis architektury systemu... 4 Architektura modułu KMD...
Bardziej szczegółowoPojęcie wzorca projektowego Sposób opisu wzorców projektowych Notacja UML podstawowe diagramy zapisu wzorców projektowych
Zagadnienia Pojęcie wzorca projektowego Sposób opisu wzorców projektowych Notacja UML podstawowe diagramy zapisu wzorców projektowych Co to jest wzorzec projektowy (ang. design pattern)? Co to jest wzorzec
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ółowo1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1
1 LINQ 1 1. Cel zajęć Celem zajęć jest zapoznanie się z technologią LINQ oraz tworzeniem trójwarstwowej aplikacji internetowej. 2. Zadanie Proszę przygotować aplikację WWW, która: będzie pozwalała na generowanie
Bardziej szczegółowoProgramowanie obiektowe
Wykład 12 Marcin Młotkowski 16 maja 2018 Plan wykładu 1 Analiza obiektowa Dziedziczenie Dziedziczenie a składanie 2 Marcin Młotkowski 482 / 537 Dziedziczenie Dziedziczenie a składanie Plan wykładu 1 Analiza
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ół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ół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ółowoProgramowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,
Bardziej szczegółowoJava Persistence API - zagadnienia zaawansowane
Program szkolenia: Java Persistence API - zagadnienia zaawansowane Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Java Persistence API - zagadnienia zaawansowane Java-EE-jpa-pro
Bardziej szczegółowoInstrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania
Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania Opis biznesowy świata rzeczywistego Wymagania funkcjonalne i niefunkcjonalne aplikacji Diagram przypadków życia Diagramy klas i sekwencji:
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ółowoWprowadzenie do programowania aplikacji mobilnych
Wprowadzenie do programowania aplikacji mobilnych dr Przemysław Juszczuk dr Przemysław Juszczuk Trochę historii Idea wzorców projektowych wywodzi się jeszcze z wczesnych lat osiemdziesiątych ubiegłego
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ółowoPrototype (prototyp) Cel: Przykład: Określenie rodzaju tworzonych obiektów poprzez wskazanie ich prototypu. Nowe instancje tworzymy kopiując prototyp.
1/14 Prototype (prototyp) Cel: Określenie rodzaju tworzonych obiektów poprzez wskazanie ich prototypu. Nowe instancje tworzymy kopiując prototyp. Przykład: Edytor 3D klient tworzy obiekty różnych kształtów
Bardziej szczegółowoProjektowanie obiektowe Wzorce projektowe
Projektowanie obiektowe Wzorce projektowe Gang of Four Kreacyjne wzorce projektowe (wzorce konstrukcyjne) 1 Roadmap Memento Factory Method Abstract Factory Prototype Builder 2 Wzorce konstrukcyjne wzorce
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ółowoZaawansowane programowanie obiektowe - wykład 5
Zaawansowane programowanie obiektowe - wykład 5 dr Piotr Jastrzębski (czynnościowe) opisują zachowanie obiektów, komunikację pomiędzy nimi i ich odpowiedzialność. Interpreter Iterator (kursor) Łańcuch
Bardziej szczegółowoBudowa komponentów Enterprise JavaBeans
VII Seminarium PLOUG Warszawa Marzec 2003 Budowa komponentów Enterprise JavaBeans Maciej Zakrzewicz, Marek Wojciechowski mzakrz, marek@cs.put.poznan.pl Politechnika Poznañska Instytut Informatyki Streszczenie
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ół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ółowoBEAN VALIDATION. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
BEAN VALIDATION Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Bean Validation Uniwersalny mechanizm walidacji danych we wszystkich warstwach aplikacji Warstwa interfejsu,
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ółowoProjektowanie obiektowe oprogramowania Wykład 5 wzorce strukturalne Wiktor Zychla 2016
Projektowanie obiektowe oprogramowania Wykład 5 wzorce strukturalne Wiktor Zychla 2016 1 Wzorce strukturalne 1.1 Facade Motto: uproszczony interfejs dla podsystemu z wieloma interfejsami class SmtpFacade
Bardziej szczegółowoAplikacja wielowątkowa prosty komunikator
Aplikacja wielowątkowa prosty komunikator Klient 0 (host 1) Wątek 0 Komponent serwera Wątek pochodny 3.1 Klient 1 (host 2) Wątek 1 Komponent serwera Wątek pochodny 3.2 Host 4 Serwer Wątek 3 Klient 2 (host
Bardziej szczegółowoWzorce projektowe cz. II. Wzorce projektowe cz. II 1/35
Wzorce projektowe cz. II Wzorce projektowe cz. II 1/35 Wzorce projektowe cz. II 2/35 Iterator Przeznaczenie Wzorzec zapewnia sekwencyjny dostęp do elementów obiektu zagregowanego bez ujawniania jego reprezentacji
Bardziej szczegółowoZasady generowania kluczy głównych Język Java Persistence Podstawowa architektura wielowarstwowych aplikacji w oparciu o wzorce oprogramowania
Zasady generowania kluczy głównych Język Java Persistence Podstawowa architektura wielowarstwowych aplikacji w oparciu o wzorce oprogramowania Autor Zofia Kruczkiewicz Wzorce oprogramowania 6 1. Różne
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ółowoTechnologie obiektowe
WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność
Bardziej szczegółowoproblem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
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ółowoDawid Gierszewski Adam Hanasko
Dawid Gierszewski Adam Hanasko Chcemy stworzyć klasę w której możemy przechowywać dwie zmienne dowolnych typów Tworzymy tyle różnych klas ile potrzeba: Class ParaInt{ int pierwszy; Int drugi; Class ParaButow{
Bardziej szczegółowoProgramowanie rozproszone w języku Java
Wstęp Gniazda RMI Podsumowanie Programowanie rozproszone w języku Java Wojciech Rząsa wrzasa@prz-rzeszow.pl Katedra Informatyki i Automatyki, Politechnika Rzeszowska 25 maja 2015 Wojciech Rząsa, KIiA PRz
Bardziej szczegółowoHistoria modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Bardziej szczegółowoWątki. Definiowanie wątków jako klas potomnych Thread. Nadpisanie metody run().
Wątki Streszczenie Celem wykładu jest wprowadzenie do obsługi wątków w Javie. Czas wykładu 45 minut. Definiowanie wątków jako klas potomnych Thread Nadpisanie metody run(). class Watek extends Thread public
Bardziej szczegółowoInformacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4
Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne
Bardziej szczegółowoWykład 2 Wybrane konstrukcje obiektowych języków programowania (1)
MAS dr. Inż. Mariusz Trzaska Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) Zagadnienia o Podstawy o Kontrolowanie sterowania o Klasy o Interfejsy o Obsługa błędów o Pojemniki o System
Bardziej szczegółowoProgramowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)
Programowanie w języku Java Wykład 13: Java Platform, Enterprise Edition (Java EE) Standard J2EE Programowanie w języku Java 2 J2EE - komunikacja Programowanie w języku Java 3 J2EE warstwa biznesowa Programowanie
Bardziej szczegółowoProjektowanie Zorientowane na Dziedzinę. ang. Domain Driven Design
Projektowanie Zorientowane na Dziedzinę ang. Domain Driven Design 2 Projektowanie Stan posiadania Przypadki użycia Model dziedziny Operacje systemowe Kontrakty dla operacji systemowych Problemy do rozwiązania
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ół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ół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ół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ół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ół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ółowoUML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.
UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami
Bardziej szczegółowoJava JMX. Marcin Werla. Monitorowanie i zarządzanie usługami sieciowymi w Javie. mwerla@man.poznan.pl PCSS/Poznań JUG
Java JMX Monitorowanie i zarządzanie usługami sieciowymi w Javie Marcin Werla mwerla@man.poznan.pl PCSS/Poznań JUG Plan prezentacji Wprowadzenie Specyfikacja Dodatkowe narzędzia i biblioteki Studium przypadku
Bardziej szczegółowoDokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV
Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium
Bardziej szczegółowo