Streszczenie:
Celem poniższej pracy dyplomowej jest zaprojektowanie logiki i struktur platformy
reklamowej. by następnie, stworzyć działający system reklamowy z możliwością jego
rozwoju w przyszłości. Podczas tworzenia systemu zostały wprowadzone mechanizmy
kontroli jakości oprogramowania poprzez szybkie i powtarzalne testy end to end. Testy
zostały wykonane korzystając z mochaJS która zapewnia łatwe i czytelne API do pisania
asercji dzięki czemu kod jest zwięzły i czytelny. Do testów E2E wykorzystano dodatkowo
webdriverIO który wykonuje testy bezpośrednio w przeglądarce internetowej symulując
działanie użytkownika. Testy tego typu są także bardzo dobrym odzwierciedleniem tego co
aplikacja ma robić oraz jak z niej korzystać ponieważ wizualnie sprawdzają różne ścieżki
interakcji użytkownika. Dodatkowo zostaną poruszone kwestie różnic w projektowaniu baz
danych w technologii SQL i NoSQL. Główny projekt bazy powstał w postaci
znormalizowanej dla SQL a następnie by korzystać z zalet NoSQL implementacja bazy
została zdenormalizowana. Praca porusza kwestie wyboru technologii oraz wady i zalet
wyboru niektórych frameworków programistycznych oraz jak wygląda praca z nimi.
Kod aplikacji jest podzielony na frontend i backend. Sercem aplikacji jest backend, po
jego stronie wykonuje się cała logika biznesowa i wszelkie procesy komunikacji z bazą
danych. Do jego realizacji wykorzystano expressJS wraz mongooseJS do rozmowy z bazą
danych i przyjemniejszą obsługą dzięki wyręczeniu w pisaniu powtarzalnego kodu Frontend
jest medium pozwalającym klientowi i administratorom na interakcję z systemem, do jego
stworzenia wykorzystano vueJS, dzięki Single File Component, struktóra kodu jest
przejrzysta i łatwa do pracy choć nie narzuca użytkownikowi konkretnej struktury plików jak
np. Angular. Na końcu użytkownik jest instruowany jak korzystać z aplikacji oraz jak ją
postawić na serwerze.