[ Au197/79 @ 08.10.2004. 07:27 ] @
Ima li neko informacija šta je novo u Javi 5.0?

Čitao sam na Sun-ovom sajtu o tome kako je sve cool, kako su uveli neke sintaksne šećerleme, a šta je sa bibliotekama? Ja tim marketing teksovima ne dajem mnogo značaja, javu su ionako previše komercijalizovali i njom se izgleda više bave stručnjaci za marketing nego programeri.

Ima li neki nezavisni i stručni izvor da oceni novu javu, npr. da kaže šta je od onih 10 problema koje je Elliotte Rusty Harold naveo pre 2 godine u http://www.onjava.com/pub/a/onjava/2002/07/31/java3.html u novoj javi ispravljeno.

Znam samo da su Brus Eckel i drugi pobesneli, jer u Sun-u samo rade šminkeraj. Jezik su preuzeli komiteti gde mediokriteti većaju što im je činjet pa se mnogi na njihov račun sprdaju i javu zovu COBOL-om današnjice. Najvažnije im je da se očuva vražja kompatibilnost sa programima pisanim pre skoro 10 godina koje retko ko koristi i koje niko od tad ni ne razvija pa je u dokumentaciji najčešće korištena reć: deprecated. Tako je C++ talac C-a, a Java sebe same!
[ range @ 08.10.2004. 15:16 ] @
5.0 je samo oznaka za 1.5 JRE. Imas na sajtu poboljsanja u odnosu na 1.4, uvedeni su template-s, radi nesto brze nego 1.4, uvedene su neke rezervisane reci (ja sam naleteo samo na enum jer kad radim Enumeration iz vektora UVEK ga nazovem enum, a sada vise to nece da kompajluje)... Verovatno ima jos. A sto se tice smike same jave u tome se potpuno slazem. Jako dugo oni mnogo vise ulazu u marketing nego u pravi razvoj. Recimo ja sam jos pre nekoliko godina video da mozes da kupis koznu jaknu sa znakom "100% java"....
[ aleksandaraleksandar @ 08.10.2004. 15:24 ] @
http://www.google.com/alerts?q=java+5&hl=en
[ range @ 08.10.2004. 16:23 ] @
Citat:
Au197/79:

Ima li neki nezavisni i stručni izvor da oceni novu javu, npr. da kaže šta je od onih 10 problema koje je Elliotte Rusty Harold naveo pre 2 godine u http://www.onjava.com/pub/a/onjava/2002/07/31/java3.html u novoj javi ispravljeno.


