Użyteczność wzorców projektowych
Niniejsza ankieta ma na celu wyznaczenie wartości wskaźników użyteczności wzorców projektowych. Nie chodzi o stwierdzenie, czy dany wzorzec jest dobry, ponieważ jeśli coś jest wzorcem, to musi być poprawne.
Celem jest zebranie subiektywnych opinii na temat m. in. łatwości nauki, eksplozji kodu i rozszerzalności wzorców projektowych.

Ankieta składa się z 7 pytań. Jeśli nie znasz jakiegoś wzorca, pozostaw odpowiedni wiersz pusty.
Na zachętę, spośród osób które wypełnią ankietę wylosuję 3, którym postawię piwo lub kawę poprzez serwis jastawiam.pl

Czas trwania ankiety: 25.04.2012 - 30.06.2012
 
Sign in to Google to save your progress. Learn more
Łatwość nauki
Jak szybko można się wzorca nauczyć? Niektóre wzorce składają się z dwóch, trzech klas, inne z kolei zawierają wiele powiązanych elementów. Spójrz proszę na nie oczami początkującego i zastanów się czy ciężko było Ci się ich nauczyć? (1 - bardzo łatwo, 5 - bardzo ciężko)
1 - bardzo łatwo
2
3
4
5 - bardzo ciężko
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Wydajność
Znając wzorzec, jak szybko jesteś w stanie go zaimplementować? (1 - niska wydajność, 5 - wysoka wydajność)
1 - niska wydajność
2
3
4
5 - wysoka wydajność
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Prawdopodobieństwo popełnienia błędu
Jakie jest ryzyko popełnienia błędu przy implementacji? (1 - bardzo niskie ryzyko, 5 - bardzo wysokie ryzyko)
1 - bardzo niskie
2
3
4
5 - bardzo wysokie
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Satysfakcja
W przypadku wysokiego wskaźnika satysfakcji łatwo rozpoznać przypadek, w którym należy użyć konkretnego wzorca. Prosty przykład: algorytm sortowania przez kopcowanie dla liczb całkowitych i zmiennoprzecinkowych. Algorytm w obu przypadkach jest taki sam, zmianie ulegają jedynie metody porównujące i zamieniające miejscami liczby. Można zastosować w tym przypadku Metodę szablonową. Ale co jeśli w przyszłości trzeba będzie dodać obsługę QuickSort, wykorzystując jednocześnie napisane wcześniej metody porównujące i zamieniające liczby? W takim przypadku idealny byłby wzorzec Strategia. Jak widać, czasami niełatwo wybrać dobry wzorzec. (1 - niska satysfakcja, 5 - wysoka satysfakcja)
1 - mała
2
3
4
5 - duża
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Eksplozja kodu
Np.: czy zastosowanie wzorca wiąże się z powstaniem dużej liczby nowych klas? (1 - brak eksplozji kodu, 5 - duża eksplozja kodu)
1 - brak eksplozji
2
3
4
5 - duża eksplozja
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Rozszerzalność
Czy raz zaimplementowany przypadek użycia wzorca z łatwością podda się rozszerzeniu? Np. Metoda szablonowa i Strategia w przypadku sortowania - patrz: punkt o satysfakcji. (1 - brak rozszerzalności, 5 - pełna swoboda w rozszerzaniu)
1 - brak
2
3
4
5 - pełna swoboda
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
Czytelność kodu/rozwiązania
Nieraz ciężko zrozumieć skomplikowane rozwiązanie (np. posiadające wiele powiązań pomiędzy klasami) nie mając wglądu do diagramu. Może się także zdarzyć, że programista korzystający z powstałego wcześniej rozwiązania, nie będzie potrafił go szybko użyć. Bardzo prosty przykład: programista chcąc skorzystać z klasy będącej singletonem, musi zdawać sobie sprawę z jej singletonowego charakteru, tj. musi wiedzieć, że nie może jej zainicjować, tylko pobrać instancję metodą getInstance lub podobną (problem nie występuje we wzorcu Monostate). (1 - niska czytelność, 5 - wysoka czytelność)
1 - niska
2
3
4
5 - wysoka
Budowniczy
Fabryka abstrakcyjna
Metoda wytwórcza
Multiton
Prototyp
Singleton
Adapter
Dekorator
Fasada
Kompozyt
Most
Pełnomocnik
Pyłek
Interpreter
Iterator
Łańcuch zobowiązań
Mediator
Metoda szablonowa
Monostate
Null object
Obserwator
Odwiedzający
Pamiątka
Polecenie
Stan
Strategia
Clear selection
e-mail
Jeśli chcesz wziąć udział w losowaniu piwa, napisz swój adres e-mail.
Uwagi
Submit
Clear form
Never submit passwords through Google Forms.
This content is neither created nor endorsed by Google. Report Abuse - Terms of Service - Privacy Policy