Natrag   Forum.hr > Informatička tehnologija > Za napredne korisnike > Programiranje

Programiranje Za programere i one koji to žele postati ...

Odgovor
 
Tematski alati Opcije prikaza
Old 06.10.2012., 13:47   #1
Budućnost Jave

Dakle kao student već neko vrijeme radim sa Javinim tehnologijama i nisam siguran koliko je to isplativo ulaganje. Čini mi se da Java polako posustaje i ne može pratit .NET tempo.

Desktop
Swing je mrtav, čak ga ni NetBeans više ne podržava. Nisam siguran postoji li skin za Win8 sučelje. Uglavnom ima još frameworka ali ne pada mi na pamet ni jedna ozbiljna Desktop aplikacija naporavljena u Javi (osim IDE-a). Uglavnom na windowsima pored .NET-a nema što tražiti.

RIA
Siverlight vs JavaFX vs Flash
I tu mi se čini da Java loše stoji. Mislim da je upitna budućnost tih tehnologija i koliko se isplati ulagati u njih u odnostu na HTML 5. Ako sam dobro shvatio Win 8 desktop aplikacije će se programirat u JavaScriptu (tako je Microsoft zajebao i svoje developere). Uglavnom teško bi se sad odlučio za Javu. Evo jedan demo za one koji nisu upoznati

Server Side
Nisam nikad koristio ASP.NET. Servlet je odličan API ali čini mi se da se sve manje i manje koristi. Puno je lakše naći hosting za ASP nego za Servlet. PHP je sve popularniji. Opet, teško se odlučit za Javu iako mislim da je ovo Javina najjača strana.

Mobilne aplikacije
Androidu zasad dobro ide. Tu Java dobro stoji.

Jezik
C# je postao napredniji jezik. Prema svemu sudeći Java 8 opet neće donjeti ništa revolucionarno.

Kod Jave mi se sviđa bezbroj odličnih frameworka kao što su Spring, Hibernate, Vaadin, GWT (koji je postao open source i sve mi se čini da je google digao ruke od njega). Java je enterprise, bila i ostala. Samo se postavlja pitanje koliko je meni kao studentu isplativo ulagati u Javu u smislu tržišta rada. Što je uopće isplativo učiti? HTML 5?
live_for_this is offline  
Odgovori s citatom
Old 06.10.2012., 14:24   #2
jezik ko jezik, kerovi laju karavane prolazi.

briljira na serverskoj strani i za raznorazne integracije, dušu dalo.
isprobano, dokazano u praksi.

jednom san na njuzama pročito super izjavu "il nema struje ili nije postavljen CLASSPATH"
grogo bolger is offline  
Odgovori s citatom
Old 08.10.2012., 14:39   #3
NetBeans ne podržava Swing? Servleti su odličan api koji se sve manje koristi?

Koliko ja zna NetBeansi nisu ništa nego isključivo swing. I servlet api je kompliciran do bola, ali koristi se toliko da nema weba bez servleta. Jedini alat za koji sam čuo da ne koristi servlete je Play.

Kakogod, Java ima više manje sigurnu budućnost sljedećih par dekada. Odavno je prošla "too big to fail" prag i toliko koda je deployano da se to više ne može samo tako zamijeniti. Drugo je pitanje da li će za 20 godina biti neki legacy koji se vječno održava u stilu današnjeg fortrana ili cobola, ili će i dalje biti dominantna platforma. To ne bih znao, ali kako sada ide još se nije pojavila neka ozbiljnija alternativa.

