Projektowanie obiektowe

Slides:



Advertisements
Podobne prezentacje
Platformy e-learningowe Krzysztof Andrelczyk IS, WIMiIP, III rok
Advertisements

Inżynieria Oprogramowania
Wzorce Projektowe Bartosz Baliś, Na podstawie
Projektowanie systemowe
Zaawansowane metody programowania – Wykład V
Obiektowe metody projektowania systemów Design Patterns STRATEGY.
Wykład (12 godz): Jan Aleksander Wierzbicki Ćwiczenia ( godz):
Budowa i integracja systemów informacyjnych
Wzorce projektowe Paweł Ciach.
Szkolenie dla NaviExpert,
Projektowanie oprogramowania
Organizacja Przedsięwzięć Programistycznych Projektowanie
Modelowanie i architektura
Obiektowe metody projektowania systemów
Obiektowe metody projektowania systemów
Dziedziczenie i jego rodzaje
Inżynieria Oprogramowania dla Fizyków
Unified Modeling Language Wykład 3 Diagram klas
Wzorce projektowe w J2EE
Wstęp do programowania obiektowego
Projektowanie i programowanie obiektowe II - Wykład I
Projekt i implementacja aplikacji do zasilania bazy danych testowymi danymi Jacek Lis Promotor: prof. dr hab. inż. Włodzimierz KASPRZAK.
Projektowanie - wprowadzenie
Wykład 4 Analiza i projektowanie obiektowe
System katalogowania i zarządzania sprzętem na uczelni
System katalogowania i zarządzania sprzętem na uczelni
czyli (anty)wzorzec Singleton
Wzorce projektowe (Design Patterns)
C.d. wstępu do tematyki RUP
Rozwój aplikacji przy wykorzystaniu ASP.NET
Architektura Systemu MunSOL
Microsoft Expression Studio
Wykład 1 – część pierwsza
Technologie tworzenia aplikacji internetowych Wykład 3
Analiza możliwości tworzenia aplikacji typu RIA na przykładzie portalu ogrodniczego Autor: Łukasz Strzelecki Promotor: dr inż. Paweł Kasprowski.
Projektowanie obiektowe
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
Refaktoryzacja Robert Pająk.
JAVA.
Projektowanie obiektowe
Projektowanie obiektowe
Projektowanie obiektowe
Projektowanie obiektowe
XML – eXtensible Markup Language
Programowanie obiektowe – język C++
Systemy zarządzania treścią Wykład 5
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Wzorce projektowe Jacek Matulewski
Wzorce oprogramowania
Walidacja danych alina suchomska.
Technologie programowania systemów internetowych
OOP, Desing Patterns … and more Michał Dubel
Design Patterns.: Visitor :.. Plan prezentacji 1. Trochę statystyk. 2. Zadanie problemowe. 3. Rozwiązanie… Visitor. 4. Visitor w UML (a,b,c). 5. Implementacja.
Zakres Wzorce projektowe ( -Adapter (str , wykład wzorce projektowe.
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.
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Paweł Starzyk Obiektowe metody projektowania systemów
Wzorce Projektowe w JAVA
Dr inż. Piotr Czapiewski. Framework (rama projektowa, szkielet) to w programowaniu struktura wspomagająca tworzenie, rozwój i testowanie powstającej.
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.
Wzorce projektowe w C++ WWW: Jacek Matulewski Instytut Fizyki, UMK WWW:
1. Cel pracy Moja ocena systemów klasy MRP/ERP w kategorii wzorców projektowych. Hipoteza badawcza Zastosowanie systemów MRP/ERP jako wzorców projektowych.
Inżynieria oprogramowania Wzorce konstrukcyjne WWW: Jacek Matulewski Instytut Fizyki, UMK.
Wzorzec MVC na przykładzie CakePHP
Inżynieria oprogramowania Wzorce projektowe
Wzorzec MVC Model View Controller
Wykład 1 – część pierwsza
Zapis prezentacji:

Projektowanie obiektowe Projektowanie obiektowe Wzorce projektowe Wprowadzenie do wzorców projektowych 1 dr inż. Radosław Adamus dr inż. Radosław Adamus 1

Projektowanie obiektowe Roadmap Wzorce projektowe Schematy opisu wzorców Cechy wzorców 2 dr inż. Radosław Adamus dr inż. Radosław Adamus 2

Projektowanie obiektowe Wzorce „Każdy wzorzec opisuje pewien regularnie napotykany problem i łączy go z ogólnym opisem jego rozwiązania w sposób, który pozwala stosować to rozwiązanie miliony razy, ale za każdym razem nieco inaczej.” Christopher Aleksander 3 dr inż. Radosław Adamus dr inż. Radosław Adamus 3

Projektowanie obiektowe Wzorce projektowe – the beginning Model-View-Contoller (MVC) jako szkielet dla języka Smalltalk (T. Reenskauga – początek lat 80-tych) w przypadku aplikacji Webowych nazywany Model-2 „Gang of Four”: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides „Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku” („Design Patterns - Elements of Reusable Object- Oriented Software”, Addison Wesley 1998) 4 dr inż. Radosław Adamus dr inż. Radosław Adamus 4

Projektowanie obiektowe Opis wzorca wg. „Gang of Four” (GoF) Nazwa – używana w celu jednoznacznej identyfikacji, uwspólnienia języka, Problem – opis problemu, który może być rozwiązany, lista warunków, które muszą być spełnione, aby stosowanie wzorca miało sens Rozwiązanie – elementy składające się na projekt, ich związki, zobowiązania i współpraca, nie opisuje konkretnego projektu – stanowi pewien szablon Konsekwencje – zyski i straty, wady i zalety stosowania wzorca. 5 dr inż. Radosław Adamus dr inż. Radosław Adamus 5

Projektowanie obiektowe Zalety stosowania wzorców Wynikają z wielu praktycznych doświadczeń. Wzorce projektowe ustalają terminologię Ułatwia komunikację z innymi projektantami i programistami Narzuca określoną terminologię projektowania Upraszczają restrukturyzację istniejących systemów. Umożliwiają wielokrotne użycie sprawdzonych rozwiązań. Ale … Wzorzec projektowy to półprodukt Muszą zostać obrobione i osadzone w całości projektu 6 dr inż. Radosław Adamus dr inż. Radosław Adamus 6

Projektowanie obiektowe Wzorce GoF Materiałów w Internecie jest sporo: http://www.vincehuston.org/dp/ http://hillside.net/patterns/onlinepatterncatalog.htm http://en.wikipedia.org/wiki/Design_pattern_(computer_science) Pierwszym waszym zadaniem jest zapoznanie się z tymi wzorcami 7 dr inż. Radosław Adamus dr inż. Radosław Adamus 7

Projektowanie obiektowe Klasyfikacja wzorców wg. GoF Strukturalne Łączenie istniejących obiektów Adapter, Decorator, Facade, Composite, Bridge, Proxy, Flyweight. Behawioralne Umożliwienie elastycznej zmiany zachowania Interpreter, Iterator, Chain of responsibility, Mediator, Template method, Observer, Visitor, Memento, Command, State, Strategy. Kreacyjne Ułatwienie procesu tworzenia obiektów Builder, Abstract factory, Factory method, Prototype, Singleton. 8 dr inż. Radosław Adamus dr inż. Radosław Adamus 8

Projektowanie obiektowe Inne wzorce Wzorce zaczynają się i nie kończą się na GoF Wszystkie wzorce bazują na pewnych fundamentach obiektowości Dziedziczenie i polimorfizm Intefejsy Delagacja Istnieją również wzorce: Współbieżności, (np. Active Object, Thread Specific Storage, Thread Pool Pattern, Monitor Object,…) Architektoniczne (SOA, Client-Server, Three-tier, Pipeline, …), Specyficzne dla konkretnej dziedziny zastosowań (Active Record, Domain Model, Metadata mapping, …) … 9 dr inż. Radosław Adamus dr inż. Radosław Adamus 9

Projektowanie obiektowe „Software framework” czyli wzorce zaimplementowane w projekcie powtórnego użycia Software framework - (rama projektowa, szkielet) - struktura wspomagająca tworzenie, rozwój i testowanie powstającej aplikacji .NET Framework Spring Framework Ruby on Rails Eclipse Framework, NetBeans Framework Symfony Framework Struts Hibernate … 10 dr inż. Radosław Adamus dr inż. Radosław Adamus 10

Projektowanie obiektowe Nasza literatura: Podstawowa: Oczywiście GoF jako odnośnik do podstawowych wzorców Steven John Metsker , „C#. Wzorce projektowe”, Helion, 2005 Martin Fowler, „Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe”, Helion, 2005. Dodatkowa: Rod Johnson, Juergen Hoeller, Alef Arendsen, Thomas Risberg, Colin Sampaleanu, „Spring Framework. Profesjonalne tworzenie oprogramowania w Javie”, Helion 2006 Joshua Kerievsky, „Refaktoryzacja do wzorców projektowych”, Helion 2005. Alan Shalloway, James R. Trott, „Projektowanie zorientowane obiektowo. Wzorce projektowe. Wydanie II”, Helion 2005 11 dr inż. Radosław Adamus dr inż. Radosław Adamus 11