Temat: Vaadin i doświadczenia
dzięki, generalnie nie podejmuje się tematu GWT vs javascript (Angular, DOJO) raczej interesuje mnie JSF 2 (wykorzystana z pełnym dobrodziejstwem inwentarza czyli wszystkie scopy, ajax itp.) vs wlasnie dlubanie w js'ie. Osobiście mam bardzo pozytywne zdanie w kwestii produktywności JSF 2 ale też nie mam za sobą przekrojowego doświadczenia w tej technologii i dlatego szukam opinii kogoś kto w obydwu technologiach dłubał i jest w stanie porównać i wyłuskać zalety i problemy w obydwu przez konfrontację bo taka wiedza byłaby najcenniejsza.
Ja się dłubię w Java EE i JSF i produktywność masz rację. Tego Vaadina to tylko przeglądałem kiedyś i chyba nie jest to JSF, więc nie moja działka, że tak powiem. Natomiast mogę powiedzieć, że jest pewna szwajcarska firma i ich produkt magnolia-cms i pamiętam, że już ze 2 lata temu mówili, że z UI przechodzą na Vaadina. Do tej pory jednak UI mają stare. Domniemam, że migracja ciężka się jednak okazała ale to nie JSF.
Co do JSF otóż tak się składa, że też tworzę cms'a i na początku używałem RichFaces. Chłopaki jednak ociągali się z przejściem na JSF2, a kilka rzeczy w 2 było mi potrzebnych, więc przeszedłem na młody wtedy projekt PrimeFaces, który to ogarniał dwójkę jsf'a. I tu wyszła potęga JSF'a. Migracja projektu zajęła mi jakiś tydzień. W większości przypadków wystarczyła zmiana nazw tagów, a atrybuty wiadomo jak to w JSF jak atrybut value to value :). Zmiany większe dotyczyły komponentów, które były trochę inne tu i tu. Najlepsze, że zmian w logice aplikacji, beanach praktycznie zero. I tu JSF okazał się zbawienny. Tydzień i jesteś na innej warstwie prezentacji.
Co do JavaScriptu to w istocie, używając komponentów JSF praktycznie zapominasz, że takie coś istnieje. Kto tworzył coś w JSF, wie, że validatory, convertery to w Javie się tworzy lub też korzysta z gotowych dołączonych do specyfikacji JSF. JavaScriptu właściwie używam tylko gdy robię jakiś własny komponent, którego nie ma PrimeFaces, ewentualnie jakieś kluczowe dla mojego cms'a, co nie mogę sobie pozwolić aby gotowiec mnie zawiódł. Co sam zrobię to wiem, że nie zawiedzie :).
Co do samego PrimeFaces. No cóż, powiem szczerze. Zjadł mi wiele czasu i wiele zdrowia, powiem nawet, że większość czasu mi zjadł. Jako, że używam go od prawie samego początku jego istnienia, więc mogę coś powiedzieć i mówię. Tak badziewnego i z tyloma błędami softu to nigdy nie widziałem. Zamiast robić cms'a swojego to większość czasu zajmowało mi jak zrobić by coś zadziałało zgodnie z tym jak powinno zadziałać. Twórca zawsze twierdził, że showcase działa i pytał czy tam też nie działa. Nie zauważał, że w tym demie to są najprostsze przypadki użycia ale gdy np w dialogu umieściłeś panel, w panelu coś tam jeszcze i wtedy zaczynała się zabawa, jak sprawić aby zadziałało ;). I tak upływał mi czas na walce z frameworkiem. Bywały chwile, że chciałem dokonać powtórnej migracji do RichFaces ale PrimeFaces pomimo bugów ma jednak kilka bajerków, które mnie przy nim zatrzymały.
Na szczęście czas mijał i obecna wersja PrimeFaces zdrowia mi już nie zjada. Owszem bugi dalej ma ale drobne nie typu klikasz na filter w tabeli, a ten wywołuje ci wszystkie metody w z listenerów. Takich cyrków była cała masa. Teraz się to poprawiło zdecydowanie na tyle, że mogę polecić ten framework.
Podsumowując JSF ma swoje zalety ma też i wady ale zalet zdecydowanie więcej niż wad. To właściwie tyczy się całej specyfikacji Java EE.