Java desktop - trup czy nie?

Java desktop - trup czy nie?
Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

Witam!

Pytanie mniej więcej jak w temacie. Zawsze chciałem programować. Javę wybrałem z różnych względów, głównie matura za rok (technik informatyk). Przed tym wyborem skakałem między Pythonem (Codeacademy i internet w stylu *Automate the boring stuff *), C# i C++, a decyzja o zdawaniu matury z informatyki pozwoliła mi wreszcie się porządnie zmotywować do nauki. Korzystam z Java, Kompendium Programisty, wydanie IX Herberta Schildta, Git'a znam, na BitBuckecie już coś siedzi, podstawy Linucha opanowane, oczywiście mnóstwo nauki przede mną.

I teraz moje pytanie - czy (komercyjnie oczywiście) tworzy się apki desktopowe? Java głównie jest używana w usługach internetowych, a sam dotąd nie spotkałem się z jakimś programem stworzonym tylko i wyłącznie w Javie (wiem, że większość projektów wykorzystuje nawet do kilku języków, lecz i tak zapytam). Znacie jakieś? Oczywiście o gry nawet nie pytam, ale zwykłe programy użytkowe?

Nie ukrywam, że nie ciągnie mnie do tworzenia apletów i wolałbym trzymać się desktopu (ostatnio wciąga mnie trochę kryptografia) i dlatego pytam. Zapewne będę musiał się przerzucić na C# (ma trochę podobieństw, prawda?) albo coś innego. Od biedy pozostaje tworzenie oprogramowania na smartfony. Javy oczywiście nie porzucam, obowiązkowo trzeba mieć solidne podstawy przynajmniej w jednym języku. Co mi jednak doradzicie, co na ten temat sądzicie?

Oto co znalazłem na forum:
http://4programmers.net/Forum/Edukacja/272171-java_se_i_co_teraz
http://4programmers.net/Forum/Java/268483-aplikacje_deskoptowe_a_webowka
http://4programmers.net/Forum/Kariera/230215-programowanie_webowe_czy_deskoptowe
http://4programmers.net/Forum/Java/268234-java_-_za_co_sie_teraz_zabrac_co_przerobic


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
edytowany 1x, ostatnio: Burdzi0
0

Programowanie na desktopy jest ogolnie teraz duzo mniej popularne.

Ale sa firmy gdzie masz klienta desktopowego w java fx oraz JEE na backendzie.

0

I nikt juz nie robi apletow...

Sporo aplikacji wyglada teraz tak :
Backend: JEE\Spring
Front: html\css\javascript

katelx
  • Rejestracja:około 10 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Hong Kong
0

trup, co nie zmienia faktu ze da sie znalezc prace (glownie dev support).

Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

To co polecicie na przyszłość? C#? Powrót do C++? Python (chociaż ten chyba najmniej nadaje się na desktop) ?


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
0

Backend Java -JEE / Spring.
Pracy mnostwo.

katelx
  • Rejestracja:około 10 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Hong Kong
0

sprobuj paru rzeczy i zobacz co ci sie najbardziej podoba, masz raczej sporo czasu to wykorzystaj go na napisanie paru appek i zobaczysz co jest fajne a co nie. ja lubie c# pod desktop ale tobie moze sie spodobac co innego

Burdzi0
A mogłabyś sprecyzować co masz na myśli mówiąc to "co innego"? :) bo ostatnio szukam i coś znaleźć nie mogę
I1
  • Rejestracja:około 16 lat
  • Ostatnio:około 13 godzin
0
Burdzi0 napisał(a):

I teraz moje pytanie - czy (komercyjnie oczywiście) tworzy się apki desktopowe?

Oczywiście, że się tworzy, ale w Polsce to jest raczej mniejszość. W Polsce komercyjne apki desktopowe to chyba głównie programy antywirusowe i gry. Białorusini napisali fajną grę desktopową - World of Tanks, która jest dość popularną aplikacją desktopową. W Polsce tworzony jest Wiedźmin. Myślę, że tego typu aplikacje powstają w C/C++. Ale jeśli szukasz pracy w biznesie w Polsce, to tam dominują aplikacje webowe. Zdarzają się też desktopowe, ale one są tworzone głównie w WPF'ie. Czasem w Javie, ale wtedy w JavieFX.

Nie ukrywam, że nie ciągnie mnie do tworzenia apletów

To bardzo dobrze bo w epoce Canvas, HTML5 i CSS3, aplety i Flash są już przeszłością.
Na smartfonach Java jest bardzo popularna.
Wydaje mi się, że Java jest bardzo popularna w Niemczech i możliwe, że tam jest więcej pracy w JavaFX niż w Polsce, ale pewności nie mam.

