Javantura Zagreb 2014 - Google Dart - Željko Kunica

1,633 views

Published on

Konferencija Javantura Zagreb 2014 by HUJAK

Zašto je Google Dart spas za Java programere? by Željko Kunica

Java programeri su naučili na “lijep” i strukturiran jezik. Zato im često JavaScript zadaje glavobolje. Ali JavaScript je sveprisutan i svakim danom sve popularniji. Također novi trendovi nameću “pametnije” web aplikacije što nameće još više JavaScripta. Dartlang (www.dartlang.org) je rješenje koje Java developeri razumiju i cijene! Struktura jezika vrlo je prepoznatljiva, a neke karakteristike bi bilo lijepo vidjeti u budućim verzijama Jave. Predavanje je uvod u izradu JavaScript aplikacija korištenjem Darta.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,633
On SlideShare
0
From Embeds
0
Number of Embeds
1,268
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Javantura Zagreb 2014 - Google Dart - Željko Kunica

  1. 1. Google Dart
  2. 2. Web • • • Server: sad su onda dobra stara vremena Klijent – dominacija HTML, CSS i Javascript Povratak na fat client – Javascript postaje nezaobilazan
  3. 3. Javascript • dinamičan jezik nastao kao “ispomoć” html-u prototype baziran vrlo slobodna forma pisanja - puno struja velik broj loše dizajniranih ponašanja skoro nemoguća IDE podrška jezik kojeg se voli ili mrzi ili oboje • • • • •
  4. 4. Javascript - danas • • • • • nodejs - serverska podrška i korisni alati upravljanje bibliotekama - npm i bower build alati - grunt i njegovi pluginovi, ima i drugih jslint i jshint ECMAScript 6 i 7
  5. 5. Google • • • • Google radi web aplikacije postojeće je sve teže održavati performanse postaju problem došlo je vrijeme za “pravi” browser jezik
  6. 6. Dartlang - ciljevi • • • • • • mora biti strukturiran jezik, prepoznatljiv programerima Javascript je svugdje i dart2js mora biti “savršen” Dart aplikacija se izvršava na DartVM-u, a fallbacka na Javascript DartVM mora biti brz mora imati podršku za ugodan rad s biblioteka i njihovim ovisnostima dobra IDE podrška
  7. 7. Što je Dart? • • • • • objektno orijentiran jezik baziran na klasama single threaded “optionaly typed” - podržava compile provjeru, ako se koriste tipovi izvršava se u checked ili production modu
  8. 8. Dart - prepoznatljiv jezik
  9. 9. Dart - metode
  10. 10. Dart - kolekcije
  11. 11. Dart - asinkronizam • Future
  12. 12. Dart - html
  13. 13. Dart - polymer • • • • • web components shadow dom predlošci data binding u razvoju
  14. 14. Dart - polymer • html template
  15. 15. Dart - polymer • komponenta
  16. 16. Dart - polymer • html upotreba
  17. 17. Dart - pub • • • • • pomoćni alat za biblioteke, po uzoru na bundler ovisnosti se definiraju u pubspec.yaml preuzete ovisnosti se zapisuju u pubspec.lock pub install, pub upgrade, pub publish javni repozitorij http://pub.dartlang.org
  18. 18. Dart - js • • • omogućava komunikaciju s Javascriptom još nije podržano korištenje Darta iz js-a, ali se mogu izložiti Dart funkcije u js Dart objekti se ili transformiraju ili proksiraju prema js-u
  19. 19. Dart - js
  20. 20. Dart - danas • • • • • verzija 1.1 generirani Javascript podržava sve moderne browsere još nije izašao DartVM plugin za Chrome testovi pokazuju da je Dart duplo brži od Javascripta Prevode se mnogi Javascript frameworci: Angular, jQuery, Bootstrap (Bootjack), Google maps….
  21. 21. Dart - konkurencija • • • CoffeScript - bolja sintaksa za Javascript TypeScript - Javascript od “sutra”, usko vezan na JS, i dalje pati od nedostataka Dart je puno hrabriji jer nije ovisan o JS-u nego ga samo podržava.
  22. 22. Zašto je Dart spas za nas? • • • • • • sličan Javi jednostavnost apstrakcije moćan IDE - refaktoriranje, provjera sintakse sve to nam omogućuje pisanje “čistog” koda čist kod je bitan jer ćemo ga više čitati nego pisati čist kod nas čini sretnima :)
  23. 23. Reference • • • • https://www.dartlang.org/ https://github.com/sethladd http://blog.angulardart.org/ http://www.žac.com/

×