SpringBoota - w czym front polecacie?

SpringBoota - w czym front polecacie?
marta1995
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 5 lat
  • Postów:155
0

Hej

Ruszam domowy projekt (do wyszukiwania partnerow do terningu) tworzony w SpringBoocie.
Zastanawiam sie jaki bibliotekę wykorzystać przy tworzeniu frontonowej części aplikacji.
Nie chce wchodzi w JS, angulara, itp... bardziej wygodnym dla mnie narzędziem sa jsf, reachface.
Macie jakieś przemyślenia jakiego rodzaju narzędzia można wykorzystać?
Mozecie polecić coś łatwego w integracji? Jakies osobiste doswidczenia, przemyślenia?

jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 3 godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4709
0

Ile to ma mieć stronek i przycisków?

Jak przysięgniesz, że:

To wtedy możesz użyć JSF i np, PrimeFaces :-)

W innym przypadku idź w Angulara.

Jest jeszcze Vaadin ze spring bootem - nie polecam, ale chyba nie może być nic gorszego od JSF.


jeden i pół terabajta powinno wystarczyć każdemu
Zobacz pozostałe 10 komentarzy
jarekr000000
Minuta 22 i dalej. Tak to wygląda z takimi platformami....
Koziołek
Dobra, mam. Jednak nie jest to coś co robisz na co dzień. Sorry, ale szukasz dziury w całym. W dodatku mam wrażenie, że chłopaki robią to strasznie na około.
jarekr000000
No nie wiem jak naokoło - to po prostu kolejny framework zrobiony w innych czasach i do innego rodzaju problemów, który ktoś nagina do HTML5, progressive web apps itpp... Da się... pewnie.
Koziołek
Nie nagina. Po prostu konfiguracja domyślna zakłada, że nie potrzebujesz żadnych dodatkowych elementów na stronie. Jeżeli chcesz dodać coś do domyślnego htmla, to musisz sobie tam jakiś kawałek wyrzeźbić i niezależnie czy używasz Spring Boot czy portletów. Równie dobrze można narzekać, że domyślny artefakt mavena nie ma konfiguracji dla Javy 1.8 i trzeba dopisać dwie linijki.
Koziołek
ps. a jak tak bardzo boli, to definiujesz swój archetyp i tyle.
marta1995
  • Rejestracja:ponad 13 lat
  • Ostatnio:ponad 5 lat
  • Postów:155
0

Akurat JSF i Primefaces ogarniam calkiem niezle. Ale patrzac jak ciezko jest zintegrowac springboota z primefaces to zaczynam sie zastanawiac czy czegos nie zrobilam zle i czy rzeczywiscie to nadaje sie do wspolpracy :P
Projekt duzy nie bedzie ogolnie chce go zrobic na szybkosci.
A boje sie wchodzic w Angulara i JS - glownie dlatego ze kazda przegladarka interpretuje to jak chce a dodatkowo niesie to za soba duzy naklad czasowy. W primefaces wszystko mam gotowe :)

insectoman
Więcej problemów będziesz miała z JSF aniżeli z interpretacją JS przez przeglądarki.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 3 godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4709
1

Skoro juz wiesz w czym chcesz pisać - to nie ma sensu pytać.
Btw. z tymi przeglądarkami to muszę trochę skorygować - jest rok 2017. A to co piszesz to było w 2005 - trochę się zmieniło.

przy okazji, jak zawsze, przypominam co pisze grupa dbająca o modę:
https://www.thoughtworks.com/radar/languages-and-frameworks/jsf


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 2x, ostatnio: jarekr000000
M9
  • Rejestracja:około 10 lat
  • Ostatnio:około 6 lat
1

Kiedyś integrowałem Spring Boot i PrimeFaces i mogę się podzielić:
https://bitbucket.org/margor/simple-jsf-primefaces-starter-for-spring-boot

Ogólnie jest to quick and dirty, ale działa. @ViewScoped przeniesiony z JSF Manged Beans. Tu w produkcyjnych rozwiązaniach trzeba uważać na leaki, a ja nie testowałem tego aż tak dokładnie (w szczególności ViewScoped, ale w sieci są dobre implementacje: czy ta jest dobra nie wiem, może jest może cieknie). Było to robione jakiś czas temu więc na pewno można podnieść Sping Boot, PrimeFaces itp. Ale jak chcesz szybą aplikację w JSF to powinno dać radę: ale nie testowałem tego zbyt dokładnie.

Ogólnie aby uruchomić w przeglądarce:
http://localhost:9090/index.jsf

edytowany 1x, ostatnio: margor90
M9
Podniosłem Spring Boota do wersji 1.5.2, PrimeFaces do 6.0 i JSF 2.2 do najnowszej wersji.
R3
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 3 lata
  • Postów:320
0

Angular 2 lub React
To pierwsze jest mocno 'javowe' i na Typescript.

JS i tak Cie dopadnie predzej czy pozniej.

edytowany 1x, ostatnio: rav3n
M9
To już może lepiej poleć JHipster 4: Spring Boot + Angular 2.0. Nie korzystałem, więc nie polecam.
PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 7 lat
  • Postów:172
0
marta1995 napisał(a):

Projekt duzy nie bedzie ogolnie chce go zrobic na szybkosci.

Jak na szybkości to nie Angular :] React jest dosyć prosty, pisze się w nim bardzo przyjemnie, masz spore wsparcie społeczności, więc łatwo będzie znaleźć rozwiązania problemów na jakie sie natkniesz. Do zarządzania stanem albo popularny Redux, albo np. MobX.

marta1995 napisał(a):