Programeri su jako povodljivi i najbučniji među njima lako uskaču u platformu po zadnjoj modi, ali ako je suditi po povijesti preživljavaju samo stvari sa ozbiljnom financijskom podlogom. Zasada Java iza sebe ima više para nego ijedna druga platforma ikada. Tako da sam prilično siguran da će za cca 30 godina netko ovdje otvoriti temu "Java - prvih 50 godina".
bariole is offline  
Odgovori s citatom
Old 09.10.2012., 09:05   #4
da, i ne zaboravimo da se Android programira - s Javom. Mislim da više dalje ništa nije potrebno reći...
__________________
Nedozvoljena prikrivena reklama - obrisano!
Codegun is offline  
Odgovori s citatom
Old 10.10.2012., 00:44   #5
Ne znam od kuda si stekao dojam .NET vs Java???
.NET je rijesenje za Windows platformu, Java ide ipak nesto sire.
Nema nikakvog izumiranja barem iducih......30 godina, jer nitko nece trositi vrijeme niti novac prepisivajuci mase Java koda u XYZ jezik.Takodjer, Java je no#1 izbor u mnogim situacijiama, narocito u velikim sustavima.
Gledaj jezik/framework kao alat sa iskazivanje svoje kreativnosti. Ako to radis sa Java onda ces lako i sa bilo kojim drugim jezikom/frameworkom.
efodiks is offline  
Odgovori s citatom
Old 11.10.2012., 00:06   #6
Quote:
grogo bolger kaže: Pogledaj post
briljira na serverskoj strani i za raznorazne integracije, dušu dalo.
isprobano, dokazano u praksi.
Ozbilnjo Grogo?
Susreo sam se s Javom i njezinim serverskim stranama vise puta. I kada bih rekao da je to zadnja programska platforma koju bih upotrijebio za bilo kakav serverski aspek ikakve posluziteljske infrastrukture, bilo bi previse.
odiee is offline  
Odgovori s citatom
Old 11.10.2012., 00:26   #7
Quote:
bariole kaže: Pogledaj post
Programeri su jako povodljivi i najbučniji među njima lako uskaču u platformu po zadnjoj modi, ali ako je suditi po povijesti preživljavaju samo stvari sa ozbiljnom financijskom podlogom. Zasada Java iza sebe ima više para nego ijedna druga platforma ikada. Tako da sam prilično siguran da će za cca 30 godina netko ovdje otvoriti temu "Java - prvih 50 godina".
Od programera se zahtjeva da nauce i vladaju svim naj tehnologijama koje se trenutno pojave. Ali da bi mogao poceti vladati drugim progrmskim tehnologijama moras biti max level u prvoj. Programeri koji skacu iz tehnologije u tehnologiju nikada nisu niti nece vladati ikojom.

Postoji jako dobra anegdota vezana na ovo.

Kada su developeri koji su napravili Ultima-Online poceli portati svoj kod na C++ ostali su toliko fascinirani moguncnoscu C++sa, poceli su poceli nasljedjivati sve objekte u igri. npr. Jedan od developera pise da su u jednom trenutku poceli nasljedjivati objekte od pipe u sudoperu.
odiee is offline  
Odgovori s citatom
Old 11.10.2012., 00:36   #8
Quote:
odiee kaže: Pogledaj post
Ozbilnjo Grogo?
Susreo sam se s Javom i njezinim serverskim stranama vise puta. I kada bih rekao da je to zadnja programska platforma koju bih upotrijebio za bilo kakav serverski aspek ikakve posluziteljske infrastrukture, bilo bi previse.
da dragi Odiee, baš za server side, i to baš kako sam naveo, integracijske namjene, raznorazne b2b servise, konverzije formata, xml u nešto 3, spajanje na sve mrtvo i živo.

dakle ne za nekakvu realtime grafiku po čemu ti dereš u c++ (i koji je kralj za to).

za ovakve "dosadne" poslovne namjene, platforma #1 (pazi platforma).

e da žava je tu već 20godina
grogo bolger is offline  
Odgovori s citatom
Old 11.10.2012., 18:43   #9
Bok svima. Nije tema al je pitanje o Javi pa da ne otvaram novu temu, pitat ću ovdje.

Učim Javu cirka 5 mjeseci. Došo sam do jednostavnih gui aplikacija al ide jako brzo, brže nego što sam mislio.