Evo sad sam procitao ovaj clanak i NISTA od ovoga nije uradjeno
[ Dragi Tata @ 08.10.2004. 16:43 ] @
Haroldovi predlozi bi bili sjajni za novi Java-like jezik (C## :) ). Međutim, mnogi od njih bi doveli do toga da stare aplikacije ne mogu da se kompajliraju sa novom verzijom Jave, a to bi dovelo do linča. Znate li koliko se pritužbi i dan danas čuje što je C++ standard uveo

Code:
#include <iostream>
using namespace std;

umesto starog
Code:
#include <iostream.h>


To se da ispraviti jednom search-replace operacijom pa se opet ljudi bune, a zamislite šta bi bilo d ase izbace sve Javine deprecated klase/metodi?
[ dejankr @ 11.10.2004. 10:41 ] @
Java 5.0 (1.5) definitvno predstavlja jednu od najznačajnijih verzija Jave (poput Jave 1.2 iliti Java 2).
Da li ima suštinskih promena? U prinicupu ima kada govorimo o načinu programiranja. Tu su anotacije, generički tipovi, enumeracije i slično... Ubeđen sam da će ove novine prilično promeniti način programiranja i da će biti sve više projekata koji će zahtevati Javu 5 (npr. Tomcat 5.5 je verzija koja radi samo na Javi 5). J2EE 5.0 (ili J5EE) će koliko čujem zahtevati JDK 5.0 jer će se ići na korišćenje anotacija umesto XML deploymnet descriptora.

Tačno je da Sun dosta insistria na kompatibilnosti sa ranijim verzijama, međutim ne mislim da je to loše. Što se tiče marketinga on je odavno prisutan u IT industriji mada mislim da Sun i nije najgori primer. Mnogim drugim kompanijama marketinški timovi određuju datume izlaska verzija bez obzira na to što se zna da proizvod tehnički ne zadovoljava sve kriterijume. Sun je s druge strane često odlagao izlazak više verzija Jave i J2EE zbog toga što je smatrao da nisu dovoljno kvalitetne.

Što se tiče Bruce Eckela i ostalih, moraš voditi računa da su oni nezavisni konsultanti koji sebi moraju davati na značaju kako bi se mogli bolje "prodavati". Zato moraju da budu glasni i kada za to ima i kada nema mnogo opravdanja pa ih ne treba uvek uzimati zdravo za gotovo (pogotovo takvo mišljenje imam o Bruce Eckelu). Prosto, glupo je očekivati da se u Javi, u kojoj danas postoji toliko napisanih programa prave veliki rezovi. Svaka novina koja se uvodi mora se razmatrati sa svih mogućih uglova pre nego što se stvarno ubaci u jezik. Da nije tako, Java se ne bi toliko koristila u enterprise sistemima gde je stabilnost i kompatibilnost jezika daleko važnija od toga da li je jezik cool
Dejan
[ filmil @ 11.10.2004. 17:35 ] @
Citat:
sa svih mogućih uglova pre nego što se stvarno ubaci u jezik. Da nije tako, Java se ne bi toliko koristila u enterprise sistemima gde je stabilnost i kompatibilnost jezika daleko važnija od toga da li je jezik cool
.... to verovatno znači i definitivno zbogom kakvoj-takvoj kompatibilnosti sa J2ME.

f
[ dejankr @ 11.10.2004. 18:54 ] @
Citat:
.... to verovatno znači i definitivno zbogom kakvoj-takvoj kompatibilnosti sa J2ME.

Ne bavim se mnogo J2ME ali nisam siguran da sam razumeo komentar...
Govoriš o kompatibilnosti J2SE sa J2ME ili J2ME implementacija međusobno?

Dejan
[ filmil @ 11.10.2004. 22:03 ] @
Citat:
Ne bavim se mnogo J2ME ali nisam siguran da sam razumeo komentar...
Govoriš o kompatibilnosti J2SE sa J2ME ili J2ME implementacija međusobno?
Govorim o „kompatibilnosti“ između J2SE i J2ME specifikacija. Java se reklamira kao jezik koji radi na svemu i svačemu, dok u realnosti dobro radi samo na mainstream, odn. high end sistemima. Jeste, nekakva Java specifikacija radi na mobilnom telefonu, ali kao što će posvedočiti svako ko je ikada s tim radio, nije to to. Znam da PC programere mobilni telefoni i PDA zanimaju ko lanjski sneg, ali činjenica je da se u mobilnim aplikacijama krije (vrlo realan) profit. Problem je što niko još uvek nije napisao nijedan ozbiljan program za PDA ili mobilni.

f
[ range @ 11.10.2004. 22:43 ] @
Pazi, na PDA mozes da poteras full j2SE, sa sve AWT GUI-jem (moze i swing ali se vuce do zla boga). Sa ovim se slazem, da jos nije pisana ozbiljna aplikacija za mobile devices ovde (doduse ja bar nisam cuo, ispravite me ako gresim), ali pitanje je samo vremena kad ce se nesto pojaviti. Mada iskreno mi i nismo neko trziste za takve aplikacije.
[ filmil @ 11.10.2004. 22:56 ] @
Citat:
Pazi, na PDA mozes da poteras full j2SE, sa sve AWT GUI-jem
Pa ne baš. Možeš da poteraš J2SE 1.3, upravo gajim ovde jedan Sharp Zaurus sa Blackdown J2SE. Ali većina novijih programa već je beznadežno na 1.4, tako da od toga slaba vajda. MIDP maltene nije Java, a Personal Profile je odumro koliko vidim.

Kada sam rekao da nema ozbiljnih aplikacija mislio sam generalno.

f
[ caboom @ 11.10.2004. 22:59 ] @
Citat:
filmil:
Znam da PC programere mobilni telefoni i PDA zanimaju ko lanjski sneg, ali činjenica je da se u mobilnim aplikacijama krije (vrlo realan) profit. Problem je što niko još uvek nije napisao nijedan ozbiljan program za PDA ili mobilni.


hmm... sa druge strane to je potencijalno novi .com, ukljucujuci i pratece tehnologije koje postaju popularne.
[ filmil @ 11.10.2004. 23:01 ] @
Citat:
hmm... sa druge strane to je potencijalno novi .com, ukljucujuci i pratece tehnologije koje postaju popularne.
Da, ali je cela stvar još uvek na nivou (da me izvinu maloletni) mrsomuđenja. I da me ne razumete pogrešno, govorim o mestima gde ljudi prilično ozbiljno (treba da) o tome diskutuju.

f
[ caboom @ 12.10.2004. 12:40 ] @
jep... zato ce i biti interesantno na sta ce sve to liciti, posto dosta stvari nazalost i ostane na nivou mrsomudjenja (opet izvinjenje).
[ Ivan Vasić @ 12.10.2004. 13:42 ] @
Negde sam pročitao da se Swing aplikacija može iscrtavati putem OpenGL-a i da se performanse poboljšavaju za čitavih 30% ! Jel probao neko ovo ?

[ Dragan @ 14.10.2004. 20:30 ] @
Trebalo bi da je jedan poznati svetski proizvodjac izbacio J2ME aplikaciju za citanje Word/Excel/PDF dokumenata na mobilnom telefonu...To je jedan krupan projekat ako se uzme u obzir stepen dokumentovanosti office formata i stepen slozenosti PDF-a. Dobar deo ovoga je radjen kod nas :) U stvari hteo sam da se slozim da je J2ME zaista veliki potencijal, kako mobilni telefoni budu dobijali snaznije procesore i vise memorije bice i potreba za vise aplikacija...Jos kada bi imao neki upotrebljiv debug-ing, ali radi se i na tome...
[ filmil @ 14.10.2004. 21:35 ] @
Citat:
Trebalo bi da je jedan poznati svetski proizvodjac izbacio J2ME aplikaciju za citanje Word/Excel/PDF dokumenata
Koji je program u pitanju
Citat:
U stvari hteo sam da se slozim da je J2ME zaista veliki potencijal, kako mobilni telefoni budu dobijali snaznije procesore

