7. JavaScripti činjenice Više poslova u JavaScriptu nego u Rubyu, Pythonu, PHP-u, Perlu, C#-u, Objective C-u Prema tražilici poslova Indeed.com, Siječanj 2011. JavaScript popularniji od Rubya premaindeksupopularnostiprogramskihjezika TIOBE, lipanj 2011.
16. Hibridne aplikacije HTML/CSS/JS + native API Podrška na platformi (Nokia WRT, SE WebSDK, HP WebOS) Samostalna implementacija Gotove biblioteke i servisi
27. Zaključak Skraćuje vrijeme razvoja Smanjuje raspon tehnologija koje je potrebno poznavati Potrebno sazrijevanje Rastući trend koji nije moguće zanemariti
Trend rasta poslova koji traže znanje JavaScriptaNakon ovog predavanja kad vidite sto se sve s JavaScriptom moze napraviti biti ce jasno zasto je tome takoJavaScript i Rubynastali 95Do 2005 nisu imali znacajniju ulogu u razvoju softveraNakon 2005Ruby serverJavaScript klijentNajcool jezik i hype medju programerimaDonedavno RubyDanas JavaScriptRuby ostao na serveru, Javascript se proširio na sve oblike frontenda pa i na server
Nastao radi kako bi se povecala interaktivnost statickih HTML dokumenataDanas su cijele aplikacije pisane u njemuServer koriste kao bazu podatakaTendencija da sve vise nalikuju i ponasaju se kao desktop aplikacijeSet kontrolaGridovi, paneli, harmonike, menui, tabovi, popupovi, calendar, chartovi, image previewerDrag’n’dropdatoteka u preglednik (gmail)Primjeri takvih kompleksnih suceljaAplikacija za racunovodstvo
Primjeri takvih kompleksnih suceljaGoogle Wave
Primjeri takvih kompleksnih suceljaGitHub Issues
Gornja skupina – niz godina prisutniSproutCore novijeg datumaApple gakoristiozasvoje web aplikacije – iWork, MobileMehttp://papercube.peterbergstrom.com/ (SproutCore)Donja skupinaPojednostavniti programiranje u JsPriblizitiprogramerimaiskusnim u nekimdrugimtehnologijamaGWTJavaGoogle Wave, Google AdWordsCapuccinoObjectiveJ i Cocoa frameworkiOsdeveloperihttps://gomockingbird.com/mockingbird/ (Cappuccino)CoffeeScriptRuby, Python programerihttp://chalk.37signals.comhttp://kodingen.com/ (CofeeScript,jQuery)
Zadnjihgodina – optimizacijaAplikacijepisane u javascriptu se jakobrzoizvodebibliotekeza fancy vizualizacije podatakaProcessing.js - http://ejohn.org/apps/processing.js/examples/custom/substrate.htmlBibliotekezaizraduigricaMario kart – http://www.nihilogic.dk/labs/mariokart/PC emulator pisan u Javascriptuhttp://bellard.org/jslinux/Mozda za nekoliko godina Windowse 9 zavrtite u pregledniku
Sve više procerske snage i kvalitetni, moderni preglednici na pametnim telefonima omogućili razvoj mobilnih web aplikacijaBasecampSubset funkcionalnosti prilagođen za mobitelFlick BasketballIsta app i u app storeuiPhone User guide
iPhone, iPad, Android, BB, Palm, Bada – svi imaju webkitBibliotekespecijaliziranezarazvojinteraktivnihwebaaplikacijazamobitelePREDNOSTI:Nemainstalacijezaobilaziteapp storecross platformPROBLEMI:Ne mozetepokrenutiaplikacijuakoste offlineNema pristupa featureima mobitela (kontakti, kalendar, kompas, kamera, gps)
Dijelom pisane u Javascriptu, HTMLu, CSSu, a dijelom pisane u native, u Javi
Sastoje se od web dijela i native dijelaU web dijelucijelaaplikacijaU native dijelupristupfeatureimatelefona(gps, akcelerometar, kamera, storage, kontakti...)PhoneGapPotrebno imati razvojno okruzenje za svaku platformuNovost: build servis
Primjer aplikacije koja ima poslovnu logiku pisanu u JavascriptuSucuelje je native
AppceleratorOsimnedostupnostfeatureatelefona problem kodmobilnogweba je i korisnickidozivljajButton ne uhvate touchPojavi se efekt, ali ne odradiakcijaProblem sascrollanjemlistakojeimajupunosadrzajaJS +UI API + Phone APIJedan IDE, sveplatformeProblemiRelativnoslabadokumentacijaPokrivenostfeaturea
Titanum razvojno okruzenje
ChromelessprojektPreglednikbezsuceljaSuceljeprogramersamdefinira u HTML/CSS/JSNijezatvoren u sandboxunegoimapristupOsu
Ideja: obogatitikorisnickidozivljagledanjaTVakontekstualniminformacijamaGoogle TVTemplate aplikacijeLibrary temeljennajQueryu i ClosureuYahoo Connected TVSDKSamsung Smart TV AppsSDK
ALI, to nijesve!
PokusajipruzanjapodrskeJavascriptunaserveru (ApatnaJaxer, Opera)Node.jsOmogucujepisanjeserverskihaplikacija u Javascriptu (umjesto u Javi, c#, rubyu, pythonu, phpu)Zasto je to super?Isti model i poslovnulogikukoristi i server i klijentMorateznatisamojedanprogramskijezik, a ne dva+ odlicneperformanse
magicni stapicproblemi iogranicenjaizrazito interaktivno i dinamično sučelje-> hibridne tehnologijekompleksne matematičke proračune -> GUIRazlicite platforme - različite APIje i različite GUIje
jezgra aplikacije, model, poslovna logika – jedinstvenaumjesto 5 razlicitih jezika za 5 razlicitih platformi, trebate znati samo 1 jezik i 5 razlicitih frameworkaRastuci trend količine i kvalitete softvera dugoročno - jako važnu ulogu i postati jedna od važnijih platformi za razvoj aplikacija koje moraju pokriti velik broj frontendaIdealan use case za koristiti Javscript: Evernote, ali nesto specificnije, sto ne mora biti jako lijepo, ali mora raditi svugdje i sinkronizirati se s webom