Wzorce Projektowe w JAVA

Slides:



Advertisements
Podobne prezentacje
Wzorce Projektowe Bartosz Baliś, Na podstawie
Advertisements

Projektowanie systemowe
Wzorce.
Zaawansowane metody programowania – Wykład V
Obiektowe metody projektowania systemów Design Patterns STRATEGY.
Wzorce projektowe Paweł Ciach.
ISOiWUT Internetowy System Oferowania i Wyszukiwania Usług Transportowych.
Wzorce Projektowe Michał Gryglicki
Architektura systemu Gra strategiczna „Strusia Jama”
Model – View - Controler
W ZORCE P ROJEKTOWE … czyli ktoś już rozwiązał Twoje problemy!
Obiektowe metody projektowania systemów
Obiektowe metody projektowania systemów
Obiektowe metody projektowania systemów Command Pattern.
C++ wykład 2 ( ) Klasy i obiekty.
Zasady zaliczenia Warunki uzyskania zaliczenia:
Wzorce projektowe w J2EE
Wstęp do programowania obiektowego
Modele baz danych - spojrzenie na poziom fizyczny
czyli (anty)wzorzec Singleton
czyli (anty)wzorzec Singleton
Wzorce projektowe (Design Patterns)
Architektura Systemu MunSOL
Instytut Tele- i Radiotechniczny WARSZAWA
Projektowanie obiektowe
UML 2.x Robert Pająk.
Podstawy programowania II
Technologie tworzenia aplikacji internetowych Wykład 3
Promotor: dr.inż. Aleksandra Werner
Wykorzystanie mechanizmu delegata do emulacji struktury i zachowania widżetów w architekturze Model/Widok biblioteki Qt4 Wytłumaczyc temat: Ja: W bibliotekach.
Programowanie strukturalne i obiektowe
Projektowanie obiektowe
WPROWADZENIE W ŚWIAT OBIEKTÓW
Programowanie obiektowe Wykład 7 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski.
Projektowanie obiektowe
Projektowanie obiektowe
Projektowanie obiektowe
Projektowanie obiektowe
Model – View – View Model
Programowanie obiektowe – język C++
Programowanie obiektowe 2013/2014
Zawansowane techniki programistyczne
Systemy zarządzania treścią Wykład 5
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Programowanie strukturalne i obiektowe C++
Wzorce projektowe Jacek Matulewski
Walidacja danych alina suchomska.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Diagram obiektów Diagram obiektów ukazuje elementy i związki z diagramu klas w ustalonej chwili. Diagram obiektów jest grafem złożonym z wierzchołków i.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Hibernate Podstawy.
Obiektowe metody projektowania systemów Adapter. Wstęp: „Dostosowanie interfejsu klasy do interfejsu, którego oczekuje użytkownik. Adapter umożliwia współprace.
Obiektowe metody projektowania systemów Abstract Factory design pattern (aka. Kit)
Zakres Wzorce projektowe - kreacyjne -Factory Method -Abstract Factory.
Odwzorowania relacyjno-obiektowe Hibernate Podstawy.
Paweł Starzyk Obiektowe metody projektowania systemów
Programowanie Zaawansowane
Partnerstwo dla Przyszłości 1 Lekcja 27 Klasy i obiekty.
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
Architektura Rafał Hryniów. Architektura Wizja projektu systemu, którą dzielą twórcy Struktura komponentów systemu, ich powiązań oraz zasad i reguł określających.
 Podstawowy składnik.NET Framework  Technologia tworzenia w pełni dynamicznych stron internetowych działających po stronie serwera  Zorientowanie na.