Moje pitanje jest, u kojoj fazi mogu reć da nešto o Javi znam? Nakon koliko znanja o Javi mogu u društvu reć da sam dosta dobar poznavalac te materije? Koliko znanja mi treba da mogu pristupit nekom projektu ili tako nečem?
U biti, što sve trebam znat da mogu sam sebe pogledat u ogledalo i reć, ja ovo znam?

Hvala na odgovorima.
Namelles is offline  
Odgovori s citatom
Old 11.10.2012., 20:24   #10
Quote:
Namelles kaže: Pogledaj post
Bok svima. Nije tema al je pitanje o Javi pa da ne otvaram novu temu, pitat ću ovdje.

Učim Javu cirka 5 mjeseci. Došo sam do jednostavnih gui aplikacija al ide jako brzo, brže nego što sam mislio.

Moje pitanje jest, u kojoj fazi mogu reć da nešto o Javi znam? Nakon koliko znanja o Javi mogu u društvu reć da sam dosta dobar poznavalac te materije? Koliko znanja mi treba da mogu pristupit nekom projektu ili tako nečem?
U biti, što sve trebam znat da mogu sam sebe pogledat u ogledalo i reć, ja ovo znam?

Hvala na odgovorima.
Koja je razlika izmedju apstraktne klase i interface-a i kada korisiti apstraktnu klasu, a kada interface? Pokazi na nekom primjeru.
efodiks is offline  
Odgovori s citatom
Old 11.10.2012., 21:57   #11
Quote:
efodiks kaže: Pogledaj post
Koja je razlika izmedju apstraktne klase i interface-a i kada korisiti apstraktnu klasu, a kada interface? Pokazi na nekom primjeru.
pošto klasa može nasljeđivati samo od jedne klase, tu uskače sučelje jer svaka klasa može implementirati koliko god sučelja hoće. razlika je u tome što su apstraktne klase klase kao i sve druge klase s iznimkom da mogu imati samo deklaraciju metode s tim da tu metodu moraju definirati u nasljeđenoj klasi dok sučelja mogu sadržavati samo konstante i deklaracije metoda koje se moraju primjeniti u klasi koja implementira to sučelje.
apstraktnu klasu ću primjeniti kada u planu imam razgranato drvo nasljeđivanja sa određenom svrhom, pa želim u apstraktnu klasu staviti kod sa što više apstrakcije odnosno koda koji je predviđen nasljednim klasama na implementaciju.
npr. kad sam počeo javu, počeo sam vježbati na "igrici", strategiji u cmd-u koja prima naredbe u obliku teksta i onda ih izvršava na način na koji ja želim.
u tom primjeru nasljeđivanje nije imalo smisla ali sam ga svejedno primjenio. iz svog jadnog i malog iskustva, mislim da apstraktne klase jednostavno programeru olakšavaju snalaženje u velikom kodu sa velikim nasljednom hijerarhijom i prisiljava ga da primjeni ili ostavi na primjenu nasljednim klasama, metode koje želi primjeniti u nasljednim klasama.
sa sučeljima imam iskustva jedino u API-ju i rijetko sam pisao svoje ali svakako je puno lakše napisati sučelje nego svako malo napraviti nasljednu hijerarhiju klasa koje će se teško isčitavati a i bit će zbunjujuće. nema smisla napraviti apstraktnu klasu sa samo jednom nasljednom klason. Također, sučelja može primjeniti bilo koja klasa dok metode iz apstraktne klase mogu primjeniti samo klase koje nasljeđuju od te klase. nasljeđivanje mora imati smisla odnosno mora proći 'is-a' test, kada ne prolazi taj test, primjenjujem sučelje.
ne znam šta da još kažem. npr. ako napravim klasu koja implementira neko sučelje, dobro je napraviti objekt sučelja sa konstruktorom klase jer tada taj objekt može pozvati samo metodu koju nalaže sučelje. to smanjuje mogućnost za pogreške a i povećava čitljivost koda.
vjerojatno bih morao reći nešto i o polimorfizmu na ovu temu ali polimorfizam nisam malo ili uopće upotrebljavao pa ne mogu reći ništa o tome.
također, još samo da kažem da apstraktne klase difiniraju metode koje su zajedničke svim nasljednim klasama osim onih koje su ostavljene da definiranje klasi koja nasljeđuje pa se sprječava ponavljanje istog koda u više klasa. eto, nisam gledo google i ništa drugo, ako sam ispo loš, možda sam i trebo.
Namelles is offline  
Odgovori s citatom
Old 11.10.2012., 22:01   #12
jaoo i nije moguće napraviti objekt apstraktne klase ali je moguće spremiti objekt nasljedne klase u reference apstraktne klase što je dobro za polimorfizam ali, kažem, nemam nešto iskustva u polimorfizmu, što je sramota, priznajem ali dosad mi stvarno nije bio potreban.
Namelles is offline  
Odgovori s citatom
Old 13.10.2012., 00:06   #13
Quote:
odiee kaže: Pogledaj post
Od programera se zahtjeva da nauce i vladaju svim naj tehnologijama koje se trenutno pojave. Ali da bi mogao poceti vladati drugim progrmskim tehnologijama moras biti max level u prvoj. Programeri koji skacu iz tehnologije u tehnologiju nikada nisu niti nece vladati ikojom.
Možda to i je istina, ali ne mijenja na činjenici da su još uvijek povodljivi.
bariole is offline  
Odgovori s citatom
Old 13.10.2012., 00:44   #14
Quote:
odiee kaže: Pogledaj post
Susreo sam se s Javom i njezinim serverskim stranama vise puta. I kada bih rekao da je to zadnja programska platforma koju bih upotrijebio za bilo kakav serverski aspek ikakve posluziteljske infrastrukture, bilo bi previse.
Što reć. Kao što Grogo kaže java ima par snažnih strana.

