Konferencija Javantura Zagreb 2014 by HUJAK
Java na klijentskoj strani – ima li budućnosti? by Ivan Vučak
U proteklih nekoliko godina Java se pozicionirala kao tehnologija izrade serverskih komponenti, ali kao da se zaboravlja da se Java koristila iza izradu Rich Internet aplikacija (RIA). Da li je Java konkurentna na području RIA te koliku ulogu u tome imaju razni sigurnosni standardi? Kako održavati postojeće RIA sustave uz općenito nepovjerenje ostalih sustava prema Java klijentskim aplikacijama? U ovom predavanju bavit ćemo se usporedbom Jave s ostalim tehnologijama te pokazati zašto strepimo kod svakog Java update-a.
2. SADRŽAJ
SADRŽAJ PREDAVANJA
UVOD
1. Sedam IT
2. Demistifikacija teme
3. Klijentske aplikacije
4. Rich Internet Application - RIA
5. Java i RIA
6. Ostale RIA tehnologije
7. HTML5 vs JavaFX
8. Security issues
9. Q&A
3. TKO SMO
SEDAM IT
MISIJA
Radom
stvaramo vrijednosti koje ostavljamo u naslijeđe
VIZIJA
Postati
vodeći isporučitelj pametnih ICT rješenja koja korisnicima
bitno smanjuju troškove, povećavaju prihode i doprinose poboljšanju
efikasnosti poslovnih procesa
NAŠE VRIJEDNOSTI
Zadovoljstvo korisnika: korisnik
nam je na prvom mjestu
Znanje: imamo opsežno znanje, kontinuirano učimo i razvijamo se
Kvaliteta: stalno poboljšavamo kvalitetu svojih proizvoda i usluga
Učinkovitost: poštujemo rokove i pravila rada, učinkovito i
odgovorno djelujemo
4. NAŠI RESURSI
LJUDSKI RESURSI
Ukupno 70+ zaposlenika
Prosječno iskustvo u IT sektoru
Prosječna starost
Visoko obrazovanih
Certifikata i IT vještina
Znanja:
> 9 godina
< 35 godina
> 90%
> 250
–
Najprestižniji IT certifikati (CISCO, CA, MICROSOFT, INFOVISTA, F5, SOURCEFIRE, FLUKE, …)
–
Upravljanje projektima (PMP)
–
Upravljanje kvalitetom (EOQ Quality System Managment)
7. O NAMA
DRUGI O NAMA
2008/9/10/11/12
Cisco® Master Unified Communications
IDC Adriatics TOP CRM Solution Provider
Deloitte Technology Fast 50/Central Europe
Deloitte Technology Fast 500/EMEA
Infotrend TOP 100 Hrvatskih IT poduzeća
Business.hr Hrvatske Gazele (TOP Fast Growth)
–
–
–
–
–
–
1. u JI Europi
Rang 1
Rang 25
Rang 275
Rang 29
Rang 119
8. Demistifikacija
Demistifikacija teme
Java na klijentskoj strani – ima li budućnosti ?
Java:
–
–
Klijentska strana
–
–
–
–
Oracle Java (6/7/8)
SE, EE
Aplikacije koje se ne izvršavaju na poslužitelju
Izvršavanje na klijentskom računalu
– sa i bez instalacije
Aplikacije na mobilnim uređajima nisu u razmatrane
Naglasak na RIA
Budućnost
–
–
–
Sve ono što nas čeka
Praćenje trendova
Odgovori na zahtjeve (tržišta/tehnologije itd.)
9. Klijentske aplikacije
Klijentske aplikacije
(kojima se bavimo u ovom predavanju)
Aplikacije koje se izvršavaju na klijentskom računalu
Dio klijent – server arhitekture
Pokretanje aplikacija kroz web preglednik
–
sa ili bez korištenja određenog plugin-a
RIA aplikacije
10. RIA
Rich Internet Applications
RIA
–
–
–
–
–
Rich client
Web aplikacije sa karakteristikama desktop aplikacija
Funkcionalnosti desktop aplikacija na Internetu
look & feel Internet aplikacija jednak desktop aplikacijama
neovisnost o web pregledniku i platformi
Malo u prošlost …
davne 2002. godine
–
–
Macromedia Inc (danas Adobe)
technology that can integrate “best of the web” with “best of the desktop”.
11. RIA
RIA prednosti
Prednosti (pred tradicionalnim web aplikacijama)
–
–
–
–
–
Responsive
Interactive
Faster processing
Decongests traffic on server
Enhanced Customer Experience
Prednosti (pred tradicionalnim desktop aplikacijama)
–
–
–
Accessibility to Web
Rich User (Friendly) Interface
Enhanced User experience
12. JAVA & RIA
Java & RIA
Povijest
–
Java od početaka ima podršku za RIA
– druge tehnologije nemaju
Applet i AWT Applet (JDK 1.0)
Swing (JDK 1.2)
JavaFX (2008. godina)
–
–
Zaseban library
Verzije 1.0 – 2.2
Java FX 3.0
–
–
Java 8 donosi Java FX kao dio JDK/JRE
Verzioniranje se izjednačava s Javom (8.x)
13. JAVA & RIA
JavaFX
JavaFX Script
–
–
JavaFX 1.0
–
JavaFX Script
JavaFX 2.0 >
–
2008. g.
< JavaFX 2.0
–
nastalo na temelju F3 (Form follows functions) Chris Oliver
2006-2007 godina
Native Java library
Dvorana B 13:05 – 13:35
–
Je li JavaFX pravi nasljednik Swinga?
15. Pitanje?
Pitanje
Razvijate enterprise sustav (npr. software za banku):
–
–
–
–
Klijent server arhitektura
Velika količina podataka
Rich client
Korisničko sučelje:
– bogato, brzo, interaktivno
– …
Što odabrati ?
– Serverska strana : Java tehnologija (naravno )
– Klijentska strana ?
17. HTML5
HTML 5
Prednosti:
–
–
–
–
–
W3C standard
Tehnologija budućnosti (… barem svi tako tvrde…)
Nije potreban plugin
(Biti će) dostupan na svakom (podržanom) web pregledniku
Mnoštvo gotovih widget-a
– Out-of-the-box rješenja
– html5demos.com
Nedostatci
–
–
–
–
HTML + JavaScript umjesto „programskog jezika”
Specifikacija se očekuje krajem 2014 (finalna verzija)
Upitno koliko web preglednika će stvarno podržavati
cross-browser development
18. JavaFX
JavaFX
Prednosti:
– Korištenje Java API-a
– Olakšana izrada RIA za Java developere
– Jedinstveno razvojno okruženje (backend i frontend)
– Mogućnosti: debug i refactor
– Mogućnost korištenja FXML-a
– Odvajanje UI dijela od logike
– Podrška za CSS
– Integracija HTML i JavaScript dijelova
– Integracija (postojećih) Swing aplikacija
– Različite mogućnosti pokretanja iste JavaFX aplikacije
– standalone, web, Java Web start
– Velik broj gotovih komponenti
– JavaFX Ensemble
– Nije potreban cross-browser development
22. Security
Security issues
exploits
– Iskorištavaju nedostatke cross-platform runtime sustava
– JRE, ali i ostalih (Flashfake malware za Adobe Player)
Java 7
– 2 zero-day vulnerabilities
Department of Homeland Security (DHS)
– …has a vital mission: to secure the nation from the many threats we face…
– siječanj 2013 :
– Java 7 fails to restrict access to privileged code (http://www.kb.cert.org/vuls/id/625617)
– Unless it is absolutely necessary to run Java in Web browsers, disable it
... even after updating to 7u11
23. Security
Security issues
Oracle :
– siječanj 2014:
– Oracle Critical Patch Update Advisory - January 2014
(http://www.oracle.com/technetwork/topics/security/cpujan2014-1972949.html)
– 147 security patch (36 for Java)
Rezultat:
– Nepovjerenje prema Java RIA
– bez obzira na certifikat
24. Security
More than 50% of enterprise application are written in Java
3. 2013 - http://www.bankingtech.com/71961/java-in-the-cloud-for-financial-services/