W opracowanym modelu wykorzystać wzorce projektowe:metoda fabrykująca, budowniczy, prototyp.
Co to za uczelnia? Będę wiedział na jaką nie iść, jeśli kiedyś zapragnę pogłębić swoją wiedzę na temat informatyki.
Niewiele się nauczysz, jeśli każą ci po prostu zaklepać tak jak ktoś mówi, na dodatek wrzucając tam bezmyślnie wzorce projektowe, które ktoś ci z góry podał.
Więc jest to uwstecznianie pod pozorem nauki.
Wykonać model procesu lepienia bałwana. W tym celu należy dokonać dekompozycji celem wydobycia artefaktów, określić wymagane obiekty i klasy.
Ten fragment zadania ma jeszcze sens. Ja bym to zrobił tak:
Wykonać model procesu lepienia bałwana.
wyobraziłbym sobie, jak się lepi bałwana i podzieliłbym sobie na kroki na kartce, narysowałbym tego bałwanka, i podpisał jakie kroki zrobić.
Zadanie jest dość luźno określone, więc mogą to być kroki:
- weź kulę
- weź drugą kulę
- weź trzecią kulę
- dodaj ozdoby (marchewka itp.).
A możemy uznać, że należy również też zamodelować robienie kuli:
- weź kawałek śniegu
- zacznij toczenie, aż do momentu odpowiedniej wielkości
- jak kula nabierze rozmiaru, to ją weź w ręce
- podejdź do celu, w którym ma być bałwan
- połóż kulę
itp.
można jeszcze bardziej się rozdrobnić. Np. modelowanie ozdób to też może być ileś kroków
- wyjmij guzik z kieszeni
- połóż na pozycji y
- y += odstęp między guzikami
- powtórz, aż skończą ci się guziki
Natomiast potem bym pomyślał jak to zrobić pod kątem kodu. Nie myślałbym w ogóle o wzorcach, tylko o bałwanku. Stworzyłbym strukturę danych reprezentującą bałwanka. Pewnie byłoby to jakieś drzewo obiektów, gdzie Bałwan miałby obiekty-dzieci (kule śniegowe), kule śniegowe miałyby swoje obiekty-dzieci (guziki, marchewka itp.).
I lepienie polegałoby na stworzeniu obiektu (np. kuli, marchewki) oraz na dodaniu tego obiektu do odpowiedniego obiektu-rodzica.
Lepienie kuli mógłbym zamodelować tak, że miałbym obiekt kuli, który w regularnych interwałach czasowych (np. co ułamek sekundy) by się powiększał o jakąś tam wartość. Chociaż tak bardzo szczegółowo to już chyba bym tego nie modelował.
budowniczy
nie widzę tu zastosowania dla budowniczego.
metoda fabrykująca,
Być może, przy tworzeniu obiektów. A być może konstruktor by wystarczył.
prototyp
Może tak, a może metoda fabrykująca by wystarczyła. A może klasa i jej konstruktor?
W każdym razie tych wzorców może bym użył, może nie, ale wydaje mi się, że decydujące byłoby to, w jaki sposób zamodelować samego bałwana (ja postawiłem na hierarchiczne drzewko obiektów, ale pewnie można i inaczej).
No ale co ja tam wiem, pewnie bym 2 dostał, bo zrobiłbym po swojemu, a nie tak jak każe instruktor na studiach czy na innym bootcampie XD