Desktop + swing - propozycja pracy

0

Cześć. Mam ciekawą propozycje pracy aczkolwiek projekt wykorzystuje Swinga jako że to aplikacje desktopowa. Jakie są wasze odczucia by w obecnych czasach wchodzic w coś takiego?

7

Takie, że w JAVA dla aplikacji desktop póki co Swing nie ma żadnej rozsądnej alternatywy i wciąż pozostaje sensownym wyborem.
Wiedzą o tym najlepsi np. w JetBrains i dlatego obecnie najpopularniejsze na świecie IDE napisane jest właśnie z wykorzystaniem Swing.
Oczywiście większość się z Swing śmieje ale jak zapytać co zamiast to znikają jak we mgle :-)
Swing jest wciąż i to bardzo dobrze wspierany przez Intellij, Netbeans, Eclipce.

0

Tak z ciekawości- co z JavaFX? Parę lat temu, kiedy uczyłem się Javy*, to właśnie JavaFX wskazywano jako następcę Swinga. Technologia ucichła?

** Później zmądrzałem

6

a czemu nie JavaFX? — Productionserver 26 minut temu

Piękny kwiat, który nie zdarzył rozwinąć korzenia.

Opinia subiektywna nie-decydenta, nie-korpoludka
Środowisko desktopowe o znacznie większym powerze wizualnym *) ... wydawać by się mogło plus, prawda?
Ale czy korposoft albo rządówka potrzebuje bajerów wizualnych?

W opinii szaraczka znacznie trudniejsze do bezstresowego używania (rozbite na kod Javy i XML, błędy mogą być w obu), mniemam ze swojej perspektwy, mniej produktywne w ilosci linii/ osobodzień itd ...

Przed ogólnym powolnym zanikiem desktopu nie zdążyło sie zakorzenić. Nie powstały hordy programistów FX-owych, narzędzi pomocniczych itd ...
Czy powstały wysokoproduktywne IDE do FX-a? "Najlepsze IDE javowskiego świata" czyli Idea podobno nie rzuca w tym względzie na kolana - czy są jakieś zamknięte, nawet nie wiem.

A do stukania widgetów SWINGa jest wiele uznanych IDE/edytorów, z Netbeans na czele, oraz zamknięte, nawet krótko romansował Borland / Embecadero

*) co nie znaczy, ze w SWINGU - jak ktoś naprawdę potrzebuje - nie da się skorzystać / napisać / kupić hiper-komponentu np do jakis dashboardów, obrazowania specyficznej dziedziny itd ...

0

A odczucia odnośnie samego desktopa? Czy nie skończy się na byciu w tyle z innymi programistami? Zawsze wydawało mi się że web to przyszłość...

9

Swing to tylko UI. Jeśli architektura aplikacji jest zrobiona prawidłowo, i logika aplikacji jest odseparowana od interfejsu użytkownika, to nie powinno być problemu przy zmianie swinga na JavęFX.

7
Runnable napisał(a):

A odczucia odnośnie samego desktopa? Czy nie skończy się na byciu w tyle z innymi programistami? Zawsze wydawało mi się że web to przyszłość...

Jeśli brać pod uwagę fakt, że w przyrodzie wygrywa zawsze to co ma mniejsze zapotrzebowanie energetyczne to tworzenie aplikacji desktop wciąż ma przyszłość. Moim zdaniem robienie wszystkiego jako WEB to chwilowa moda. Pociągająca jest pewna ogólność tego typu rozwiązań ale praktyka pokazuje, że nie zawsze jest to potrzebne a coraz częściej okazuje się zbyt kosztowne.

Warto spojrzeć na aplikacje mobilne... w większości bliżej im do architektury desktopowej z komunikacją z serwerem niż do typowych aplikacji WEB.

Zupełnie nie rozumiem pisania aplikacji webowej do zarządzania firmą w firmie, w której każdy musi mieć komputer z Windows. To tylko bezmyślne zwiększanie kosztów wytworzenia aplikacji.

1
katakrowa napisał(a):

Moim zdaniem robienie wszystkiego jako WEB to chwilowa moda.

No ta moda to trwa już tak z 15 lat.

Warto spojrzeć na aplikacje mobilne... w większości bliżej im do architektury desktopowej z komunikacją z serwerem niż do typowych aplikacji WEB.

Był boom na aplikacje mobilne, teraz zostało ich na rynku niewiele. W dodatku spora część tych aplikacji to właściwie przeglądarka otwierająca stronę internetową.

Zupełnie nie rozumiem pisania aplikacji webowej do zarządzania firmą w firmie, w której każdy musi mieć komputer z Windows. To tylko bezmyślne zwiększanie kosztów wytworzenia aplikacji.