Nećeš u njoj pisati websiteove; ali probleme tipa swift poruku upucati u copybook strukturu, ili konvertirati tuđi edi u neki xml da bi ga potpisanog asinkrono gurnuo liku na drugom kraju države koji nešto brljavi u delphiu. To je javina niša.

Ima jednu dobru kombinaciju mogučnosti i prirodne prednosti za takve poslove.
bariole is offline  
Odgovori s citatom
Old 13.10.2012., 11:13   #15
Sta fali servletima... kada dignes servlet i iskeširaš x objekata u njega, pa neka sluzi kao malo bolji application layer... to C# ne znam da li ima (glupo, ali oni su MVC implementirali tek prije par godina)...
Bongo is offline  
Odgovori s citatom
Old 13.10.2012., 11:19   #16
Quote:
bariole kaže: Pogledaj post
NetBeans ne podržava Swing? Servleti su odličan api koji se sve manje koristi?

Koliko ja zna NetBeansi nisu ništa nego isključivo swing. I servlet api je kompliciran do bola, ali koristi se toliko da nema weba bez servleta. Jedini alat za koji sam čuo da ne koristi servlete je Play.

Kakogod, Java ima više manje sigurnu budućnost sljedećih par dekada. Odavno je prošla "too big to fail" prag i toliko koda je deployano da se to više ne može samo tako zamijeniti. Drugo je pitanje da li će za 20 godina biti neki legacy koji se vječno održava u stilu današnjeg fortrana ili cobola, ili će i dalje biti dominantna platforma. To ne bih znao, ali kako sada ide još se nije pojavila neka ozbiljnija alternativa.

