Kolejnym z
omawianych wzorców kreacyjnych jest Prototyp (Prototype). Zastosowanie tego wzorca umożliwia tworzenie nowych
obiektów na podstawie już istniejących, których nazywamy prototypami. Polega to
na kopiowaniu już istniejących instancji i modyfikowanie ich, zamiast tworzenia
nowych. Wykorzystywany jest najczęściej, gdy potrzebujemy utworzyć dużą liczbę
obiektów tego samego typu lub obiektów o podobnych właściwościach. Dodatkowo,
warto zauważyć, że kopiowanie gotowego obiektu jest szybsze niż tworzenie
nowego.
czwartek, 21 lutego 2013
wtorek, 19 lutego 2013
Singleton
Singleton jest jednym z kreacyjnych wzorców projektowych,
który ma na celu ograniczenie możliwości tworzenia obiektów danej klasy do
jednej instancji oraz zapewnienie globalnego dostępu do stworzonego obiektu.
Możliwe jest również zmodyfikowanie tego wzorca do określenia maksymalnej
liczby możliwych obiektów, jakie mogą istnieć w systemie. Idea polega na
stworzeniu klasy przechowującej żądania powstania większej liczby instancji
oraz zapewniającej łatwy dostęp do tej jedynej istniejącej.
niedziela, 17 lutego 2013
Wstęp do UML cz.3 - krótki przegląd diagramów i ich zastosowań
Projekt systemu w języku UML zbudowany jest z logicznie powiązanych ze sobą diagramów, które pozwalają na opisanie systemu począwszy od modeli ogólnych do bardzo szczegółowych. Standard UML 2.0 obejmuje 13 rodzajów diagramów charakteryzujących statykę i dynamikę tworzonego systemu. Oprócz tego, zbiór wszystkich diagramów można przedstawić za pomocą diagramów abstrakcyjnych, które są jedynie nazwami uogólniającymi w grupy 13 diagramów konkretnych. Diagramami abstrakcyjnymi są: diagramy struktury, dynamiki, interakcji, wdrożeniowe oraz sama kategoria diagramów UML.
sobota, 16 lutego 2013
Wstęp do UML cz.2 - trochę o modelowaniu
Jak sama nazwa wskazuje, UML jest językiem modelowania lub, inaczej mówiąc, konstruowania modeli. Czym jest w takim razie model? Model jest określany jako sposób na uproszczenie rzeczywistości przedstawiającej wybrane cechy i zasady działania pewnego obiektu, np. systemu informatycznego. Znając już definicję modelu, możemy dalej więc stwierdzić, że modelowanie ma na celu zapanowanie nad złożonością problemów, np. oprogramowaniem.
piątek, 15 lutego 2013
Pyłek
Pyłek (Flyweight) jest wzorcem strukturalnym,
który rozszerza niejako wzorzec puli obiektów. Pula obiektów przechowuje
nierozróżnialne obiekty gotowe do użycia – niemożliwe jest przechowywanie w
nich informacji specyficznej. Pyłek stosowany jest do tworzenia bardzo dużej
liczby obiektów (niewiele się różniących lub identycznych), którymi można
zarządzać w sposób jednolity. Wzorzec tworzy jedyną instancję danego obiektu,
którą następnie można modyfikować – zmieniać wartości określonych jego
atrybutów (tylko to, co uległo zmianie). W ten sposób klient odczytuje
dokładnie taki obiekt, jakiego oczekuje, nie powodując zwiększenia zużycia
zasobów. Efektem tego jest zmniejszenie zapotrzebowania aplikacji na pamięć.
Pula obiektów
Wzorzec puli
obiektów polega na użyciu zbioru zainicjowanych obiektów, które są trzymane w
gotowości do użycia, a nie alokowane lub deklarowane na żądanie. Klient puli
obiektów żąda obiektu z tej puli i wykonuje na nim pewne operacje. Po
skończeniu, zamiast niszczyć obiekt, zwraca go do puli. Wzorzec ten znajduje
swoje zastosowanie w przypadkach dotyczących bardzo dużej liczby obiektów –
problemach z pamięcią i wydajnością.
czwartek, 14 lutego 2013
Wstęp do UML, cz.1 - GENEZA
Niniejszy temat jest ściśle powiązany z podejściem obiektowym w wytwarzaniu oprogramowania. Przed przejściem do omówienia czym jest język UML, warto byłoby wspomnieć kilka zdań właśnie o obiektowości.
Podejście obiektowe rozwijane jest od lat 50 XX wieku, ale największy swój rozkwit przeżyło w latach 90, kiedy znalazło się w centrum zainteresowania twórców i użytkowników systemów informatycznych. Podejście obiektowe w najwyższym stopniu sprostało wówczas takim wyzwaniom jak:
Obserwator
Rolą wzorca Obserwator (Observer/Listener) jest asynchroniczne powiadamianie o zmianach stanu obiektów. W tym celu wzorzec definiuje relację między obiektami typu "jeden do wielu". Dzięki temu zmiana stanu (atrybutu) obiektu obserwowanego wiąże się z powiadomieniem o niej wszystkich powiązanych obiektów - obserwatorów. Obiekt obserwowany jest zarządcą swoich danych i informuje on powiązanych obserwatorów o zamianach w nich zachodzących. Można by powidzieć, że wzorzec obserwator przydaje się w sytuacji, gdy modyfikacja stanu jednego obiektu wpływa na inne elementy systemu.
wtorek, 12 lutego 2013
Fasada
Fasada (Facade)
jest jednym ze strukturalnych wzorców projektowych służącym do konstruowania
uproszczonego i uporządkowanego interfejsu programistycznego (lub zestawu
interfejsów) ułatwiającego dostęp do złożonego i bardziej skomplikowanego systemu.
Wzorzec ten umożliwia dostęp do wybranych funkcjonalności kompleksowego systemu
w prostszy i ujednolicony sposób. Zastosowanie wzorca Fasady nie ogranicza
funkcjonalności systemu, tylko dostarcza wygodniejszy interfejs zarządzania
wybraną częścią kodu.
Wzorce projektowe
Wzorce stały się jednym z podstawowych
narzędzi projektowania systemów. Ich ewolucję obserwuje się w różnych obszarach
rozwoju oprogramowania. Wyróżnia się wzorce na poziomach:
- architektonicznym – poziom integracji komponentów,
- projektowym – poziom interakcji między klasami,
- analitycznym – poziom opisu rzeczywistości,
- implementacyjnym – poziom języka programowania.
Subskrybuj:
Posty (Atom)