Wpis z mikrobloga

Chciałbym zrobić klona Wykopu z działającymi tagami, żeby nauczyć się Springa i podstaw Angulara. Zastanawiam się jak podejść do podziału projektu na części.

1. Backend rozbity na moduły + front, też jako moduł, wszystko spiąć mavenem jako jeden projekt. Chciałem tak zrobić ale nwm czy nie bd musiał za każdym razem robić mvn clean package java -jar ...? Jeśli za każdym razem kiedy chciałbym odpalić apkę miałbym pakować wszystko do pojedynczego jara to chyba trochę by to trawało.

2. Backend i front jako oddzielne projekty. Backend podzielony na moduły, połączone mavenem albo monolit.

Chyba, że macie jakieś lepsze pomysły. Jestem w tym zielony.

Proszę o wyrozumiałość, dopiero się uczę ( ͡° ʖ̯ ͡°)

#spring #java #naukaprogramowania #programowanie
  • 7
via Wykop Mobilny (Android)
  • 1
@Kresse: jak skonfigurujesz jakieś parametry w aplikacji w Angularze jak front będzie w jarze? Przykładowo adres gdzie ma front strzelać do API.

Będziesz musiał to ustawiać przy budowaniu. I jeśli się zmieni coś, to będziesz musiał drugi raz budować.

Bo parametry backendu to bez problemu się odczytają z application.properties obok jara. Z frontem się tak nie da.
@mk321: No będę musiał jeśli chcę to deploynąć na jakimś serwerze. To robi się rzadko i build nie powinien być wtedy problemem. Lokalnie odpalasz dev server przez Angular CLI, Backend osobno i sobie developujesz. Wpakowanie fronta do JARa i serwowanie tego z np. Tomcata to chyba najprostrze rozwiązanie i do takiego projektu powinno być ok.
@TheVinc: jeśli się uczysz dopiero to najpierw bym poszedł w 2, czyli osobne repo od backendu i frontu.

Dodatkowo, jeśli dopiero się uczysz, to zrobiłbym trochę inaczej. Najpierw napisz jakieś MVP, ale tak, żeby używać go tylko przez konsole i np działał tylko w pamięci (bez bazy danych), a dopiero potem dodaj do tego springa/coś do http i jakąś baze danych. Więcej się tak nauczysz ;)

@taktyk-bot
via Android
  • 0
Już od 3 dni, kilka h dziennie piszę ten projekt. Najbardziej męczyłem się ze zrozumieniem działania i implementacją JWT wraz z Spring Security. Dodatkowo zrobiłem mechanikę logowania, rejestracji i potwierdzenia maila tokenem. Nauczyłem się wiele nowych rzeczy o Spring Security, trzeba lecieć dalej. Dzisiaj wieczorem zacznę myśleć nad schematem bazy danych, pewnie bd musiał poczytać trochę o JPA/Hibernate.

Wczoraj odkryłem Swagger'a o wiele przyjemniejszy od Postmana, chociaż ma trochę mniej opcji.
via Wykop Mobilny (Android)
  • 0
@TheVinc: weź sobie jeszcze dodaj SpringBootDevTools zależność do projektu, wtefy wlaczasz przez debbugera, i za każdym razem jak dasz build project (nie run) to sie samo odnowi na froncie bez przeładowania, tylko musisz mieć wtyczke do chrome, live reload