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

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.

1

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

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

0

Wielkie dzięki, Wibowit.

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