Trochę brak sensownych rozwiązań do tworzenia aplikacji desktopowych. W przypadku Java masz Swinga i JavęFX. Każdy z tych stosów technologicznych delikatnie mówiąc ma daleko do ideału. To co teraz nadaje się do nowych rzeczy, to .NET i różnego rodzaju "zapakujmy HTML w WebView".
W aplikacjach typu ERP, oprócz samego kosztu wytworzenia ma znaczenie również koszt utrzymania, a tutaj wchodzą w grę takie czynniki jak łatwość instalacji i aktualizacji, dużo luźniejsze wymagania sprzętowe, dostępność programistów z jakimś tam zestawem umiejętności. Dla aplikacji komercyjnych, możliwość oferowania ich w modelu SaaS też ma spore znaczenie. Dla klienta, sprowadzenie wdrożenia systemu do "podpinamy kartę kredytową, wybieramy rodzaj subskrypcji, integrujemy z naszym AD, done" ma sporą wartość.

Zresztą spójrz na rodzaj ewolucję narzędzi: Moim ideałem tworzenia UI wciąż pozostaje Delphi. Przeciągam guziki na formatkę, spinam z logiką jakimś tam MVC, czy MVVM. Obecnie nie wiem o żadnej sensownej technologii, która wspierałaby takie podejście, a te stare właściwie dogorywają po kątach.

2

Takie, że w JAVA dla aplikacji desktop póki co Swing nie ma żadnej rozsądnej alternatywy i wciąż pozostaje sensownym wyborem.
Wiedzą o tym najlepsi np. w JetBrains i dlatego obecnie najpopularniejsze na świecie IDE napisane jest właśnie z wykorzystaniem Swing.

Google mówią że IntelliJ został wypuszczony w 2001 roku, zaś JavaFX została wypuszczona w 2008. Trudno żeby JetBrains korzystał z czego co jeszcze nie istniało. Nowe edytory działają na silniku IJ, więc też korzystają ze Swinga.

Swing to tylko UI. Jeśli architektura aplikacji jest zrobiona prawidłowo, i logika aplikacji jest odseparowana od interfejsu użytkownika, to nie powinno być problemu przy zmianie swinga na JavęFX.

Oczywiście teoretycznie masz rację. W praktyce, jak aplikacja się rozrośnie i będą nawet tysiące lini kodu od obsługi UI to nie będzie się to raczej opłacać, przy czym nie neguje oczywiście tu potrzeby sepearacji tej logiki.

Jeśli brać pod uwagę fakt, że w przyrodzie wygrywa zawsze to co ma mniejsze zapotrzebowanie energetyczne to tworzenie aplikacji desktop wciąż ma przyszłość. Moim zdaniem robienie wszystkiego jako WEB to chwilowa moda. Pociągająca jest pewna ogólność tego typu rozwiązań ale praktyka pokazuje, że nie zawsze jest to potrzebne a coraz częściej okazuje się zbyt kosztowne.

Warto spojrzeć na aplikacje mobilne... w większości bliżej im do architektury desktopowej z komunikacją z serwerem niż do typowych aplikacji WEB.

Zupełnie nie rozumiem pisania aplikacji webowej do zarządzania firmą w firmie, w której każdy musi mieć komputer z Windows. To tylko bezmyślne zwiększanie kosztów wytworzenia aplikacji.

Napisałem o tym zupełnie inny temat żeby nie mieszać tutaj:
Web vs desktop
@Runnable @katakrowa polecam zajrzeć.

6

GUI w mojej pierwszej pracy właśnie był w Swingu. Moim zdaniem, jeśli jesteś początkujący, to nic lepszego nie może Ci się trafić, ponieważ będziesz miał do czynienia z problemami związanymi z wielowątkowością. Niestety wiedza o pracy z wątkami pomału zamiera w branży, a moim zdaniem zawsze warto to wiedzieć. ;)

2

Będę szczery - ludzie się za bardzo fiksują na technologie w swojej pierwszej pracy. Na poziom juniora/mida frameworki typu Spring, REST czy cokolwiek innego w dzisiejszych czasach można ogarnąć w kilka miesięcy samemu, jeśli tylko rozumie się podstawy.

Wszystko zależy tutaj od projektu. Jeśli to jest aplikacja offline to faktycznie może być dno i metr mułu. Natomiast mam jakieś takie wrażenie, że ta aplikacja pewnie łączy się z zewnętrznymi serwisami i/lub bazą danych więc pewnie pod spodem jakieś ORMy czy obsługa RESTów jest. A powiedzmy sobie szczerze - jakieś 50% webdevu sprowadza się do ORMów czy RESTów.

1

Update ode mnie: skuszony pewną
ciekawością związana z wielowątkowością, byłem skłonny przyjąć ofertę. Jednak webowka przebiła i jako, że rodzinę trzeba utrzymać, a mam mind f*ck odnośnie Swinga, to wybrałem webowke. Be that as it may, dziękuję za opinie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1