A boje sie wchodzic w Angulara i JS - glownie dlatego ze kazda przegladarka interpretuje to jak chce a dodatkowo niesie to za soba duzy naklad czasowy.

Problemy pojawiają się głównie przy wsparciu starszych wersji przeglądarek i wymyślnym projekcie graficznym, gdzie jest sporo dłubaniny w stylach. Ani jedno, ani drugie nie stanowi problemu w domowym projekcie. Jak coś nie zadziała na IE to trudno, korzystając z Babela (do "tłumaczenia" składni ES2015+ na kod zrozumiały dla większości przeglądarek) ciężko będzie Ci napisać coś co nie działa na nowoczesnej przeglądarce "bo tak". UI zależy od Ciebie, więc odpada rzeźbienie w stylach. Jak użyjesz jakiegoś frameworka (np. najpopularniejszego Bootstrapa) i odpowiada Ci domyślna skórka to w ogóle nawet nie tkniesz się CSSów.

edytowany 1x, ostatnio: Pietruch
R3
Angular jest bardziej przyjazny dla javowcow
TD
@rav3n czy ja wiem. Dla mnie react jest o wiele bardziej przejrzysty.
0

Przemyśl to dobrze.
Vaadin jako jedyny framework trzyma całą sesję klienta po stronie serwera. Warto o tym pamiętać gdyż wymaga to sporych zasobów pamięci ram. (Bardzo duże projekty średnio 200-300mb per user Pomniejsze około 50mb). Przy vaadinie nie masz żadnego problemu z tzw 'magią'. Możesz za pomocą 5 linijek przejąć całą sesję innego usera i wyświetlić ją sobie w przeglądarce. Każda zmiana jest automatycznie pushowana do klienta (brak zapytań http. Wszystko idzie po socketach). Sockety webowe masz zaimplementowane na strzała i nawet nie musisz wiedzieć jak działają(vaadin używa ich domyślnie). Każda zmiana w kodzie jest automatycznie wyświetlany u klienta. Nie musisz się martwić DOM-em bo vaadin sam dba o zasięgi iwidoczność po stronie klienta. Z plusów to to że framework nie wymaga wiedzy na temat js, css do podstawowego działania. Podstawowe komponenty wspierają wszystkie przeglądarki. Posiada full dodatków i zasobów które wychodzą każdego dnia. Wiedza z awt może się przydać bo koncepcja działania vaadina jest podobna. Uruchom podstawowy projekt/demo i sama zobaczysz że nie jest to trudne. Z największych plusów to tworzenie widoku za pomocą javy ;]

JSF-y są dla mnie uciążliwe. Kod większych aplikacji wygląda jakby przeżył jesień średniowiecza. Robi się bajzel i można się pogubić. Dodatkowo trzeba pisać cały wygląd ręcznie co nie jest przyjemne bo zazwyczaj po jakimś czasie włącza się 'szał kopiowania' i jest problem. Dodatkowo beany łączone z widokami które też nie są przyjemne i wymagają pisania ton linijek kodów.

Czy angular jest bardziej dla javowców? Chyba nie do końca. Sam wygląd kodu i typizacja za pomocą TypeScripta nie robi z angulara brata javy. Zresztą angular działa po stronie klienta i ciężko pisać w nim logikę biznesową ;] CIężko go załapać na strzała to fakt. Może spowodować ból głowy ale polecam dla wielbiceli frontendu. Pięknie rozwiązane zasięgi stylów. Prostota bindowania. Zachowanie formatowania i spójności kodu. Brak dużych zasobów zewnętrznych komponentów co uważam za minus bo ciężko przyśpieszyć w tym pracę.

Do małego projektu o zasięgu lokalknym w którym nie przewidujesz większej ilości userów niż 100 w jendym czasie to polecam vaadina. Można w nim walnąć w pełni funkconalną stronę z bajerami w naprawdę krótkim czasie. Dla projektów ogarniających większą ilość userów i udostępniających głównie informacje to jsf lub angular.

PS: SpringBoot to ochyda(w mojej opinii). Radzę postawić surowy projekt springowy z obsługą WebModule i odpalić na normalnym serwerze.

M9
Spring boot też można odpalić na normalnym serwerze. Ogólnie framework do frameworka fakt jest trochę groteskowy. Ale działa dość nieźle.
R3
Ja bym tego goscia wyzej nie sluchal, autora posta :p
S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:7 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Ja ostatnio tak się irytuję na JS,a chciałbym sobie zrobić REST API w Springu. I jak żyć. Czym to mogę przetestować :D
Może zrobić front w Androidzie?


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
R3
Przetestować możesz... testami . hiehiehie
S9
No niby tak, ale wolałbym przetestować "zewnętrznie" ;). Zawsze można z postmana skorzystać, ale tak plików się nie sprawdzi :)
R3
możesz też nagrać gatlingiem albo jmeterem czy czymś
R3
Jak uzywasz jax-rs jersey to po prostu z definicji api w zasadzie generujesz klienta restowego. I ja go sobie zazwyczaj uzywalem do testow mimo, ze nie zawsze go wykorzystywalem. A odpowiedzi z serwera mockowalem.
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 3 godziny
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4709
1

Przetestować REST API ?

  • ad hoc: curlem
  • w CI - HttpClientem

jeden i pół terabajta powinno wystarczyć każdemu
marta1995
Do testowania REST'a to tylko i wyłącznie swagger! @jarekr000000 CI? Jakim konkretnie? Bo o ile wiem to teamcity nie ma takiego czegoś... chyba że jenkins i to jakaś nowsza wersja?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.