izrada hibridnih mobilnih aplikacija temeljenih na angular.js

38
Izrada hibridnih mobilnih aplikacija temeljenih na angular.js Ivan Vucicevic, BetaWare Osijek 2014.

Upload: sileas

Post on 06-Jan-2016

74 views

Category:

Documents


4 download

DESCRIPTION

Izrada hibridnih mobilnih aplikacija temeljenih na angular.js. Ivan Vucicevic, BetaWare Osijek 2014. Što trebamo znati?. Potrebno predznanje javaScript -a - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Izrada hibridnih mobilnih aplikacija temeljenih na

angular.js

Ivan Vucicevic, BetaWare Osijek 2014.

Page 2: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što trebamo znati?

Potrebno predznanje javaScript-a

Potrebno znanje HTML-a

Page 3: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Zašto Angular?

Ako želimo napravit dinamičku web ili mobilnu aplikaciju Angular je odličan izbor

Angular nam jako dobro strukturira i organizira kod javaScript-a

Angular nam omogućuje izradu jako brzih web stranica

Angular se ponaša odlično pri radu s jQuery-em

Angular nam pruža lako održavanje software-a

Angular proširuje HTML s novim atributima

Angular je savršen za SPA

Jednostavan za učenje

Page 4: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što Angular čini tako brzim?

Server

Url zahtjev na server

Odgovor servera s web stranicom HTML + JS

Korisnik klikne na link

Odgovor servera s web stranicom HTML + JS

Page 5: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što Angular čini tako brzim?

Server

Url zahtjev na server

Odgovor servera s web stranicom HTML + JS

Korisnik klikne na link

Odgovor servera s JSON podacima

Podaci se učitavaju u postojeću stranicu

Page 6: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što je Angular u stvari?

Open-source JavaScript framework koji se izvršava na strani klijenta

Održavan je od strane googla

Nastao 2010.

Slijedi MVC kako bi olakšao i ubrzao razvoj

Koristi tzv. direktive

Two-way data binding ($scope)

Moćni templating HTML-a

Page 7: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što je Angular u stvari?

Page 8: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Kako koristiti Angular s našom web ili mobilnom aplikacijom?

Vrlo jednostavno CDN

Direktno

Page 9: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Moduli u Angularu

Moduli su gdje pišemo dijelove naše aplikacije, te na taj način držimo kod enkapsuliranim

Zbog takvog pristupa kod nam je lakše održiv i čitljiv

Također u modulima definiramo ovisnosti ostalih modula za našu aplikaciju

Page 10: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Moduli u Angularu

var ngApp = angular.module('ngApp', [‘module2‘, ‘module3']);

app.js

Page 11: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Pisanje izraza u Angularu

ng-app direktiva je definirala cijeli HTML kao angular aplikaciju

Na taj način omogućeno nam je pisanje izraza unutar vitičastih zagrada

Page 12: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Primjeri direktiva (najčešće korištenih)

ng-app – dodavanje Modula angular aplikacije stranici

ng-controller – dodavanje funkcije kontrolera stranici

ng-show/ng-hide – Prikaz/skrivanje elementa ovisno o vrijednosti modela

ng-repeat – ponavljanje za svaki element niza (foreach)

Page 13: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Filteri u Angularu

Angular biblioteka u sebi sadrži mnoge filtere koji se pozivaju „pipe” operatorom (currency, datetime, number, orderBy)

Mogućnost izrade custom filtera

Page 14: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

<img> tag

Problem prilikom učitavanaja slike iz niza.

Page 15: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Forme Modeli

Page 16: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Dupliciranje

Repeating.html

Page 17: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Dupliciranje

Server

Url zahtjev na server

Odgovor servera s web stranicom HTML + JS

ng-include (ajax)

HTML repeating.html

Podaci se učitavaju u postojeću stranicu

Page 18: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Prilagođene direktive

Page 19: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Rute / Konfiguracija

Page 20: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Kontroleri

Page 21: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Kontroleri

Page 22: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Hibridne mobilne aplikacije

Nativne SDK

Mobilni Web PHP, node.js

Hibridne HTML5, JS

Page 23: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što odabrati?

Hibridne aplikacije Razvoj istovremeno na više platformi

Brži razvoj općenito

Pristup većini nativnih komponenti

Lošije performanse

Nativne aplikacije Najbolje performanse

Sporiji razvoj

Specifične za platformu

Page 24: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što odabrati?

Hibridne aplikacije su Vaš izbor ako: Ciljate na razvoj na više platformi

Želite koristiti mogućnosti kao što su kamera, geolokacija ili akcelerometar

Želite aplikaciju koja će raditi i kada nemate pristup internetu

Ne interesiraju Vas grafičke performanse

Page 25: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što odabrati?

Page 26: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Što trebamo znati?

HTML5, CSS3 (SCSS i LESS)

HTML5 mobilni framework (OnsenUI, Ionic, IntelAppFramework, jQueryMobile, KendoUI…)

JS (AngularJS ili jQueryMobile)

Ako je potrebna komunikacija sa serverom: PHP, ASP …

CLI (phonegap, cordova, nodejs)

Page 27: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Ionic framewrok

Besplatan

Open Source

Optimiziran za mobilne uređaje

Zasnovan na angularJS

Izvrsne performanse

Phonegap/Cordova

Koristi vlastite html tagove <ion>

Page 28: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Onsen framework

Širok spektar gotovih UI komponenti

Dizajn prilagođen za mobilne uređaje i tablete

Izvrsne performanse

Korisit angularJS

Phonegap/Cordova

Koristi vlastite html tagove <ons>

Page 29: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Onsen karakteristike

+Nevjerojatan broj gotovih komponenti

+Velik broj gotovih templatea ili layouta

+Monaca (debug)

-Monaca nije besplatna

-Gotovi layouti nisu temeljeni na angularu

Page 30: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Ionic karakteristike

+ionic CLI

+besplatan

+Open Source

+u potpunosti temeljen na angularJS

+Prepoznavanje platforme

+Native feel

-Još uvijek je beta

-manjak templat-a

-konstantne nadogradnje

Page 31: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Hibridna aplikacija koja uploada i pretražuje slike na flickeru!

Page 32: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Izbor layouta

• Potreban je jedan screen

• Jedan button

• Forma za pretragu

Page 33: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Index.html

Page 34: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

App.js

Page 35: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

directives.js

Page 36: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

controllers.js

Page 37: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

In ction

Page 38: Izrada hibridnih mobilnih aplikacija temeljenih na angular.js

Hvala na pažnji!