edytowany 1x, ostatnio: Igor1981
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8414
0

Co do apek desktopowych to można je robić również w JavaScript.
Nie mam pojęcia czy jest realne zapotrzebowanie od strony zatrudnienia, ale od strony technicznej - można. I istnieją na świecie firmy, które zarabiają na tego rodzaju aplikacjach JavaScriptowych na desktop (choćby Spotify czy Slack), więc widocznie ma to jakąś przyszłość (pytanie tylko ile jest takich firm, które robią podobne rzeczy?).


edytowany 1x, ostatnio: LukeJL
0

Ogólny trend jest, żeby co się da robić webowo.

0
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8414
0

Bo web się chyba najszybciej rozwija ze wszystkich platform.
Pełno nowych bibliotek co chwila, nowych widżetów, nowych frameworków, nowych haków pozwalających na odpalanie JS praktycznie wszędzie, nawet poza przeglądarką.


Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

Czyli generalnie nie dostosowując się do weba czeka mnie trudny żywot? No to raczej słabo... JavaScript też, nie ukrywam, nie należy do moich ulubieńców... Czyli z tego co piszecie to tylko C# na Wigrozę?


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
0

Wielu tutaj pracuje w Javie na backendzie i ma się dobrze.

Ogólnie JVM ftw.

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

. JavaScript też, nie ukrywam, nie należy do moich ulubieńców...

A co pisałeś w JS?
pisałeś w JS natywnie czy jakies libki?


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

Za każdym razem było ta jakaś mała rzecz fo strony internetowej, ale jakoś nigdy mi JS nie podszedł. Może to dlatego, że nie przepadam za HTMLem i generalnie jako takim front-endem. Myślałem też o assemblerze, ale to raczej nietrafiony pomysł (chyba, że gdzieś jako spec od malware i pochodnych)


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
Zobacz pozostały 1 komentarz
Burdzi0
@Igor1981 Większe "doświadczenie" mam w Swingu, ale jest jak najbardziej ok
I1
Ale Swing i AWT są już stare. Następcą AWT był Swing, a następcą Swinga jest JavaFX. W JavieFX interfejs tworzy się podobnie jak stronę internetową w HTMLu. W JavieFX do tworzenia interfejsu służy FXML, który jest typem XMLa, tak jak XHTML jest typem XMLa. A HTMLa łatwo przekonwertować na XHTMLa.
H1
Dużo przyjemniejsza ta javafx ogolnie.
Burdzi0
Wiem, że to już przeżytki i muszę się wziąć porządnie wreszcie za JFX. Co nie zmienia faktu, że nie chcę pracować przy tworzeniu stron www (nawet w całkiem przyjemnym JavaFX). Nie jara mnie to, jakoś nie moja broszka... jakieś inne pomysły? :)
H1
JavaFX to desktop... Mam wrażenie, że nieco nie wiesz o czym mowa. Backend javowy JEE/Spring do tych "stronek" to poważny soft. Tylko klientem jest przeglądarka ale rownie dobrze mógłby być jakis esktopowy klient. Wydawalo mi sie, ze frontend Cie za bardzo nie interesuje. Dlatego powinienes sprawdzic kierunek Spring/JEE (backend) czy Ci odpowiada. Siedzą na tym wielkie systemy. Chociażby Allegro.
I1
  • Rejestracja:około 16 lat
  • Ostatnio:około 13 godzin
1
Burdzi0 napisał(a):

Czyli generalnie nie dostosowując się do weba czeka mnie trudny żywot? No to raczej słabo... JavaScript też, nie ukrywam, nie należy do moich ulubieńców... Czyli z tego co piszecie to tylko C# na Wigrozę?

To zależy jak i gdzie chcesz pracować. Jeśli planujesz własny biznes to możesz robić aplikacje desktopowe. Skype jest aplikacją desktopową i jego twórca ma się całkiem dobrze. Twórcy World of Tanks i innych gier też zarabiają całkiem niezłą kasę. Jak ktoś ma dobry pomysł, umiejętności i wystarczająco samozaparcia, to może osiągnąć sukces programując nawet na desktopie. Możesz zrobić jakąś aplikacje do odtwarzania muzyki, filmów, itp. i zbierać pieniądze od darczyńców z Ameryki.
Jeśli jednak chcesz pracować u kogoś, to najszybciej znajdziesz pracę albo w webie, albo w aplikacjach mobilnych. Wśród aplikacji mobilnych, najbardziej popularne są aplikacje na smartfony, ale co będzie w przyszłości tego nikt nie wie. 15 lat temu ciężko było znaleźć pracę programistom programującym na smartfony. Co będzie za 15 lat? Pewnie będą poszukiwani programiści programujący aplikacje na lodówki, odkurzacze, pralki, itp. Takie aplikacje pewnie będą łączyły się w jakiś sposób z internetem.