Implementacja wzorca MVVM w Prism 5.0
Inżynieria oprogramowania Wzorce konstrukcyjne WWW: Jacek Matulewski Instytut Fizyki, UMK.
Wzorzec MVC na przykładzie CakePHP
(według:
Programowanie Obiektowe – Wykład 2
Wprowadzenie do programowania obiektowego
PGO Interfejsy Michail Mokkas.
PGO - Projektowanie i implementacja pierwszych klas
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Wzorce Projektowe w JAVA

Wzorzec projektowy 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 rozwiązania w sposób abstrakcyjny Christopher Alexander Wzorzec projektowy identyfikuje i opisuje pewną abstrakcję, której poziom znajduje się powyżej poziomu abstrakcji pojedynczej klasy, instancji lub komponentu Gang of Four E. Gamma, R. Helm, R. Johnson, J. Vlissides (1994)

Wzorce projektowe kreacyjne (konstrukcyjne) – opisujące proces tworzenia nowych obiektów; ich zadaniem jest tworzenie, inicjalizacja oraz konfiguracja obiektów, klas oraz innych typów danych (Singleton) strukturalne – opisujące struktury powiązanych ze sobą obiektów (Dekorator); czynnościowe (behawioralne) – opisujące zachowanie i odpowiedzialność współpracujących ze sobą obiektów. (Obserwator) złożone – agreguje w sobie inne wzorce (MVC)

Wzorzec singleton Celem wzorca jest ograniczenie możliwości tworzenia obiektów danej klasy do jednej instancji oraz zapewnienie globalnego dostępu do stworzonego obiektu.

Wzorzec dekorator Pozwala na dynamiczne dołączanie do klas nowych funkcjonalności. Składa się z obiektu dekorowanego i dekoratorów. Obiekt dekorowany to instancja klasy, którą zamierzamy wzbogacić o dodatkowe zadania. Dekoratory implementują nowe zachowania, aby na końcu delegować wykonanie konkretnych operacji do obiektu dekorowanego.

MVC – Model-Widok-Kontroler Model – Reprezentacja logiki biznesowej. Miejsce przechowywania danych i manipulowania nimi. Przechowywanie: pliki, baza, webserwisy, itd. Widok – Warstwa prezentacji. Wizualne przedstawienie danych z modelu (Swing, HTML, Tekst) Kontroler – Obsługa żądań użytkownika i kierowanie ich do modelu WIDOK KONTROLER MODEL

Zalety MVC Separacji odpowiedzialności (wiadomo co robi widok, a co model) – wiadomo gdzie szukać błędu Wymiana dowolnego komponentu (widoku lub kontrolera) nie wpływa na działanie aplikacji. Logika biznesowa jest odizolowana od wszelkich technologii Widoku czy protokołów obsługi żądań wysyłanych przez użytkowników Ułatwia utrzymanie dużych aplikacji i dodawanie nowych funkcji Ułatwia podział obowiązków w zespole: Osoba A – pisze same widoku Osoba B – odpowiedzialna za modele Itd. Komponenty aplikacji MVC mogą być wykorzystane w innych projektach

Częste błędy Widok nie może mieć wpływ na model - modyfikowanie Modelu z poziomu Widoku jest błędne Kontroler jest tylko zarządcą, przekazuje żądania od użytkownika do modelu. Wykonywanie logiki biznesowej zmieniającej stan Modelu wewnątrz Kontrolera jest błędne.

Frameworki MVC Dla stron www: Dla aplikacji desktopowych: Spring https://spring.io/ PlayFramework https://www.playframework.com/ Dla aplikacji desktopowych: Swing JavaFX

Wzorzec Obserwator Używany jest do powiadamiania zainteresowanych obiektów o zmianie stanu pewnego innego obiektu. WIDOK KONTROLER MODEL

Wzorzec Obserwator Observable (java.util.Observable) – Klasa po której dziedziczą obiekty obserwowane public void addObserver(Observer obs) public void deleteObserver(Observer obs) public void deleteObservers() public int countObservers() protected void setChanged() protected void clearChanged() public boolean hasChanged() public void notifyObservers() public void notifyObservers(Object obj) Observator (java.util.Observer) – interfejs do implementacji w obiekcie który obserwuje dane