Wzorce oprogramowania Gof (cd) zastosowane w modelu obiektowym
|
|
- Maria Rogowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Wzorce oprogramowania Gof (cd) (Gang of Four skrót odnoszący się do autorów ksiązki: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software) zastosowane w modelu obiektowym
2 Identyfikacja wzorców projektowych Dobrze zbudowany system obiektowy jest pełen wzorców obiektowych Wzorzec to zwyczajowo przyjęte rozwiązanie typowego problemu w danym kontekście Strukturę wzorca przedstawia się w postaci diagramu klas Zachowanie się wzorca przedstawia się za pomocą diagramu sekwencji Wzorce projektowe: Wzorzec reprezentuje powiązanie problemu z rozwiązaniem (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) Każdy wzorzec składa się z trzech części, które wyrażają związek między konkretnym kontekstem, problemem i rozwiązaniem (Christopher Aleksander) Każdy wzorzec to trzyczęściowa reguła, która wyraża związek między konkretnym kontekstem, rozkładem sił powtarzającym się w tym kontekście i konfiguracją oprogramowania pozwalająca na wzajemne zrównoważenie się tych sił w celu rozwiązania zadania. (Richar Gabriel) Wzorzec to pomysł, który okazał się użyteczny w jednym rzeczywistym kontekście i prawdopodobnie będzie użyteczny w innym. (Martin Fowler) 2
3 2. Przegląd wzorców projektowych 1.Wzorce kreacyjne 2.Wzorce strukturalne 3.Wzorce czynnościowe (c.d.)
4 2.3. Wzorce czynnościowe Przydzielają algorytmy i zobowiązania obiektom, obejmują wzorce obiektów, klas oraz komunikacji między obiektami 1) Interpreter 2) Iterator 3) Łańcuch zobowiązań Chain of Responsibility 4) Mediator 5) Metoda szablonowa Template method 6) Obserwator - Observer 7) Odwiedzający - Visitor 8) Pamiątka - Memento 9) Polecenie - Command 10) Stan - State 11) Strategia - Strategy
5 Wybór wzorca strukturalnego Wzorce czynnościowe 1)Chain of Responsibility 2)Command 3)Interpreter 4)Iterator 5)Mediator 6)Memento 7)Observer 8)State 9)Strategy 10)Visitor 11)Template Method Aspekt, który może się zmienić Obiekt, który może zrealizować żądanie Warunki i sposób realizacji żądania Gramatyka i reprezentacja języka Sposób dostępu i przechodzenia elementów kolekcji Jak i które obiekty oddziałują na siebie? Jakie prywatne informacje są przechowywane poza obiektem i kiedy? Liczba obiektów zależących od innego obiektu;jak zależne obiekty utrzymują aktualny stan Stany obiektów Algorytm Operacje, które można zastosować do obiektu (obiektów) bez zmiany jego klasy (ich klas) Kroki algorytmu
6 1) Interpreter - Interpreter
7 Przykład (1)
8 Przykład (2) Dane są: TerminalExpression={-6, -2, 1, 5, x, y}, NonterminalExpression= {S, A, AN, B, N}, oraz produkcje w notacji BNF: <S> ::=<AN><AN> <AN> ::= <A><N> <B><N> <N> ::=x y <A> ::=1-2 <B> ::=5-6 S + AN + + A N B AN N ((1+x)+(-6+y)) 1 x -6 y
9 Problem: Definicja reprezentacji dla gramatyki zadanego języka oraz interpretera zdań napisanych w danym języku definiowanym przez gramatykę Rozwiązanie: Obiekt typu Context zawiera globalne informacje dla interpretera. Obiekt typu Client buduje lub dostaje drzewo składni abstrakcyjnej reprezentujące zdanie danego języka oraz wywołuje operację interpret drzewo składa się z obiektów klas TerminalExpression i NonterminalExpression implementujących interfejs AbstractExpression.
10 Klient wzorca: Buduje lub dostaje drzewo składni oraz uruchamia proces interpretacji zdania reprezentowanego przez drzewo Rezultat: Łatwa modyfikacja gramatyki Łatwa implementacja gramatyki Trudna obsługa złożonej gramatyki każda klasa reprezentuje co najmniej jedną regułą produkcji Dodawanie nowych sposobów interpretowania wyrażeń przez modyfikacje klas Pokrewne wzorce: Interpreter jest przykładem zastosowania Kompozytu (Composite), Zastosowanie wzorca Pyłek (Flyweight) jako symboli końcowych Iterator zastosowany do przechodzenia struktury Visitor w każdym węźle drzewa może realizować działania wzorca Interpreter
11 2) Iterator - Iterator
12
13 Problem: Sekwencyjny, wielokrotny i jednakowy dostęp do elementów obiektu zagregowanego bez podawania struktury wewnętrznej tego obiektu Rozwiązanie: Interfejs Iterator definiuje dostęp do elementów agregatów i sposób przejścia przez agregat, obiekt typu ConcreteIterator implementuje Iterator. Interfejs Aggregate reprezentuje obiekt, przez który przechodzi Iterator. Istnieje powiązanie jedynie między obiektami typu ConcreteAggregate i ConcreteIterator. Klient wzorca: klient wzorca może śledzić, który obiekt w agregacie jest bieżący i potrafi wskazać następny lub poprzedni obiekt w tym agregacie
14 Rezultat: Możliwość dowolnego przejścia przez agregat Interfejs iteratora upraszcza interfejs agregatu W danej chwili może odbywać się wiele przejść przez agregat za pomocą iteratora Implementacja: nowa klasy typu Control np. klasy Iterator oraz ListIterator w pakiecie java.util Pokrewne wzorce Kompozyt (Composite) Metody wytwórcze (Factory Method) Pamiątka (Memento) do przechowania stanu Iteratora
15 3) Odwiedzający - Visitor
16 1
17 Problem: Należy pozwolić na zdefiniowanie nowej operacji bez zmiany definicji klasy obiektów, w których ona działa. Rozwiązanie: obiekt typu ObjectStructure może wprowadzić swoje obiekty i umożliwia obiektom, które implementują interfejs Element (i mogą być złożone) odwiedzanie przez obiekty implementujące interfejs Visitor. Interfejs Visitor deklaruje metody wizytujące (np. visit_el1), które otrzymują, jako parametr, obiekt do odwiedzenia, implementujący interfejs Element. Obiekt typu ConcreteVisitor implementuje metody wizytujące, która pozwalają na przechowywanie informacji o stanie poszczególnych obiektów typu ConcreteElement. Te odwiedzane obiekty posiadają metody umożliwiajace odwiedzenie ich stanu (np. operation_el1), które są wywoływane przez metody wizytujące obiektów typu ConcreteVisitor. Klient: Klient reprezentowana przez obiekt typu ObjectStructure musi utworzyć obiekty typu ConcreteVisitor i przejść przez całą strukturę obiektów typu Element, odwiedzając każdy element, za pomocą obiektu typu ConcreteVisitor. Każdy obiekt typu Element wywołuje metodę wizytującą obiektu ConcreteVisitor, dając dostęp do siebie, i pozwala jej wywołać odpowiednią metodę swojej klasy, umożliwiajacą zbadanie stanu.
18 Wynik: Łatwe dodawanie nowych działań, które są zależne od złożonych elementów. Nowa operacja wymaga dodania nowego obiektu typu ConcreteVisitor Połączenie związanych ze sobą działań w całej strukturze obiektów typu Element w klasie, która implementuje interfejs Visitor oraz separacji niepowiązanych w podklasach obiektów implementujących interfejs Visitor Trudne dodawanie nowych klas ConcreteElement, bo trzeba zadeklarować nową metodę wizytującą w interfejsie Visitor i nowe implementacje metod wizytujących w klasach ConcreteVisitor Pokrewne wzorce: Wzorzec Visitor może służyć do odwiedziania obiektów wzorca Kompozyt (Composite) Odwiedzający może służyć do interpretowania we wzorcu Interpreter
19 4) Łańcuch zobowiązań - Chain of Responsibility
20 alt alt
21 Charakterystyka wzorca Chain of Responsibility Problem: Tworzy łańcuch odbierających obiektów i przekazuje wzdłuż niego żądanie, aż jakiś obiekt je obsłuży. Umożliwia kontakt nadającemu żądanie więcej niż z jednym obiektem i przekazania im obsłużenie tego żądania Rozwiązanie: interfejs Handler deklaruje interfejs obsługi żądań i ewentualnie implementuje odwołanie do nastepnika. Obiekt typu ConcreteHandler odpowiedzialny za wykrycie i obsługę swojego żądania; przekazuje żądanie do swojego następnika, jeśli nie może go obsłużyć. Klient: generuje i kieruje żądania do listy obiektów ConcreteHandler Wynik: Obiekt do obsługi żadań typu ConcreteHandler nie ma wyraźnej wiedzy o innych obiektach z łańcucha i nie muszą znać struktury łańcucha. Łańcuch zobowiązań zwiększa elastyczność w przyznawaniu zgłoszeń serwisowych poprzez zmianę podklasy obiektów i struktur łańcucha obiektów - ale bez gwarancji otrzymania żądania. Realizacja: Służy do obsługi zdarzeń Pokrewne wzorce: Stosowany w połączeniu z wzorcem Kompozyt (Composite) 21
22 5) Mediator - Mediator
23
24 Problem: Należy ograniczyć znajomość złożonych powiązań pomiędzy obiektami, które oddziałują w złożony sposób i pozwolić na zmienianę sposobu komunikowania się bez konieczności definiowania nowych podklas. Rozwiązanie: Obiekt typu Mediator definiuje interfejs porozumiewania się z obiektami typu Collegue, więc każdy obiekt ConcreteColleague zna operacje obiektu typu ConcreteMediator - każdy obiekt typu ConcreteColleague nie musi komunikować się z innym obiektem ConcreteColleaque, ale z obiektem typu ConcreteMediator; obiekt typu ConcreteMediator koordynuje współpracę wielu obiektów typu ConcreteColleague. Obiekty typu ConcreteColleague wysyłają żądania do obiektu typu ConcreteMediator, a obiekt typu ConcreteMediator podejmuje decyzję i wysyła te wnioski do odpowiednich obiektów typu ConcreteColleague.
25 Wynik: Obiekt ConcreteMediator skupia zachowania, które byłyby umieszczone w wielu obiektach typu ConcreteColleague Można łączyć różne rodzaje obiektów typów ConcreteColleague i ConcreteMediator Uproszczenie protokołów komunikacji za pomocą związków jeden-dowielu między obiektami typów ConcreteMediator i ConcreteColleague, zastępując wiele obiektów typu ConcreteMediator na jeden. Uogólnienie przez interfejs Mediator współpracy między obiektami, które implementują interfejs Collegue Funkcjonalność obiektów, które implementują interfejs Mediator może prowadzić do bardzo złożonych rozwiązań, które będą trudne do utrzymania Pokrewne wzorce: - Obserwator (Observer) może służyć do komunikacji obiektów implementujących Mediator z obiektami typu ConcreteColleague
26 6) Obserwator - Observer
27
28 Problem: Konieczność okreslenia zależności typu jeden-do-wielu między obiektami - gdy obiektu zmienia stan, wszystkie obiekty zależne są automatycznie powiadamiane i aktualizowane Rozwiązanie: Obiekty typu ConcreteSubject zna swoich obserwatorów i ma dostęp do wielu obiektów typu ConcreteObserver - kiedy zmienia swój status, powiadamia obserwatorów (interfejs Observer) ich metodą aktualizacji (update). Obiekt typu ConcreteObserver ma odwołanie do obiektu typu ConcreteSubject i posiada jego stan, który musi być zgodny ze stanem tego obserwowanego obiektu typu ConcreteSubject Wynik: Abstrakcyjny związek pomiędzy obiektami typu ConcreteSubject i obiektów typu ConcreteObserver Wsparcie dla wysyłania wiadomości - obiekty typu ConcreteSubject przesyłają zgłoszenie, nie znając odbiorcy Nieoczekiwany modyfikacje, nie zawsze pożądane - ze względu na fakt, że obserwatorzy nie wiedzą o istnieniu innych obserwatorów Pokrewne wzorce: Zastosowanie wzorców Mediator lub Singleton do komunikacji między obserwowanymi obiektami i obserwatorami
29 7) Metoda szablonowa Template Method
30 Problem: Należy określić szkielet algorytmu, a szczegóły algorytmu powierzyć klasom pochodnym Rozwiązanie: Klasa AbstractClass definiuje abstrakcyjny algorytm, ale pewne części abstrakcyjnego algorytmu są uzupełniane przez różne definicje, realizowane przez metody klasy ConcreteClass Wynik: "zasada Hollywood " (nie zadzwoń do nas, my zadzwonimy do Ciebie), gdzie metoda klasy bazowej wywołuje metody z klas pochodnych Realizacja: tworzenie bibliotek, co daje podstawę do wspólnych zachowań w klasach biblioteki Pokrewne wzorce: Metody szablonowe (Template Method) wywołują metody wytwórcze (Factory Method) Metody szablonowe (Template Method) służą do zmiany części algorytmu we wzorcach Strategia (Strategy)
31 8) Pamiątka - Memento
32
33 Problem: Bez naruszania hermetyzacji należy zapamiętać i udostępnić stan obiektu, aby przywrócić jego stan w przyszłości. Rozwiązanie: Obiekt typu Caretaker jest odpowiedzialny za kierowanie obiektami typu Originator - może dać polecenie obiektom typu Originator, któych stan powinien być zachowany, aby utworzyły swój obiekt typu Memento i go przekazały. Obiekt Memento posiada stan obiektu wytwórcy (typu Originator). Obiekt typu Caretaker przechowuje wszystkie obiekty typu Memento i może dać dać polecenie obiektom typu Originator, aby przywróciły swój stan przekazując im ich obiekt typu Memento. Wynik: Utrzymanie hermetyzacji obiektów typu Originator, mimo przechowywania stanu tego obiektu poza nim Uproszczenie obiektu typu Caretaker Zmniejszenie wydajności Trudności w realizacji Trudności w utrzymaniu obiektów Memento Pokrewne wzorce: Wzorce Polecenie (Command) i Iterator mogą używać wzorca Memento do zapamiętania stanu
34 9) Polecenie - Command Element of menu Paste Document
35
36 Problem: Należy polecenia tworzyć w formie obiektu, co pozwala sparametryzować różne wymagania klientów i ewidencji poleceń Rozwiązanie: interfejs Command deklaruje wykonywane operacje. Obiekt typu ConcreteCommand określa związek między akcją (obiekt typu Invoker) oraz obiektem odbiorcą typu Receiver, i wdraża metody wykonywane przez wywołanie metod obiektu Receiver. Obiekt typu Invoker za pośrednictwem obiektu typu ConcreteCommand wywołuje metodę obiektu typu Receiver, który wie, jak wykonać akcję. Klient: Klient tworzy obiekt typu ConcreteCommand i ustala jego obiekt typu Receiver, które wykonują akcje oraz ustala obiekt zainteresowany akcją, taki jak obiekt Invoker. Wynik: Separacja obiektów, które wywołuja akcję od tych, które realizują akcje. Możliwość tworzenia złożonych obiektów typu ConcreteCommand Łatwość wstawiania nowych klas pochodnych typu Command Pokrewne wzorce: Kompozyt (Composite) do utworzenia złożonych poleceń Memento do anulowania skutków polecenia Działa jak Prototype, jeśli musi być skopiowany przed umieszczeniem na liście poleceń
37 10) Stan - State State TCP TCP Connection TCP Accept TCP Close
38
39 Problem: Można zmienić zachowanie obiektu podczas zmiany wewnętrznego stanu obiektu, tworząc jego pochodny obiekt. Rozwiązanie: Obiekt typu Context definiuje interfejs dla klientów i utrzymuje obiekt typu ConcreteState, definiujący bieżący stan. Definicja interfejsu State służy do zachowania stanu obiektu typu Context. Obiekty typu ConcreteState stanowią zachowanie jednego z możliwych stanów obiektu typu Context. Klient: obiekt, który konfiguruje obiekty ConcreteState za pomocą obiektu Context Wynik: Lokalizacja informacji zwiazanej z każdym ze stanów obiektów tyou Context w jednym obiekcie typu ConcreteState Każdy obiekt pochodny typu ConcreteState wprowadza nową funkcjonalność niezaleznie, co poprawia widoczność przejścia pomiędzy stanami Możliwość wspołdzielenia takich obiektów jak ConcreteState, ponieważ ich stany są reprezentowane przez ich rodzaje (podobnie jak wzorzec Flyweight). Pokrewne wzorce: Wzorzec Pyłek (Flyweight) wyjaśnia jak i kiedy należy współdzielić obiekty Stan (State) Obiekty Stan są często wzorcem Singleton
40 11) Strategia - Strategy
41
42 Problem: Wybór różnych reguł biznesowych lub różnych wersji algorytmów w zależności od kontekstu Rozwiązanie: Separuje wybór wersji algorytmu od jego implementacji Rezultat: Zdefiniowanie rodziny algorytmów Zdefiniowanie interfejsu klasy typu Strategy zawierającej metodę dostarczającą algorytm i metody w klasie typu Context, która korzysta z algorytmu Eliminacja instrukcji wyboru lub warunkowej do wyboru algorytmu strategii-wprowadzenie mechanizmu polimorfizmu, szczególnie, gdy wybór algorytmu nie ma charakteru przejściowego
43 Klient: Decyzję o implementacji obiektu strategii i kontekstu podejmuje właściciel tych obiektów, który dostarcza informacji o utworzeniu właściwego obiektu strategii oraz obiektu kontekstu np. za pomocą fabryki obiektów. Jest nim obiekt typu klient wzorca np. dowolny obiekt z warstwy prezentacji. Implementacja: Obiekt kontekstowy klasy bazowej typu Context ( Entity ) i jej pochodnych, który używa algorytmu, posiada obiekt klasy bazowej typu Strategy ( Entity ) lub jej pochodnych, dostarczający algorytm. Obiekt kontekstu posiada metodę wirtualną wywołującą wirtualną metodę algorytmu obiektu strategii. Każda klasa dziedzicząca od klasy typu Strategy implementuje taką metodę algorytmu w inny sposób. Decyzja o sposobie użycia strategii, czyli użycia właściwego obiektu typu Strategy zależy od klasy typu Context Pokrewne wzorce: Kandydaci na obiekty wzorca Pyłek (Flyweight)
Zaawansowane 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
Wzorce projektowe Wykład 7 część 1
Wzorce projektowe Wykład 7 Zofia Kruczkiewicz 1 Wzorce projektowe 1. Identyfikacja wzorców projektowych 2. Przegląd wzorców projektowych 2.1. Wzorce kreacyjne 2.2. Wzorce strukturalne 2.3. Wzorce zachowania
Wzorce projektowe ArrayList. Aplikacja i zdarzenia. Paweł Chodkiewicz
Wzorce projektowe ArrayList DataGridView Aplikacja i zdarzenia Paweł Chodkiewicz Wzorzec uniwersalne rozwiązanie często powtarzających się problemów. Wzorzec opisuje problem, który powtarza się wielokrotnie
Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 2
Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 2 Zofia Kruczkiewicz 1 Diagramy maszyn stanowych, wzorce projektowe 1. Modelowanie aktywności za pomocą diagramów sekwencji i aktywności porównanie
Wzorce projektowe. dr inż. Marcin Pietroo
Wzorce projektowe dr inż. Marcin Pietroo Iterator czynnościowy wzorzec projektowy (obiektowy), którego celem jest zapewnienie sekwencyjnego dostępu do podobiektów zgrupowanych w większym obiekcie (np.
Problemy 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
problem 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
Testowanie oprogramowania Wzorce projektowe
Testowanie oprogramowania Wzorce projektowe 1/66 Testowanie oprogramowania Wzorce projektowe dr inż. Grzegorz Michalski 17 listopada 2015 Testowanie oprogramowania Wzorce projektowe 2/66 Plan wykładu Agenda
Analiza 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
Projektowanie obiektowe Wzorce projektowe. Wprowadzenie do wzorców projektowych
Projektowanie obiektowe Wzorce projektowe Wprowadzenie do wzorców projektowych 1 Zagadnienia Katalog wzorców projektowych wg Gang of Four Zasady projektowania obiektowego S O L I D MVC - Model-Widok-Kontroler
Wprowadzenie 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
Zaawansowane 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
Wzorce 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.
Projektowanie 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
Wzorce projektowe cz. I. Wzorce projektowe cz. I 1/33
Wzorce projektowe cz. I Wzorce projektowe cz. I 1/33 Wzorce projektowe cz. I 2/33 Historia Wzorce projektowe: wywodzą się z wzorców projektowych w architekturze termin wzorca projektowego wprowadzony do
Programowanie 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
Technologia Programowania 2016/2017 Wykład 5
Technologia Programowania 2016/2017 Wykład 5 Wzorce GoF Jakub Lemiesz Wzorce GoF Kreacyjne Builder Singleton Simple Factory Factory Method Abstract Factory Prototype Strukturalne Adapter Decorator Proxy
Wzorce projektowe Michał Węgorek
Wzorce projektowe Michał Węgorek Wzorce projektowe Plan prezentacji Co to jest i po co to jest? Podział Najczęściej spotykane wzorce Bibliografia Co to jest i po co to jest? Wzorzec projektowy (ang. Design
1) Interpreter. Idea. Struktura. Uczestnicy
Projektowanie Systemów Komputerowych Laboratoria/Projekty Krzysztof Regulski AGH, WIMiIP WZORCE CZYNNOŚCIOWE PSK - projektowanie systemów komputerowych, notatki w Internecie, Beata Frączek, http://brasil.cel.agh.edu.pl/~09sbfraczek
Wzorce projektowe i refaktoryzacja
Wzorce projektowe i refaktoryzacja Paweł Kozioł p.koziol@students.mimuw.edu.pl 18.01.2005 Moja praca magisterska Narzędzie dla środowiska Eclipse wspierające stosowanie wzorców projektowych J2EE Prowadzący:
(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński
(wybrane) Wzorce projektowe Programowanie Obiektowe Mateusz Cicheński Kreacyjne Fabryka abstrakcyjna (Abstract Factory) Budowniczy (Builder) Metoda wytwórcza (Factory Method) Prototyp (Prototype) Singleton
(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński
(wybrane) Wzorce projektowe Programowanie Obiektowe Mateusz Cicheński Kreacyjne Fabryka abstrakcyjna (Abstract Factory) Budowniczy (Builder) Metoda wytwórcza (Factory Method) Prototyp (Prototype) Singleton
Wzorce 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
WZORCE PROJEKTOWE (I) (DESIGN PATTERNS)
WZORCE PROJEKTOWE (I) (DESIGN PATTERNS) Maciej Patan Motywacje W wielu dziedzinach nowoczesnej inżynierii napotykamy na następujące zagadnienia: Czy typowe zadania i problemy można rozwiązywać w powtarzalny
Projektowanie 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
WZORCE PROJEKTOWE. Software engineering has accepted as its charter How to program if you cannot. E. Djikstra
WZORCE PROJEKTOWE Software engineering has accepted as its charter How to program if you cannot. E. Djikstra 1 * Wykład 1 Wzorzec projektowy opis komunikujących się obiektów i klas dostosowanych do rozwiązania
Wypoż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
Technologia 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
Dzisiejszy 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
UML [ Unified Modeling Language ]
UML [ Unified Modeling Language ] UML język formalny służący do opisu świata obiektów w analizie obiektowej oraz programowaniu obiektowym. W najnowszej wersji (2.4.x) języka UML wyróżnia się 13 diagramów
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, laboratorium PROGRAMOWANIE OBIEKTOWE Object-Oriented Programming
Projektowanie oprogramowania: wzorce architektoniczne i projektowe
Projektowanie oprogramowania: wzorce architektoniczne i projektowe Ogólne zasady projektowania Nie staraj się zadziwić innych. Rzeczy oczywiste rób w sposób oczywisty. Nie rozmawiaj z nieznajomym. Projekt
Program szkolenia: Wzorce projektowe w C++
Program szkolenia: Wzorce projektowe w C++ Informacje: Nazwa: Wzorce projektowe w C++ Kod: CCPP-craft-C++ Patterns Kategoria: Craftsmanship dla programistów C i C ++ Grupa docelowa: developerzy Czas trwania:
Wzorce 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
Command (action, transaction, polecenie)
1/10 Command (action, transaction, polecenie) Cel: Obiekt funkcyjny. Pozwala operować żądaniem jako obiektem wysyłać jako parametr, buforować, kolejkować, składować (dzienniki lub undo). Przykład: class
Wzorce projektowe [ wstęp ]
Wzorce projektowe [ wstęp ] Motywacje definiowania wzorców projektowych Za twórcę uważany jest amerykański architekt Christopher Alexander Alexander, C., Ishikawa, S., Silverstein, M., The Timeless Way
Wzorce 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ół
Omó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
Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów)
Projektowanie obiektowe Wzorce projektowe Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów) 1 Roadmap Adapter Bridge Composite Facade 2 Pojęcia obiekt interfejs typ klasa 3 Co to jest delegacja?
Builder (budowniczy) Cel: Przykład:
1/8 Builder (budowniczy) Cel: Oddzielenie konstruowania złożonego obiektu od jego reprezentacji, tak aby ten sam proces konstrukcji mógł tworzyć różne reprezentacje. Przykład: 2/8 abstract class TableBuilder
Projektowanie 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
Wstęp [2/2] Wbrew częstemu przekonaniu, nie są one gotowymi rozwiązaniami, to tylko półprodukty rozwiązania.
Adrian Skalczuk Szymon Kosarzycki Spis Treści Wstęp [1/2] Wzorce projektowe są nieodłącznym przyjacielem programisty pozwalają pisać czystszy kod, łatwiejszy do zrozumienia przez innych i zapewniają pewien
Wprowadzenie niektórych zagadnień OOP oraz wzorce operacyjne
Wprowadzenie niektórych zagadnień OOP oraz wzorce operacyjne ŁUKASZ KIEŁCZYKOWSKI 1 1. Wprowadzenie Wyobraźmy sobie, że jesteśmy firmą tworzącą oprogramowanie i dostaliśmy właśnie zlecenie na stworzenie
Projektowanie 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
Język Java część 2 (przykładowa aplikacja)
Programowanie obiektowe Język Java część 2 (przykładowa aplikacja) Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Java Java przykładowa
Poję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
Rok akademicki: 2014/2015 Kod: IEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -
Nazwa modułu: Programowanie obiektowe Rok akademicki: 2014/2015 Kod: IEL-1-408-s Punkty ECTS: 5 Wydział: Informatyki, Elektroniki i Telekomunikacji Kierunek: Elektronika Specjalność: - Poziom studiów:
Programowanie obiektowe - 1.
Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która
Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Wzorce projektowe. Wstęp
Wstęp Stworzenie programu łatwego w rozwijaniu i naprawie nie należy do łatwych zadań. Na różnych etapach prac można napotkać wiele niemiłych niespodzianek i przeciwności losu, głównie takich które sami
Wzorce projektowe / Eric Freeman [et al.]. Gliwice, cop Spis treści
Wzorce projektowe / Eric Freeman [et al.]. Gliwice, cop. 2011 Spis treści Wprowadzenie Dla kogo przeznaczona jest ta ksiąŝka? 22 Wiemy takŝe, co sobie myśli Twój mózg 23 Metapoznanie 25 Zmuś swój mózg
WYKŁAD 10. Wzorce projektowe czynnociowe Command Strategy
WYKŁAD 10 Wzorce projektowe czynnociowe Command Strategy Behavioral Design Pattern: Command [obj] Kapsułkuje dania w postaci obiektu, co umoliwia parametryzowanie klientów rónymi daniami, kolejkowanie
Analiza i projektowanie obiektowe 2016/2017. Wykład 8: Przypisywanie obiektom odpowiedzialności (2)
Analiza i projektowanie obiektowe 2016/2017 Wykład 8: Przypisywanie obiektom odpowiedzialności (2) Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Wzorce
Analiza i projektowanie obiektowe w UML Kod przedmiotu
Analiza i owanie obiektowe w UML - opis przedmiotu Informacje ogólne Nazwa przedmiotu Analiza i owanie obiektowe w UML Kod przedmiotu 11.3-WK-MATP-UML-W-S14_pNadGen5M44E Wydział Kierunek Wydział Matematyki,
Projektowanie obiektowe oprogramowania Wykład 7 wzorce czynnościowe (2) Wiktor Zychla 2018
Projektowanie obiektowe oprogramowania Wykład 7 wzorce czynnościowe (2) Wiktor Zychla 2018 1 Mediator Motto: Koordynator współpracy ściśle określonej grupy obiektów dzięki niemu one nie odwołują się do
Programowanie obiektowe
Laboratorium z przedmiotu - zestaw 03 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas abstrakcyjnych i interfejsów. Wprowadzenie teoretyczne. Rozważana
Programowanie Zespołowe
Programowanie Zespołowe Dobre Praktyki dr Rafał Skinderowicz mgr inż. Michał Maliszewski Parafrazując klasyka: Jeśli piszesz w Javie pisz w Javie - Rafał Ciepiela Principal Software Developer Cadence Design
Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji
Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 03 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas abstrakcyjnych i interfejsów. Wprowadzenie
Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Diagramy interakcji Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania.
Programowanie zorientowane obiektowo. Mateusz Kołecki
Programowanie zorientowane obiektowo Mateusz Kołecki Plan MVC Wstęp Separacja odpowiedzialnośći Antyprzykład Dobry przykład Wady/zalety MVC MVC to tylko początek - wzorce projektowe Dlaczego chcemy używać
WYKŁAD 11. Wzorce projektowe czynnociowe Iterator TemplateMethod
WYKŁAD 11 Wzorce projektowe czynnociowe Iterator TemplateMethod Behavioral Design Pattern: Iterator [obj] Zapewnia sekwencyjny dostp do elementów agregatu bez ujawniania jego reprezentacji wewntrznej.
Projektowanie 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
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Analiza i projektowanie aplikacji Java
Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie
Projektowanie 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
Programowanie 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 24.02.2014 WYKŁAD 1 Wzorce projektowe Znaczenie
Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014
Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80
Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych
Spis treści 1. Wstęp... 9 1.1. Inżynieria oprogramowania jako proces... 10 1.1.1. Algorytm... 11 1.2. Programowanie w językach wysokiego poziomu... 11 1.3. Obiektowe podejście do programowania... 12 1.3.1.
Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017
Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy
Unified Modeling Language
Unified Modeling Language Wprowadzenie do UML Igor Gocaliński Odrobina historii Połowa lat 70-tych i koniec 80-tych to początek analizy obiektowej Wiele opracowanych metod w połowie lat 90-tych Metoda
Projektowanie 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
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
UML w Visual Studio. Michał Ciećwierz
UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować
Projektowanie 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
Rysunkowy tutorial Możesz swobodnie dystrybuować ten plik jeśli pozostawisz go w nietkniętym stanie. Możesz także cytować jego fragmenty umieszczając w tekście odnośnik http://mbartyzel.blogspot.com Jak
Wzorce oprogramowania Gof. zastosowane w modelu obiektowym
Wzorce oprogramowania Gof (Gang of Four skrót odnoszący się do autorów ksiązki: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software)
Design Pattern Density Defined
Design Pattern Density Defined (Definicja gęstości wzorców projektowych) Marcin Mieteń Na podstawie pracy pana Dirka Riehle Wzorce Projektowe (przypomnienie) Przypomnienie idei wzorców, z których będziemy
Programowanie obiektowe
Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.
Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne
Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Wzorce projektowe i ich implementacja
Warstwa 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
Perspektywa obiektowości
Inżynieria Oprogramowania Wykład 10 Wzorce projektowe Perspektywa obiektowości obiekty hermetyzacja dziedziczenie klasy abstrakcyjne 2 Wzorce projektowe Czym są wzorce projektowe Przykładowe definicje:
12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:
Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 1) Oprogramowanie to: 2) Produkty oprogramowania w inżynierii oprogramowania można podzielić na: 3) W procesie wytwarzania oprogramowania
Programowanie 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
Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1
Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa
Template method (metoda szablonowa)
1/11 Template method (metoda szablonowa) Cel: Definiuje szkielet algorytmu przy pomocy operacji podstawowych. Konkretyzacja poszczególnych kroków składowych pozostawiona klasom potomnym mogą być one zmieniane
Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6
Instrukcja 6 Laboratorium 8 Opracowanie diagramów sekwencji dla wybranych przypadków użycia reprezentujących usługi oprogramowania wynikających również z wykonanych diagramów czynności; definicja operacji
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,
Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1
Charakterystyka oprogramowania obiektowego 1. Definicja systemu informatycznego 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wymagania 4. Problemy z podejściem nieobiektowym
WYKŁAD 12. Wzorce projektowe czynnociowe State Mediator
WYKŁAD 12 Wzorce projektowe czynnociowe State Mediator Behavioral Design Pattern: State [obj] Umoliwia obiektowi zmian zachowania gdy zmienia si jego stan wewntrzny. Dzieki temu obiekt zdaje si zmienia
Projektowanie 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
Diagramy czynności Na podstawie UML 2.0 Tutorial
Diagramy czynności Na podstawie UML 2.0 Tutorial http://sparxsystems.com.au/resources/uml2_tutorial/ Zofia Kruczkiewicz 1 Diagramy czynności 1. Diagramy czyności UML http://sparxsystems.com.au/resources/uml2_tutorial/
Wzorce 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
Projektowanie aplikacji JEE z użyciem wzorców projektowych i notacji UML
Kod szkolenia: Tytuł szkolenia: UGC Projektowanie aplikacji JEE z użyciem wzorców projektowych i notacji UML Dni: 5 Opis: Adresaci Szkolenia: Szkolenie adresowane jest zarówno do programistów jak i projektantów,
Program szkolenia: Wzorce projektowe i architektoniczne oraz efektywne techniki Object Oriented Design dla projektantów systemów
Program szkolenia: Wzorce projektowe i architektoniczne oraz efektywne techniki Object Oriented Design dla projektantów systemów Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma:
1) Wzorzec projektowy Adapter. Zastosowanie:
Projektowanie Systemów Komputerowych Laboratoria/Projekty Krzysztof Regulski AGH, WIMiIP WZORCE STRUKTURALNE PSK - projektowanie systemów komputerowych, notatki w Internecie, Beata Frączek, http://brasil.cel.agh.edu.pl/~09sbfraczek
Instrukcja 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:
Wprowadzenie do systemów informacyjnych
Uwagi ogólne: Wprowadzenie do systemów informacyjnych Projektowanie obiektowe Obiektowość jest nową ideologią, która zmienia myślenie realizatorów SI z zorientowanego na maszynę na zorientowane na człowieka.
Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com
Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,