Burdzi0
Ciekawe i cenne spostrzeżenie :)
H1
  • Rejestracja:około 10 lat
  • Ostatnio:ponad 6 lat
  • Postów:185
1
Burdzi0 napisał(a):

Za każdym razem było ta jakaś mała rzecz fo strony internetowej, ale jakoś nigdy mi JS nie podszedł. Może to dlatego, że nie przepadam za HTMLem i generalnie jako takim front-endem. Myślałem też o assemblerze, ale to raczej nietrafiony pomysł (chyba, że gdzieś jako spec od malware i pochodnych)

to idz w javowy.. backend?

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Ja kiedyś też nie przepadałem za front-endem
Ale później poznałem Bootstrap i AngularJS :)
AngularJS + Spring Framework mój duet marzeń :)


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
Zobacz pozostałe 2 komentarze
S9
Reacta bede miał w nowej pracy :P
H1
@spartanPAGE a co niby? node.js ? asp/net ? ;)
spartanPAGE
@H1ghlander angularJS to przeżytek ;P o angularze2 ciężko to powiedzieć
spartanPAGE
@H1ghlander asp/net to imho ta sama kategoria co javowe kobyły. node.js łatwo przypadkowo ubić. Czemu by nie phoenix z elixirem? ;)
H1
@spartanPAGE piłem do tego, że świat js'a co chwila jarą się czymś nowym odsyłając resztę do lamusa ;) pheonixa na elixirze nie znam. Może kiedyś looknę :)
Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

Wracając jednak do tematu: czy jest jakiś język aktualnie używany do desktopu (poza JS)?
Jeśli tak to jaki i ewentualne wady/zalety?


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 4 godziny
  • Lokalizacja:Wrocław
3

C#, ++C, Java, Delphi.
JS w desktopie to bajki dla niegrzecznych dzieci.

spartanPAGE
Czyli delphi i C++ to dla tych upartych :P
somekind
++C, nie C++. Postinkrementacja jest niewydajna.
caer
++C sugeruje że coś się faktycznie w tym języku zmieniło na lepsze względem C ;)
0

A co Ty w ogole chcesz pisac w tym desktopie?

Burdzi0
  • Rejestracja:prawie 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Futurama
  • Postów:887
0

Apki użytkowe, ciekawi mnie też ostatnio szyfrowanie, może warto by pójść w tym kierunku. Chodziło mi głównie o odpowiedź czy Java nadaje się do desktopu i czy rzeczywiście się jej używa, więc ostatnie pytanie należy traktować jako "dopełnienie" tematu :)


Bite my shiny metal ass!
Life throws you an error code like that, you don't have the luxury of a ZnVja2luZw== pop-up explanation *Robię projekty studenckie, pisz priv ;) *
1

A to webowe aplikacje nie sa uzytkowe?

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Po 1 mało się w ogóle desktopu używa


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
4

Desktop umiera, powiedział developer siedzący przed desktopową przeglądarką, z odpalonym desktopowym odtwarzaczem muzyki, w tle pewnie ze 2 desktopowe komunikatory, a codziennie 8h w pracy spędza przed IDE, które też jest aplikacją desktopową ;]


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
caer
a desktopowy odtwarzacz porno? nie możesz zapominać o takich ważnych rzeczach
1

Wiadomo, ze desktop nie umrze.
Ale widac, ze co sie da to probuje sie robic w przegladarce.

ML
  • Rejestracja:ponad 19 lat
  • Ostatnio:około 17 godzin
  • Postów:857
1

Zdejmijcie te klapki z oczu, to że w biznesie liczy się web nie oznacza że niczego innego się już nie tworzy. Tak jak napisał @Shalom, patrzycie teraz na aplikacje desktopowe ale nieeee, desktop umiera.

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Desktop umiera, powiedział developer siedzący przed desktopową przeglądarką, z odpalonym desktopowym odtwarzaczem muzyki, w tle pewnie ze 2 desktopowe komunikatory, a codziennie 8h w pracy spędza przed IDE, które też jest aplikacją desktopową ;]

I teraz policz sobie z ilu aplikacji przeglądarkowych korzystasz
A IDE czy odtwarzaczy muzycznych co roku nowych nie robią, takie rzeczy to głównie utrzymaniówka


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
edytowany 1x, ostatnio: scibi92
0

Android to w dużej mierze desktopowe appki :P

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)