Programeri su jako povodljivi i najbučniji među njima lako uskaču u platformu po zadnjoj modi, ali ako je suditi po povijesti preživljavaju samo stvari sa ozbiljnom financijskom podlogom. Zasada Java iza sebe ima više para nego ijedna druga platforma ikada. Tako da sam prilično siguran da će za cca 30 godina netko ovdje otvoriti temu "Java - prvih 50 godina".
Ma pusti, opet neki math_baby spin.
Još bi se sa fat-client pričom kolko tolko složio, al kad sam vidio da od servleta dalje nije otišao, skužio sam da je nekakav trol u pitanju...
__________________
Živio Predrag Raos!
MilkyWay is offline  
Odgovori s citatom
Old 13.10.2012., 11:22   #17
Quote:
odiee kaže: Pogledaj post
Ozbilnjo Grogo?
Susreo sam se s Javom i njezinim serverskim stranama vise puta. I kada bih rekao da je to zadnja programska platforma koju bih upotrijebio za bilo kakav serverski aspek ikakve posluziteljske infrastrukture, bilo bi previse.
odiee, ja mislim da se ti sa pravom Javom susreo nisi. Nego samo tu pričaš sa aspekta toga u čemu ti sad trenutno radiš.

Koliko god ja pokušao biti agnostičan na tehnologiju, i koliko god priznao da postoji server-side tehnologije osim Jave, a koja fantastično radi svoj posao, moram priznati da je Java po tom pitanju u samom vrhu. Vidio, radio, znam o čemu pričam.
__________________
Živio Predrag Raos!
MilkyWay is offline  
Odgovori s citatom
Old 13.10.2012., 19:56   #18
Quote:
grogo bolger kaže: Pogledaj post
da dragi Odiee, baš za server side, i to baš kako sam naveo, integracijske namjene, raznorazne b2b servise, konverzije formata, xml u nešto 3, spajanje na sve mrtvo i živo.

dakle ne za nekakvu realtime grafiku po čemu ti dereš u c++ (i koji je kralj za to).

za ovakve "dosadne" poslovne namjene, platforma #1 (pazi platforma).

e da žava je tu već 20godina
Ja ne derem samo po grafici i videu. Govorim o prakticnim embedded serverima gdje ne postoji 500 megi rama rezervirat na pocetku i nadat se da program nece preci tu granicu. Da naravno, za web programiranje, osobnu upotrebu ili igre to se niti ne vidi. Ali kod prakticne upotrebe, gdje je ogranicen ne samo prostor diska nego i memorija, to cini znacajnu razliku. Ne samo u brzini nego i u pouzdanosti izvrsavanja.

Quote:
MilkyWay kaže:
odiee, ja mislim da se ti sa pravom Javom susreo nisi. Nego samo tu pričaš sa aspekta toga u čemu ti sad trenutno radiš.

Koliko god ja pokušao biti agnostičan na tehnologiju, i koliko god priznao da postoji server-side tehnologije osim Jave, a koja fantastično radi svoj posao, moram priznati da je Java po tom pitanju u samom vrhu. Vidio, radio, znam o čemu pričam.
MilkyWay,
Ne vjerujem da si se susreo sa specificnim tehnologijama koje cine Javu ili C# sto se toga tice, nekompatibilnu za implementaciju.

Zadnje uređivanje odiee : 13.10.2012. at 20:12.
odiee is offline  
Odgovori s citatom
Old 13.10.2012., 20:22   #19
To OP:

R.I.P apleti

Rodi se Android

Ionako je tak svejedno - ako kuzis OOP na toj razini - kaj ti nije isto jel radis C# ili Javu?

Quote:
efodiks kaže: Pogledaj post
Koja je razlika izmedju apstraktne klase i interface-a i kada korisiti apstraktnu klasu, a kada interface? Pokazi na nekom primjeru.
Ajd ne prci covjeka... kaj to pitas na razgovoru za zaposljavanje

Javu znas kad ti neko ti netko dadne pravi Java projekt u ruke (npr. Alfresco) i kaze ti - "zelim da ovo puce ne radi ovo nego ono" i nakon toga ti napravis da to puce ne radi "ovo" nego "ono"

Manjevise to ces i radit u 99% firmi

I.
igorl is offline  
Odgovori s citatom
Old 14.10.2012., 12:13   #20
jel sam se osramotio s gornjim postovima il sam samo ispo glup?
Namelles is offline  
Odgovori s citatom
Odgovor



Kreni na podforum




Sva vremena su GMT +2. Trenutno vrijeme je: 01:37.