Chcę się nauczyć Javy. Od czego zacząć?

Chcę się nauczyć Javy. Od czego zacząć?
Blackhole
  • Rejestracja:około 19 lat
  • Ostatnio:4 miesiące
  • Postów:81
0

Cześć.
Jestem nowicjuszem, jeśli chodzi o Javę. Chcę poznać ten język, ale mam problem, bo są m.in. wersje EE, SE, FX. Czym się one różnią? Którą najlepiej zacząć poznawać?

Dzięki z góry.


gargantuiczny
  • Rejestracja:prawie 13 lat
  • Ostatnio:prawie 13 lat
1

Różnią się przeznaczeniem. Zacznij od SE skoro zaczynasz.

Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:16 minut
5

Skrótowo:

JavaSE - jest to podstawowa i najszerzej chyba stosowana wersja Javy, zawiera w zasadzie wszystkie niskopoziomowe funkcjonalności jakie platforma Java oferuje.

JavaEE - jest to JavaSE + zbiór bibliotek, które Sun (obecnie Oracle) uznał za przydatne w pisaniu aplikacji klasy enterprise. Oprócz tego, JavaEE wymaga odpowiednich tzw kontenerów aplikacji.

Sporo, jeśli nie większość firm, zamiast JavyEE używa JavySE + innych bibliotek, ewentualnie miesza się np JavęSE + część z bibliotek JavyEE + część bibliotek spoza Sun (Oracle).
Dla przykładu JPA jest częścią standardu JavaEE, ale można spokojnie tego używać osobno w aplikacjach JavaSE, bez używania kompletnych kontenerów JavaEE.

JavaFX - jest to następca Swinga. Swing to biblioteka do tworzenia desktopowego GUI wbudowana w Javę począwszy od wersji 1.2 Javy. Na obecne standardy Swing jest już przestarzały, a JavaFX to nowe podejście do tworzenia desktopowego GUI (i nie tylko desktopowego, bo można robić w tym aplety na strony WWW, a niektórzy mają w planach portowanie JavyFX na smartfony).

JavaFX to technologia dość młoda jeśli weźmiemy pod uwagę wersję 2.0 - z tego powodu jest mało frameworków do niej i są niedojrzałe. Swing jest już dojrzały i są dojrzałe platformy oparte na Swingu - dla przykładu NetBeans Platform. NBP jest produktem darmowym i można oprzeć na nim własną aplikację, przykład: http://jmonkeyengine.com/sdk/ Jeśli nie chcesz wykorzystywać gotowych platform typu NBP (NetBeans Platform) czy Eclipse RCP czy podobnych i chcesz pisać GUI od zera to lepiej pisać w JavieFX, jako że jest aktualnie cały czas rozwijana, lepiej wykorzystuje akcelerację sprzętową, ma lepszą obsługę multimediów i wbudowany silnik HTML + JavaScript, będzie mieć obsługę ekranów dotykowych, itp itd

JavaME jest oparta na bardzo starej wersji JavySE, wobec tego jest toporna w obsłudze. API znacznie się różni od JavySE, mimo iż JavaME ma bardzo skurczoną bibliotekę standardową. Inaczej tworzy się interfejs GUI, standardowo nie ma bezpośredniego dostępu do plików i trzeba korzystać z RecordStore, itp itd Obecnie nie warto inwestować czasu w naukę JavyME, no chyba, że dla bardzo prostych aplikacji. Dla czegoś bardziej skomplikowanego lepiej wykorzystać Androida (bezpośrednio lub poprzez wynalazki typu: http://www.codenameone.com/)

Materiały na start zebrałem w: http://4programmers.net/Forum/Java/199825-materialy_dostepne_w_sieci
Początkującemu polecam NetBeans IDE: http://4programmers.net/Java/Wprowadzenie_do_NetBeans_IDE

Punkt startowy to: "The Java Tutorials".

Lista książek do Javy (opracowana przez Koziołka): http://4programmers.net/Java/Ksi%C4%85%C5%BCki_do_Javy


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
UB
a czy jedynym wyjściem na starsze telefony jest javaME?
Wibowit
bo ja wiem, zależy od telefonu pewnie, np w moim k510i jedyną opcją jest chyba właśnie javame.
UB
hm, fajnie że ta java fx nie jest stara (z 2007), podobnie jak WPF, bo może troche pożyje. a robiłeś jakies fajne bajery w javie fx?
Wibowit
Powoli robię program w ScalaFX (nakładka na JavaFX) i już go zacząłem, ale topornie mi trochę idzie, bo ciągle mam jakieś problemy i nie mam jeszcze doświadczenia z bazami danych.
Blackhole
  • Rejestracja:około 19 lat
  • Ostatnio:4 miesiące
  • Postów:81
0

Wielkie dzięki, Wibowit.


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.