IMHO, J2ME je slepo crevo koje će odumreti kada mobilni budu dovoljno jaki da „voze“ ceo J2SE. A ni sad se ne oseća baš najbolje, jer su igre jedino što se za J2ME pravi.

f
[ -zombie- @ 17.10.2004. 02:43 ] @
Citat:
ivan@elfak:
Negde sam pročitao da se Swing aplikacija može iscrtavati putem OpenGL-a i da se performanse poboljšavaju za čitavih 30% ! Jel probao neko ovo ?


mislim da se to ne odnosi na UI kontrole, već na java2D api..

Citat:
range:
Evo sad sam procitao ovaj clanak i NISTA od ovoga nije uradjeno


pa nije baš ništa..

1) primitivni tipovi nisu baš izbačeni, ali auto(un)boxing na dosta mesta briše razliku između njih i objekata.

2) takođe, ubačeni su i type-safe "enum" tipovi umesto int konstanti..

3) char je i dalje velik dva bajta, ali je porađeno na podršci surogate-parova. npr, većina (sve?) metoda koje su do sada prihvatale char-ove, sada imaju i overloadovanu verziju koja prihvata četvorobajtni unikod karakter u obliku int parametra

4) niti i konkurentnost su poboljšani (a da li su baš "popravljeni" još ne znam). ovo uključuje semafore, lock-ove, konkurentne kolekcije i još neke alate i poboljšanja..

