Aktywne Wpisy
skrajnie-umiarkowany +814
Zmarł polski żołnierz raniony na granicy.
W tym wątku wrzucamy mordy tych którzy szczuli przeciwko Polsce, przeciwko polskim żołnierzom i SĄ ZA TO WSPÓŁODPOWIEDZIALNI
#bekazlewactwa #wojna #ukraina #polska #rosja
W tym wątku wrzucamy mordy tych którzy szczuli przeciwko Polsce, przeciwko polskim żołnierzom i SĄ ZA TO WSPÓŁODPOWIEDZIALNI
#bekazlewactwa #wojna #ukraina #polska #rosja
![skrajnie-umiarkowany - Zmarł polski żołnierz raniony na granicy.
W tym wątku wrzucam...](https://wykop.pl/cdn/c3201142/b79d8487ed3230abe77a152cbc4e25a38b56027964f211dde9adb1a1aea1a592,w150.jpg)
źródło: 68e9a8fb-2eb1-4878-96ac-642894445cb4
Pobierz
Viesti +64
W sumie to rozczarowałem się tym tagiem. Po napisaniu prostej historii o tym że nie stać mnie na nowy dom i kupię pewnie taki do remontu, oraz że obecne ceny są mocno przeszacowane w stosunku do zarobków normalnej rodziny (jak i że program 0% zatrzyma potencjalne spadki), dowiedziałem się że:
- żeby kupić dom za 700 tys. trzeba zarabiać 30-40 tys. netto miesięcznie,
- rodzina zarabiająca 10 tys. netto żyje na skraju
- żeby kupić dom za 700 tys. trzeba zarabiać 30-40 tys. netto miesięcznie,
- rodzina zarabiająca 10 tys. netto żyje na skraju
Jeszcze niedawno jak pisało się aplikację webową, to robiło się jeden projekt. Backend (np. w #spring lub #aspnet) i w tym samym projekcie robiło się frontend (jakieś Spring MVC z szablonami w JSP lub odpowiednik). Teraz robi się API REST i dzięki temu backend jest bardziej niezależny od frontendu (jakiś #angular #react czy coś innego).
I są dwa podejścia jak można do tego podejść.
1. Robimy dwa oddzielne projekty. Jeden backendowy (np. w Springu) a drugi frontendowy (np. w Angularze). Jak wdrażamy rozwiązanie, to musimy wdrażać obie aplikacje oddzielnie (np. jeden na Tomcata, a drugi na jakiś HTTP Server).
To jest dobre jak jest jedno API i wiele różnych aplikacji frontowych. Ale często tak jest, że jest po prostu jeden projekt i nie jest przewidywana inna aplikacja frontowa. A REST-a i Angulara się używa, bo jest wygodne. Dlatego dla wygody można to zamknąć w jednym projekcie:
2. Robimy jeden projekt backendowy. Piszemy sobie API i udostępniamy dodatkowo jeden publiczny folder. Wrzucamy tam cały folder z plikami frontendu. Jak wdrażamy takie coś, to wdrażamy tylko jedną aplikację (fizycznie są dwie, ale zamknięte w jednej). Jest to dużo wygodniejsze.
Jak używało się zwykłego JavaScriptu i np. starego AngularJS, to wszystko było ok. Teraz jednak używa się Gulpa/Webpacka czy innych builderów (do TypeScripta, Babela, SCSS itd. itd.). W jaki sposób wrzucić taki projekt frontendowy do projektu backendowego? Przypominam, że teraz front to nie tylko zwykłe pliki, które po zmianie wystarczy zapisać - teraz trzeba je jeszcze przekompilować.
Przyjmijmy, że używam Spring (Maven) + Angular 4 (Angular CLI, npm).
- Budować oddzielnie projekt frontowy i tylko skompilowany dist przerzucać do folderu w backendzie? Słabe, bo muszę kompilować dwa projekty (nie wspominając o pewnie problemach z hotswapem).
- Użyć jakiegoś buildera do Springa/Mavena (żeby on mi kompilował zamiast sam przez Angular CLI)? O ile takie coś istnieje. Słabe, bo uzależniam backend od frontendu.
- Coś innego?
Development:
- backend - developujesz i normalnie uruchamiasz.
- frontend - uruchamiasz na developerskim serwerze (praktycznie wszystkie narzędzia powinny coś mieć, Webpack ma na 100%) i developujesz z "hotswapem" (po każdej zmianie jest rebuild cząstkowy i refresh).
Deployment: deployujesz na dwa rożne serwery (dla backendu jakiś Tomcat, dla frontendu coś co serwuje statyczne pliki). W przyszlości pozwoli to np. zrobić wsadzić load balancer, cdny i inne dziwne rzeczy
@elwin013: Tomcat nie jest serwerem tylko kontenerem servletów, nie zapewnia wszystkich funkcjonalności wymaganych do bycia serwerem javy. Serwerem jest np apache geronimo, oracle glassfish