Wzorce Projektowe są przyjazną pomocą innych praktyków programowania, często ukazujących problem techniczny z którym jeszcze się nie zetknęliśmy, gdyż stojąc przed wyzwaniem napisania jakiegoś programu nie zawsze wiemy jakie kłody będzie nam to wyzwanie rzucało pod nogi. Czasem dowiadujemy się o tym w sposób najmniej odpowiedni, gdy zgłasza nam błędy osoba, która u nas (profesjonalistów) zamówiła ten program. Dopiero często wtedy okazuje się, że aby usunąć problem musimy przeprojektować większość stworzonej już aplikacji.
Co zatem?
Praktycy tematu wielokrotnie przebrnęli przez większość problemów z którymi się spotkamy na naszej drodze programisty. Dlatego dobrą praktyką jest znać podstawy SOLID i przykłady stosowania Wzorców Projektowych. Dopiero z tą wiedzą powinniśmy się brać za programowanie bardziej złożonych programów.
Jest to więc dobry czas, aby zastanowić się nad naszym projektem zaliczeniowym. Nie ma narzuconego tematu, ale wybrany przez Ciebie temat musi być jasno określony i opisany we wstępie do projektu. Zgłoszony na wstępie i zaakceptowany przez prowadzącego. Praca winna być grupowa, czyli tworzona przez 2-, 3-osobowy zespół programistów (zgłoszony prowadzącemu). Projekt powinien być kilku-aspektowy, czyli nie opierać się na jednym problemie, ale szerzej prezentować Wasze zdolności programistyczne. Artyści wokalni mają “kasety demo”, Wy… wasze programy. Podejdźcie do tego jak do takiej prezentacji demo.
Jak to ma wyglądać?
Program powinien być oparty na dowolnym języku, ale uzgodnionym z prowadzącym (sugeruję Java). Podzielony w dekompozycji funkcjonalnej na klasy i szeroko opisany w sprawozdaniu. Wykorzystane wzorce projektowe winny być w sprawozdaniu jasno wskazane w kodzie, nazwane i wyjaśnione dlaczego właśnie ten, a nie inny wzorzec został tutaj użyty.
Sprawozdaniem jest paczka oprogramowania źródłowego z plikiem opisu użytego języka, środowiska i wdrożenia (jeśli wymaga komponentów nie umieszczonych standardowo w pakiecie środowiska programistycznego) spakowana w pakiet .zip(!). Drugim nie mniej istotnym elementem jest załączone jako drugi plik sprawozdanie w .pdf (poza .zip) z opisem projektu, języka, użytych rozwiązań technologicznych, wskazanie rozwiązań pochodzących ze wzorców projektowych z szerszą dyskusją co to zasadności tego akurat wzorca, wskazaniem rozwiązanych problemów oraz wskazaniem możliwości rozwojowych oprogramowania. Sprawozdanie sporządza każdy z uczestników, a na stronie tytułowej powinni być wymienieni wszyscy jego autorzy. Dyskusja nad projektem i jego zaliczenie odbywają się w ramach zajęć.