5) racionalizovane kolekcije. sa jedne strane preko generiksa, sa druge preko auto(un)boxinga i sa treće preko thread-safe kolekcija..

a verovatno ima i još stvari kojih se ja ili nisam setio, ili još ni ne znam da postoje (lista izmena/dodataka je poduža).

naravno, sve stvari koje bi prekinule nazadnu kompatibilnost nisu ni mogle da budu ugrađene u proizvod koji se zove Java 1.5..

sve u svemu, dosta finih dodataka, naravno ništa revolucionarno, čista evolucija, i to jedan od krupnijih koraka (napred nadamo se.. ;)
[ Au197/79 @ 17.10.2004. 12:29 ] @
Sad mi je na pamet pala ideja kako rešiti protivrečnost između težnje za usavršavanjem jezika i težnje da sav kod koji je do sada napisan ostane u uporebi bez izmena. Prosto tako što bi JVM mogla da izvršava sav kod ikada napisanm ali da JDK ne dozvoljava prevođenje koda koji je za u toj verziji proglašen zastarelim (ili bar ne dozvoliti lako prevođene već uvaliti neki teški switch). Tako bi se stariji .class fajlovi slobodno vrteli na JVM 1.5 ali majčin sin ne bi mogao da koristi Vector klasu u JDK 5! A Sun koliko sam primetio stalno pa i oznakama pokušava da napravi razliku između JVM i JDK-a, a ovo bi im i bila razlika.

Verovatno je moguće napraviti neki alat koji bi pregledao kod i koji bi ga atomatizovano ili poluautomatizovano usklađivao sa najnovijim standardima.

Kad smo kod JDK 5, zanima me klasa Scanner. Kako se pomoću nje učitava čitava linija u konzoli? Izgleda da se podrazumevano kod poziva metode next() dobija string do prvog space znaka a ne do znaka za novi red. Metoda readLine() ne radi ono što bi se po njenom nazivu očekivalo (tako tipično za javu).
[ Ivan Vasić @ 18.10.2004. 14:18 ] @
Citat:
-zombie-:
mislim da se to ne odnosi na UI kontrole, već na java2D api..

Ne znam, nisam probao al evo ti citat iz article-a :
Citat:
Java 5 donosi još jednu extra mogućnost - da se Swing aplikacija pokrene kao OpenGL aplikacija tj. da se iscrtavanje GUI-a u potpunosti prepusti grafičkoj kartici. Dovoljno je da main metodi aplikacije dodate sledeći red:

