No to zaczynamy!

Wstępny zarys aplikacji już mam, wiem co ma robić, w jaki sposób i dlaczego tak, także wypadałoby zacząć pisać kod! Ale zanim zaczniemy pisać, przydałoby się postawić jakieś środowisko..

Jako, że aplikacja będzie w Javie, do tego będzie używała Angulara i pewnie miliona innych rzeczy, a nie chce tego wszystkiego instalować bezpośrednio na moim kompie zdecydowałem się użyć Vagranta i zaprząc do pomocy jHipstera. To będzie ciekawa mieszanina nowych technologii!

No to teraz chwilka na wyjaśnienia dla osób, które nie miały styczności z Vagrantem i jHipsterem.

Czym jest Vagrant? W sumie to nic innego jak maszyna wirtualna, na której możemy przygotować własne, lub postawić wcześniej przygotowane środowisko programistyczne zawierające aplikacje, których będziemy używać podczas naszej pracy. jHipster z kolei cytując wikipedię jest to darmowy open-sourcowy generator aplikacji używającej AngularJS i frameworka Spring.

No to tyle kwestia wyjaśnienia, teraz do konkretów!

Wybrałem konfigurację Vagranta rekomendowaną do użycia z jHipsterem, co w sumie od rozpoczęcia pracy do odpalenia gotowej maszyny zajęło mi jakieś 2h.

Skonfigurowane środowisko gotowe do tworzenia projektu.

Biorąc pod uwagę, że używam tego po raz pierwszy i ogólnie widziałem to raz na oczy to całkiem niezły wynik. Wiadomo, było by pewnie szybciej, ale wliczam w to też czas, przez który wszystko się ściągało, oraz małe problemy z komputerem. Okazało się po prostu, że SSD jest za mały i trzeba było przerzucić kilka katalogów na inne dyski… zastanawiam się czemu robię to dopiero teraz.

Instalacja jak i odpalenie vagranta ogranicza się do dwóch prostych komend:

Jak już wszystko działa możemy sobie szybko dorzucić IDE, np taką Intellij:

Więcej informacji można znaleźć tutaj:
https://github.com/jhipster/jhipster-devbox

Także wygląda, że chwila moment i mamy środowisko, czyli plus na dziś.

Oczywiście, żeby nie było tak łatwo są i minusy, bo przeglądając kanał #java na slacku oraz rozmawiając z ludźmi zaczynam się zastanawiać czy użycie jHipstera to dobry pomysł.

Z jednej strony pomoże mi to szybko wygenerować działającą aplikację, plus pewnie przyśpieszy development.

Z drugiej, jako, że wszystko robi się automatycznie ciężej będzie mi poznać jak to wszystko działa i działać powinno, plus obawiam się tego, że generator będzie w pewnym momencie zbyt rozbudowany jak na moje możliwości i zatrzymam się w miejscu.

I tutaj pojawia się pierwszy dylemat, nad którym muszę się poważnie zastanowić.. a Ty czytelniku? Może chciałbyś coś doradzić?