Praca inżynierska
Każdy student kierunku technicznego na zwieńczenie swojej wieloletniej kadencji studenta jest zobligowany do stworzenia pierwszej, większej aplikacji i mini książki, która jest technicznym opisem do niej. Jak to było w moim przypadku? Czy zrobiłem ją “byle jak, aby było” ? … dowiesz się z treści poniżej :)
Studia na Politechnice Białostockiej trwają 3.5 roku (7 sememestrów). Ostatni semestr jest poświęcony na przygotowanie pracy pod wybrany temat (z pośród dostępnych LUB zapropowany własny), za zgodą promotora (osoby, która czuwa nad postępami pracy inżynierskiej). Więkeszośc kolegów i koleżanek pisało pracę osobiście. Dlaczego nie wszyscy? Ponieważ znaleźli się i tacy, którzy wpadli na pomsył, że taką pracę i aplikację po prostu … kupią, zamiast napisać samemu i się czegoś nauczyć. Zdecydowanie nie polecam takego podejścia, moim zdaniem jest to kompletnie niemoralne i oszukiwanie samego siebie. Ja na szczęście zdecydowałem się napisać samemu i co lepsze, postawiłem sobie ambitny cel!
Zdecydowałem się na stworzenie aplikacji webowej (przeglądarkowej). Nie chciałem jednak tak jak większość pisać kolejnego sklepu i po uzgodnieniu z promotorem podjąłem decyzję stworzenia aplikacji pt. “Aplikacja internetowa wspomagająca Organizację Amatorskich Rozgrywek Piłki Nożnej”. Za podstawę wybrałem język Java jednak sama Java to za mało by stworzyć rozbudowaną aplikację, potrzebowałem czegoś więcej. Stwierdziłem, że nauczę się czegoś, z czym nie miałem jeszcze do czynienia, z czymś, co może się przydać w poszukiwaniu pracy! Po research’u wśród ofert pracy na stanowisko Junior Java Developer wiele razy pojawiał się Spring. Dlatego zapoznałem się z informacjami o tej platfomie i jako ambitny cel, zaplanowałem wykorzystanie w swojej pracy inżynierskiej tej technologii, a konkretnie jednej z wielu dostępnych opcji - SpringBoot. Wcześniej miałem do czynienia jedynie z JSP czy JSF, więc uznałem, że to idealny moment by nauczyć się czegoś nowego i od razu praktykować :) W celu złączenia w całość Javy i SpringBoota wykorzystałem narzędzie Maven, odpowiedające za zarządzanie zależnościami i wersjami bibliotek w projekcie. Baza danych postawiona była za pomocą MySQL. Za połączenie i operacje na warstwie bazy danych odpowiadał Hibernate. Za widok, poza HTML i CSS odpowiadał Thymeleaf - jako połączenie warstwy model-widok w projekcie, sterowany za pośrednictwem controlerów. Całość wystawiłem publicznie na darmowym serwerze.
Pamiętam, że byłem bardzo dumny z tej aplikacji. Szczególnie, że starałem się nauczyć możliwie jak najwięcej o technologiach, z których korzystałem, by mieć lepszy start w przyszłą pracę :) Technologie spodobały mi się na tyle, że chciałem z nimi pracować i dalej się rozwijać. Uznałem to za swój mały cel, że chcę być programistą aplikacji webowych ;)