System.setProperty(sun.java2d.opengl","true");

[ river @ 18.10.2004. 17:39 ] @
Samo da se nadovezem. Swing se i inace iscrtava uz pomoc Java2D.
[ yes @ 23.10.2004. 20:47 ] @
Ovo za OpenGL prvi put cujem.
Ako ovo radi, sledi reversing za licnu upotrebu!!!
Citat:

-zombie-:
mislim da se to ne odnosi na UI kontrole, već na java2D api..

Pa valjda se i java2d i swing iscrtavaju preko Graphics2d?

Koja Graphics2d podklasa se koristi u OpenGL slucaju?
Postoje li detalji implementacije ili bas sve mora da se spijunira?
[ yes @ 25.10.2004. 14:26 ] @
Da. Pogledao sam.

Sve je hard-coded u awt.dll.
Samo su osnovne stvari napravljene u 2d. Linije, povrsine, teksture, transformacije i swap. Sve je native i ne radi na svakoj gl implementaciji.

Ne moze se (isuvise komplikovano) mesati 2d i 3d, za sta sam ja bio zainteresovan.
[ -zombie- @ 26.10.2004. 15:31 ] @
Citat:
yes:
Pa valjda se i java2d i swing iscrtavaju preko Graphics2d?


pa da, ali ne znam da li je to pravilo? da li je to definisano u nekoj specifikaciji?

(odnosno, da li je ostavljena mogućnost da se neka kontrola (pod odgovarajućim uslovima) renderuje nekim native widgetom na nekoj platformi?)
[ perun @ 30.10.2004. 08:47 ] @

Ne znam da li ce ikoga zanimati, ali bio sam na lansiranju J2SE 1.5 iliti Java 1.5 ili Java 5 kako vec hocete.

Isto se odrzavalo u muzeju racunarske istorije u Mountain View, Bay, CA.

Ono sto je mene zacudilo je bila cinjenica da je na lansiranju bilo manje ljudi nego na mesecnom sastanku Java korisnicke grupe Silikonske Doline, gde retko kada svi uvek prisustvuju predavanju.

Toliko ljudi nije ni doslo da sam na odlasku dobio dva poklon paketa, mada se SUN bas i nije pretrgao (majica, privezak sa maskotom Tiger, zastitni znak J2SE 1.5 i nesto propagande, ukljucujuci i SUN Java Desktop demo CD, ali CDa sa distribucijoim ni traga, ni glasa).

Da, ni samo lansiranje nije bilo bogzna sta. Svakako je zadnje lansiranje iPod U2 bilo sjajnije ;) Vise su se trudili da reklamiraju SUN Java Desktop (za neupucene SUN distribucija).

Bilo je nesto dzabe knjiga, ali to dusmani pokupise dok sam ja stigao.

Ali, zasto vas sa ovim davim? Ne zelim da imate sliku propasti SUNa (sto jos doduse nije nemoguce) i Jave (sto je vec nemoguce za sada).

Java danas jednostavno nije izazivac. Ona je sampion i jezik izbora. Iskreno,
vecina firmi u produkciji nema sanse da upotrebi Javu 1.5. Dosta njih je jos na
1.3.

U zadnjih nekoliko meseci sam bio sto podrska, sto glavni developer na projektu razvoja Java LiveUpdate klijenta za jednu veliku softversku kucu u SAD. Da ne bude zabune, ja i zivim u SAD.

Glavni zahtev na projektu je bio da glavne osobine programa rade i sa Java 1.1, samo zato sto postoji korisnicka baza koja ga i dalje koristi. Na primer IBM Notes server.

Tako da je potrebno da iz tog ugla sagledate Javu. Ona je zreo jezik i nema sansi da se dese tako radikalne izmene kao raskid sa prethodnim verzijama. Nije da toga donekle nije bilo, samo pogledajte podrsku za SSL u 1.3 i 1.4 zbog cega je jako tesko imati proizvod koji podrzava SSL i radi i sa VM 1.3 i 1.4.

Da mesta za unapredjenja itekako ima susta je istina. Zeleo bih konacno
da vidim brz GUI na Javi. Sada sam radio na izradi dekstop aplikacije za trziste prvi put (do sada sam obicno radio enterprise aplikacije, mahom web ili servere) i mada sam GUI nije toliko spor na nominalnoj masini, treba mu vecnost da se startuje. Mada je priznajem startovanje pod Linuxom brze nego pod Windows-ima.

Ono sto je mnogo vaznije od cele price sa unapredjenjima je cinjenica da neko ipak ima kontrolu nad celim procesom, Java nije open source tako da
(barem za sada) ne moze doci do razilazenja VM, onako kako se to desilo sa Linux distribucijama.

Tako da danas bas nije jednostavno izbaciti komercijalni proizvod na Linuxu,
vec ako zelis da ga podrzis onda je za tu i tu distribuciju Linuxa. Skoro sam prosao kroz tu tuznu pricu, tako da mi je to jos sveze, izvinjavam se na digresiji.

[ yes @ 05.11.2004. 23:31 ] @
Sve to stoji, nego sto se tice startovanja...
awt i swing i nisu problem nego inicijalizacija DnD-a traje predugo!!!
Kad se DnD ne koristi startup je perfektno brz.