Primerjava razvoja prave domorodne mobilne aplikacije in razvoja z uporabo ogrodja React Native

Velikost: px
Začni prikazovanje s strani:

Download "Primerjava razvoja prave domorodne mobilne aplikacije in razvoja z uporabo ogrodja React Native"

Transkripcija

1 Univerza v Ljubljani Fakulteta za računalništvo in informatiko David Mihelj Primerjava razvoja prave domorodne mobilne aplikacije in razvoja z uporabo ogrodja React Native DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN INFORMATIKA Mentor: viš. pred. dr. Alenka Kavčič Ljubljana, 2019

2 Copyright. Rezultati diplomske naloge so intelektualna lastnina avtorja in Fakultete za računalništvo in informatiko Univerze v Ljubljani. Za objavo in koriščenje rezultatov diplomske naloge je potrebno pisno privoljenje avtorja, Fakultete za računalništvo in informatiko ter mentorja. Besedilo je oblikovano z urejevalnikom besedil L A TEX.

3 Fakulteta za računalništvo in informatiko izdaja naslednjo nalogo: Primerjava razvoja prave domorodne mobilne aplikacije in razvoja z uporabo ogrodja React Native Tematika naloge: V okviru diplomske naloge primerjajte dva pristopa k razvoju mobilne aplikacije: izdelava prave domorodne javanske aplikacije in izdelava aplikacije s pomočjo ogrodja React Native. Primerjajte tako sam postopek razvoja mobilne aplikacije kot tudi rezultat razvoja, to je izdelano aplikacijo. V ta namen zasnujte in implementirajte preprosto mobilno aplikacijo, ki uporablja vsaj enega od razpoložljivih senzorjev mobilne naprave. Pripravite ustrezne kriterije, na podlagi katerih primerjate oba pristopa in razviti aplikaciji. Opišite tudi glavne prednosti in slabosti vsakega od omenjenih pristopov.

4

5 Najlepša hvala staršem, mentorici in Nini za potrpljenje med pisanjem diplomske naloge.

6

7 Kazalo Povzetek Abstract 1 Uvod 1 2 Tehnologije in orodja Razlika med ReactJS in React Native Programski jezik Urejevalnik kode Aplikacija 7 4 Primerjava Namestitev orodij Ustvarjanje projekta Hierarhija datotek Poganjanje aplikacije in izdelava APK Struktura aplikacije Oblikovanje Stylesheet Dovoljenja Shranjevanje podatkov Senzorji Orientacija

8 4.12 Lokacija Kompas Vibracija Komunikacija Testiranje Primerjava aplikacij Odzivnost Povzetek Zaključek 35 Literatura 38

9

10 Seznam uporabljenih kratic kratica angleško slovensko JS Javascript Javascript RN React Native React Native NPM Node Package Manager paketni upravitelj Node.js SDK Software Development Kit paket za razvoj programske opreme APK Android Package paket aplikacije za Android ADT Android Developer Tools razvojna orodja za Android XML Extensible Markup Language razširljiv označevalni jezik HTML Hypertext Markup Language jezik za označevanje nadbesedila CSS Cascading Style Sheet prekrivni slogi JSX Syntax Extension to Javascripscripta sintaktična razširitev Java- DOM Document Object Model objektni model dokumenta GPS Global Positioning System sistem za globalno pozicioniranje API Application Programming Interface programski vmesnik REST Representational State Transfer arhitekturni stil REST JSON Javascript Object Notation opis objekta za Javascript URL Uniform Resource Locator enotni naslov vira MB Megabyte megabajt

11 Povzetek Naslov: Primerjava razvoja prave domorodne mobilne aplikacije in razvoja z uporabo ogrodja React Native Avtor: David Mihelj V diplomski nalogi sta primerjana orodje za domorodni razvoj in ogrodje React Native za razvoj mobilne aplikacije z vidika razvijalca in uporabnika. Na razvojni strani so upoštevana količina orodij, njihove sposobnosti in preprostost uporabe, kar vpliva na čas razvoja, kvaliteto kode in funkcionalnost aplikacije. Z uporabnikovega stališča pa so primerjane funkcionalnosti aplikacije, uporabniška izkušnja in odzivnost. Razlike za uporabnike so v večini primerov zanemarljive ali neopazne, saj React Native dosega sposobnosti domorodnega razvoja. Večje razlike občutijo razvijalci, veliko pa je odvisno od tipa projekta in razvojne ekipe, najbolj zaradi različnega programskega jezika (Java za domorodne aplikacije, Javascript za React Native), zaradi katerega so potrebna drugačna razvojna okolja in znanje drugega jezika. Ključne besede: Android, aplikacija, mobilno, domorodno, React Native.

12

13 Abstract Title: Comparison of real native and React Native mobile application development Author: David Mihelj This diploma compares React Native with native tools for developing mobile applications from the perspective of both the developer and user. Factors that impact project duration, quality of code and functionality of the final product like number of tools, their capabilities and simplicity of use have been considered for the development aspect. Functionality, user experience and responsiveness were assessed from the user s perspective, however they are mostly unnoticeable or non-existent due to the maturity of React Native. The biggest difference is felt by developers because of different programming languages used (Java for native and Javascript for React Native applications), however it does depend on the type of project and development team. Keywords: Android, native, mobile, application, React Native.

14

15 Poglavje 1 Uvod Mobilni telefoni so v zadnjih desetih letih postali nepogrešljiv spremljevalec. Klicanje in sporočanje sta postali samo dve izmed funkcij, ki jih ponuja naprava, za ostalo se zanašamo na aplikacije. Za razvoj ima programer več možnosti. Poleg domorodnega razvoja obstaja še veliko orodij, ki jih je ustvarila skupnost, vsako pa ima določene lastnosti, ki jih naredijo privlačne za različne tipe razvijalcev in projektov. Trenutno popularno ogrodje za razvoj mobilnih aplikacij React Native (RN) bomo primerjali z domorodnim razvojem s pomočjo aplikacije Voznikov pomočnik (ang. Driver Assistant). React Native je izšel iz projekta React, ki je ogrodje za spletne vmesnike, zato tudi uporablja spletne tehnologije (Javascript (JS) in jezike, podobne HTML in CSS). Domorodne aplikacije pa so napisane v Javi. Domorodne aplikacije imajo nizkonivojski dostop in omogočajo boljšo optimizacijo, kar je pomembno za zahtevnejše aplikacije. Hkrati je razvoj tudi bolj zapleten. React Native poskuša biti preprostejši, hkrati pa ponuja tudi razvoj za več platform hkrati. Načeloma to pomeni, da so domorodne aplikacije lahko hitrejše zaradi optimizacije, ni pa nujno. Primerjava je razdeljena na dva dela. Razvojni del je razdelan po orodjih, ki se uporabljajo pri posameznem načinu razvoja in komponentah aplikacije. Predstavljena so orodja, ki so bila uporabljena za izdelavo posamezne aplikacije, hkrati pa so še naštete razlike, ki razvijalcu pomagajo pri izbiri. Pri 1

16 2 David Mihelj predstavitvi razvoja je za posamezno komponento najprej razložen postopek implementacije, nato pa so, glede na opisane razlike, podani razlogi za izbiro določenega načina razvoja z upoštevanjem potreb projekta in zahtev razvijalcev. Primerjani sta tudi končni aplikaciji, po kriterijih, ki med njima čim bolj izpostavijo razlike.

17 Poglavje 2 Tehnologije in orodja 2.1 Razlika med ReactJS in React Native ReactJS je knjižnica za Javascript, namenjena izdelavi vmesnikov spletnih aplikacij, ki izkorišča princip model - pogled - upravljalec (ang. Model View Controller). Izdelali so jo pri Facebooku, njena glavna prednost pa je konstrukt z imenom stanje (ang. state), ki omogoča osveževanje podatkov brez ponovnega nalaganja spletne strani. Stanje je poseben konstrukt, podoben globalni spremenljivki, uporablja pa se za podatke, ki se pogosto spreminjajo in se jih prikazuje na zaslonu. V drugih programskih jezikih mora razvijalec za prikaz sprememb poskrbeti sam, na primer z uporabo povratnih klicev. ReactJS po spremembi podatkov v stanju sam poskrbi za osvežitev vmesnika. Iz te osnove je izpeljan React Native, ki omogoča izdelavo mobilne aplikacije z uporabo arhitekture ReactJS. React Native v ozadju prevaja Javascript v domorodno kodo Java, ki se izvaja na napravi. 3

18 4 David Mihelj 2.2 Programski jezik Primerjana načina razvoja uporabljata različna programska jezika. Domorodne aplikacije se razvija v Javi, React Native pa je ogrodje za razvoj aplikacije z Javascriptom. Jezika sta si v nekaterih pogledih podobna in v nekaterih različna. V obeh jezikih se vidi vpliv C in C++ (deklaracija spremenljivk, objekti, klicanje metod...), v podrobnostih pa se razlikujeta. JS je preprostejši za neizkušene programerje, saj ima bolj fleksibilno sintakso, na primer ločevalni znaki na koncu stavkov niso nujni, niti niso nujni zamiki vrstic kot pri Pythonu. Spremenljivke nimajo določenih tipov, nadzor dostopa ima drugačna pravila, podpira razrede in objekte, vendar ima slabšo podporo itd. Java je v teh pogledih ravno nasprotna, posamezni ukazi morajo biti ločeni s podpičjem, spremenljivke imajo določen tip, Java pa ima tudi odlično podporo za objekte in razrede. Zaradi teh olajšav je JS preprostejši za uporabo, vsaj za neizkušene programerje, če pa razvijalec že pozna katerega izmed jezikov, bo verjetno lažje delal z znanim jezikom. Glede hitrosti je težko zagotovo trditi, kateri jezik je hitrejši zaradi različnih načinov uporabe. Javascript se večinoma uporablja pri spletnih tehnologijah, na strežnikih in brskalnikih, Java pa za samostojne aplikacije na različnih napravah. Hitrost je tudi zelo odvisna od optimizacije programa, kar je povezano z izkušenostjo programerja. Razlika se lahko pokaže še v sprotnem prevajalniku, za Javo je starejši in mogoče bolj optimiziran kot JS tolmači, ali pa v hitrosti izvajanja RN aplikacije, ki predstavlja dodaten sloj med Javo in JS. 2.3 Urejevalnik kode Ker primerjana načina razvoja uporabljata različna programska jezika, so različni tudi urejevalniki kode. Za domorodni razvoj je na voljo namenski program Android Studio. Osnova je urejevalnik kode IntelliJ, ki ima dodana orodja za razvoj aplikacij Android, na primer posnemovalnik (ang. emulator) naprav Android, pomočnik za nalaganje in posodabljanje razvojnih orodij itd. Vsebuje tudi bližnjice za hiter dostop do pogosto uporabljenih funkcij.

19 Diplomska naloga 5 React Native nima takšne podpore, saj je samo skupek orodij in knjižnica za Javascript. Izdelovalci niso izdelali namenskega grafičnega orodja, zato mora razvijalec najti alternativo, ki mu najbolj ustreza. Največkrat omenjeni programi so Atom, Visual Studio Code, Sublime in Webstorm. Prva dva sta izdelana na isti osnovi, njuna filozofija pa je preprostost, kompaktnost in razširljivost, podobna sta si tudi vizualno. Sta novejša od ostalih dveh. Sublime je še bolj preprost, saj je v osnovi samo urejevalnik teksta, Webstorm pa je med vsemi najbolj zapleten, vendar tudi močan, saj spada med integrirana razvojna okolja (ang. Integrated Development Kit ali IDE). Najbolj opazna razlika med Android Studiem in ostalimi programskimi okolji so manjkajoča orodja za razvoj aplikacije Android, na primer vdelan Software Development Kit (SDK) in posnemovalnik. Razlika med Android Studiem in Visual Studio Code je vidna na slikah 2.1 in 2.2. Poleg hierarhije datotek in programske kode, ki jih prikazujeta oba, so v Android Studiu vidna tudi statusna okna, povezana z razvojem aplikacij, ponuja pa tudi bližnjice do dodatnih orodij.

20 6 David Mihelj Slika 2.1: Privzeti pogled v Android Studiu. Slika 2.2: Privzeti pogled v Visual Studio Code.

21 Poglavje 3 Aplikacija Kot redni udeleženci v prometu smo razmišljali, da je telefon premalo izkoriščen med vožnjo. Velika prednost mobilnih telefonov je njihova vseprisotnost in povezanost v splet. Aplikacije za pomoč v prometu že obstajajo, na primer Google Maps, ki opozarjajo na zastoje in zaprte ceste, AMZS prikazuje dogodke, ki jih spremlja DARS itd. Nismo pa do sedaj zasledili nobene, ki bi prikazovala manjše dogodke in nevarnosti, ki niso dovolj moteči, da bi ovirali promet, vendar so vseeno nevarni za voznike, kot na primer kamenje na cesti, ustavljen avto v nepreglednem ovinku, zamrznjeno cestišče in tako naprej. Na takšne nevarnosti lahko najhitreje opozorijo vozniki, ki so se jim izognili in s tem pripomorejo k večji varnosti drugih s pomočjo naprave, ki je skoraj vedno z nami. Ker se aplikacijo uporablja tudi med vožnjo, mora biti zelo preprosta in nemoteča, da ne ogroža varnosti na cesti. Glavni element je karta, na kateri se prikazuje lokacija uporabnika (če dovoli uporabo lokacije). Na karti so prikazane nevarnosti v obliki prometnih znakov, ki predstavljajo tip nevarnosti (kamenje, spolzko ali poledenelo cestišče, prometna nesreča, zastoj, generična nevarnost, policija...). Na zaslonu je še nekaj gumbov, med drugim za vnašanje nevarnosti, po kliku se shrani trenutna lokacija, uporabnik pa izbere tip nevarnosti. Po izbiri je nevarnost takoj vidna na glavnem zaslonu, njeni podatki pa se preko spleta prenesejo v strežnik, od koder jo pridobijo 7

22 8 David Mihelj še ostali uporabniki. Vsaka nevarnost ima tudi oceno, zato da se nepravilne odstrani, resnične nevarnosti pa ostanejo. Gumbi za oceno se prikažejo, ko je razdalja dovolj majhna. Preostala gumba sta še za nastavitve, kjer se lahko nastavi tip karte (satelitska slika, ceste ali hibrid), in pa stikalo za sledenje lokaciji. V aplikaciji je čim manj gumbov, da si je lažje zapomniti njihove položaje, poleg tega pa so večji, da jih je lažje zadeti. Postavljeni so narazen in stran od sistemskih gumbov, da bi se uporabnik čim manjkrat zmotil. Dokončana aplikacija je vidna na sliki 3.2. Aplikacija mora torej omogočati: prikaz karte prikaz uporabnikove lokacije na karti prikaz nevarnosti na karti vnašanje novih nevarnosti ocenjevanje nevarnosti... Te funkcionalnosti za normalno delovanje potrebujejo tudi zunanje senzorje in vhodno-izhodne naprave. Mobilno omrežje ali brezžični internet se uporablja za nalaganje karte, komunikacijo z glavnim strežnikom za izmenjavo podatkov o nevarnostih (pridobivanje s strežnika, nalaganje novih in ocenjevanje), pa tudi za določanje lokacije. Za bolj natančno določanje pozicije se uporablja antena GPS. Drugih senzorjev aplikacija ne uporablja. Naprave si nevarnosti izmenjujejo preko glavnega strežnika. Naprave strežniku pošiljajo nove nevarnosti in zahteve za pridobitev nevarnosti, ki se pošlje po pretečenemu času oziroma razdalji. V zahtevi se pošlje tudi trenutna lokacija, zato da strežnik ne pošilja čisto vseh nevarnosti, ampak samo najbližje. Komunikacija poteka preko protokola Representational State Transfer (REST). REST zahtevek ima obliko naslova URL, kjer je določen spletni naslov in dodatni argumenti. Strežnik na podlagi teh podatkov vrne podatke v zahtevani obliki, največkrat XML ali JSON.

23 Diplomska naloga 9 Ker aplikacija ni zelo kompleksna, saj le pošilja in prejema podatke s strežnika in jih prikazuje, je tudi struktura obeh programov precej preprosta. Programa sta zapisana v le eni datoteki in enem razredu (JS samo delno podpira razrede), posamezne funkcionalnosti pa so implementirane v funkcijah. Ker je React Native namenjen ustvarjanju spletnih vmesnikov, se koda vmesnika precej bolj prepleta s programom kot v domorodnem programu, kjer je potrebnih več korakov za spreminjanje vmesnika, do katerega dostopa le posredno. V grobem je struktura aplikacije sestavljena s treh delov, predstavitvenega, omrežnega in upravljalnega. Skica je na sliki 3.1. Upravljani del skrbi za delovanje aplikacije in usmerja tudi druge komponente. Omrežni del komunicira s strežnikom in opravlja tri naloge - na strežnik pošilja zahtevke (za nove nevarnosti in za pridobivanje nevarnosti), sprejema odzive strežnika in po sprejemu sproži postopke za obdelavo podatkov. Uporabniku najbližji je predstavitveni sloj, ki prikazuje uporabniški vmesnik, osvežuje pogled na zemljevidu, prikazuje prejete informacije in oddaja ukaze upravljalnemu delu. Strežnik ima samo dva sloja, podatkovno bazo, ki drži vse nevarnosti ter upravljalni sloj, ki sprejme zahtevke z mobilnih naprav in v podatkovno bazo shrani nove nevarnosti ali pa napravi pošlje nazaj seznam nevarnosti, ki izpolnjujo pogoje. Slika 3.1: Skica arhitekture aplikacije.

24 10 David Mihelj Slika 3.2: Domorodna aplikacija.

25 Poglavje 4 Primerjava Primerjava je razdeljena na dva glavna dela: razvojni in uporabniški. Razvojni del je sestavljen iz primerjave orodij in primerjave komponent aplikacije. Takšna razdelitev je primerna, ker je blizu razvojnemu procesu, zato jo razvijalec hitro razume in hkrati neposredno primerja uporabo in rešitev obeh načinov razvoja. Primerjava je izvedena na način, da se ločeno predstavi način uporabe, na koncu pa direktno primerja, izpostavi razlike in predlaga pravo izbiro z upoštevanjem različnih okoliščin razvoja. Ta postopek najprej predstavi delovanje, zato da ima bralec vsaj osnovno predstavo o uporabi, hkrati pa si lahko že sam ustvari mnenje. Na koncu pa je še direktna primerjava, kjer so izpostavljene razlike, ki jih bralec mogoče ni opazil. Uporabniška primerjava je krajša, ker so razlike manjše. V tem poglavju so primerjane dokončane aplikacije, njihova velikost, odzivnost, razlike v funkcionalnosti in uporabi. Kriteriji so bile različne meritve (odvisno od tipa podatkov, velikost ali čas itd.), v komentarjih pa so podani razlogi za in proti izbiri RN. 11

26 12 David Mihelj 4.1 Namestitev orodij Za razvoj so potrebne tri zadeve - urejevalnik kode, Android SDK in posnemovalnik za testiranje. Za razvoj domorodne aplikacije se lahko uporabi Android Studio, ki vsebuje vse potrebno, ali pa kakšen drugi urejevalnik kode Java (npr. Eclipse), je pa potem treba posebej naložiti SDK in posnemovalnik ter konfigurirati projekt, da omogoča funkcije, ki jih ponuja Studio že privzeto. Tako Android Studio kot Eclipse (najbolj uporabljana IDE-ja za domorodni razvoj) ponujata grafični naložitveni paket, ki ima podoben potek ostalim programom. Ravno tako je Android SDK potreben pri razvoju z React Native. Najlažje se ga pridobi hkrati z Android Studiem, ki vsebuje tudi posnemovalnik. Mogoča je tudi ločena inštalacija, se pa potem upravlja z ukazno vrstico, namesto preko grafičnega vmesnika. Ta lastnost je lahko tudi zaželjiva, saj orodja RN tudi nimajo grafičnih vmesnikov in je ravno tako potrebno uporabljati ukazno vrstico, kar poenoti interakcijo. Za lažjo namestitev RN priporočajo namestitev Node.js, ker vsebuje paketni upravitelj Node.js Package Manager (NPM), s katerim se na preprost način upravlja namestitve in posodablja aplikacije na sistemih Windows. Orodja NPM se uporablja preko ukazne vrstice, kjer se sproži prenos programa, potem pa NPM samodejno poskrbi tudi za namestitev na računalnik. Ta program olajša pripravo projekta React Native, ker poskrbi za prenos, inštalacijo in konfiguracijo, da ima po zaključku razvijalec pripravljen delujoč projekt. Najbolj vidna razlika med domorodnim in Reactovim razvojem je odsotnost grafičnega vmesnika pri nameščanju. Vse potrebno za domorodni razvoj je že zapakirano v enem paketu, namestitveni program pa uporabnika vodi čez celotno namestitev. V grafičnem vmesniku so funkcije bolj razumljivo razložene. Vsa orodja React Native pa se uporablja preko ukazne vrstice, kot je prikazano na sliki 4.1. Za lažjo namestitev je na spletu dokumentacija, ki uporabnike vodi korak za korakom od začetka do delujočega projekta.

27 Diplomska naloga 13 Slika 4.1: Uporaba orodij RN v ukazni vrstici. 4.2 Ustvarjanje projekta Tako React Native kot Android Studio vsebujeta orodje za hitro pripravo novega projekta. V Android Studiu se lahko pri zagonu programa sproži postopek, ki uporabnika vodi skozi pripravo novega projekta. Aplikacija je nato pripravljena na razvoj in zagon. Projekt React Native se pripravi v ukazni vrstici. Predpogoji so Python 2, Node, NPM in Java SDK. Z NPM se najprej naloži React Native CLI, orodja za upravljanje RN v ukazni vrstici. Rezultat je popolnoma pripravljen projekt React Native. Razlika med Android Studiem in React Native je, da Studio uporabnika vodi čez postopek z grafičnim vmesnikom (primer okna na sliki 4.2), za React Native pa je potrebno navodila najti drugje, lahko v razdelku pomoči ukazne vrstice ali na spletu, kjer so navodila bolj obsežna, z opisom postopka in s slikami.

28 14 David Mihelj Slika 4.2: Okno priprave projekta. 4.3 Hierarhija datotek Do določenega nivoja kompleksnosti ni potrebno poznati več kot samo nekaj osnovnih datotek in lokacij. Zavihek Projekt (ang. Project) v Android Studiu prikazuje vse datoteke, povezane z razvojem aplikacije mapa java vsebuje programsko kodo, v tests so shranjeni avtomatizirani testi, v mapi resources pa ostale datoteke, ki jih potrebuje aplikacija, npr. slikovno gradivo. Naštete mape vsebujejo tudi podmape, katerih pomen ni razložen v programu, informacije o njih je potrebno zbrati drugje. Android SDK iz teh datotek ustvari aplikacijo, zato jih projekt React Native ravno tako vsebuje. Glavna datoteka za razvoj aplikacije Android je index.js. Za ios obstaja ločena datoteka zaradi manjših razlik v programu in priporočenih oblikovalskih smernic, večina kode pa je lahko deljene med verzijama. To je glavna datoteka aplikacije, ki se izvede prva po zagonu in vsebuje inicializacijsko kodo za aplikacijo React Native. Prej omenjene datoteke ustvari React Native samodejno.

29 Diplomska naloga Poganjanje aplikacije in izdelava APK Oba načina izdelave imata orodje za zagon razvojne verzije in izdelavo Android Package (APK). Za komuniciranje računalnika z napravami skrbi program Android Development Tools (ADT). Android Studio ima za ta program grafični vmesnik, v katerem so tudi izpisane naprave, tako da lahko razvijalec določi ciljno napravo, na kateri se zažene aplikacija. Če ni določena fizična naprava, se zažene posnemovalnik. React Native ravno tako omogoča hitri zagon, kot ponavadi se proces sproži v ukazni vrstici. V primeru, da fizična naprava ni povezana, se posnemovalnik ne zažene samodejno. Ponuja pa možnost, da so spremembe v kodi takoj vidne na napravi. Brez certifikata se lahko ustvari samo nepodpisan APK, ki se ga uporablja za testiranje, vendar mora imeti naprava vklopljen razvojni način. Zaradi varnosti mora biti aplikacija podpisana s certifikatom, da uporabnik ne naloži nepreverjene aplikacije. 4.5 Struktura aplikacije Glavni koncept pri domorodnem razvoju je aktivnost (ang. Activity), ki predstavlja posamezno okno aplikacije. Aplikacija jih lahko vsebuje poljubno število. Na sliki 4.3 je predstavljen življenjski cikel posamezne aktivnosti. Za spreminjanje delovanja je potrebno originalne metode povoziti in vstaviti lastno kodo. Aplikacijo se za delovanje pripravi v vstopni metodi oncreate v privzeti aktivnosti. V RN je njen najboljši približek metoda componentdid- Mount, vendar je zaradi usmerjenosti v oblikovanje življenjski cikel aplikacije v RN drugačen. Programska koda aplikacije se začne izvajati v oncreate, od koder se kličejo tudi ostale metode aplikacije.

30 16 David Mihelj Slika 4.3: Življenjski cikel domorodne aplikacije. [1]

31 Diplomska naloga 17 Orodja, ki vzpostavijo projekt React Native, pripravijo tudi vstopno datoteko aplikacije, vključijo vse nujne knjižnice (Reactin Component) in funkcije programa. Potek zagona aplikacije je orisan na sliki 4.4. Aplikacija prične izvajanje v metodi constructor, v kateri razvijalec inicializira potrebne podatke za zagon in delovanje. Pred prvim izrisom se izvede componentwillmount, kjer je omogočeno pridobivanje prvih zunanjih podatkov (recimo preko spleta). Metoda render poskrbi za izris na zaslon in se izvaja ves čas delovanja aplikacije, po prvi osvežitvi pa se enkrat izvede še componentdidmount, v katerem se lahko pripravi še zadnje podatke. Uporabna je tudi kot vstopna točka v aplikacijo. Po zaključku tega procesa se prične izvajati osveževalna zanka s slike 4.5. Ta proces je precej drugačen od domorodne aplikacije, ker se aplikacija osvežuje samo po potrebi in ne z določeno frekvenco. Metoda render, ki skrbi za ponoven izris na zaslon, se izvede šele ko metoda shouldupdatecomponent določi, da so v podatkih spremembe. Zatem pride na vrsto componentwillupdate, v kateri lahko programer dodatno manipulira s podatki, preden se ponovno izrišejo.

32 18 David Mihelj Slika 4.4: Začetek izvajanja aplikacije React Native. [4] Slika 4.5: Osveževalni cikel aplikacije React Native. [4]

33 Diplomska naloga Oblikovanje Android Studio vsebuje orodje za grafično oblikovanje aplikacije. Na sliki 4.6 sta vidna dva dela orodja. Grafični del na desni strani je uporaben za prototipe in grafično nezahtevne aplikacije, vsebuje vse tipe grafičnih elementov in razporeditve, da se lahko ustvari prototip postavitve. Sicer je oblikovanje definirano v datoteki XML, izpisani na levi strani, s specifičnimi značkami za Android. V aplikaciji RN je oblikovanje definirano v funkciji render. To funkcijo ogrodje pokliče takrat, ko se pripravlja datoteko XML [2]. Funkcija mora vračati objekt tipa element, ki ga lahko razvijalec definira s kodo Javascript as XML - JSX. To je razširitev za sintakso JS, ki omogoča pisanje označevalne sintakse kar v kodi, brez potrebe po pakiranju v niz. Razširjena sintaksa se uporablja podobno kot HTML, kar je lahko bonus za spletne razvijalce, RN pa pri njegovi uporabi prikazuje boljša opozorila. Podobnost med JSX in HTML je vidna v sliki 4.7. V stavkih JSX je mogoče uporabljati tudi program Javascript. Med zavite oklepaje se lahko vpiše ime spremenljivke, ime funkcije ali kar ukaz, iz katerega se pridobi vrednost. Stavki JSX se pri izgradnji pretvorijo v kodo Javascript, uradna dokumentacija pa pravi, da je kljub temu varno dovoliti uporabniške vnose, ker sistem vse vrednosti spremeni v niz znakov, zato vmešavanje v kodo programa ni mogoče. Pri kompilaciji se JSX pretvori v klice metode React.createElement, ta pa vrne objekt React element, ki vsebuje podane podatke in se uporablja za izgradnjo dokumentno objektnega modela (ang. Document Object Model) (DOM). Elementi React se med izvajanjem ne morejo spreminjati. Če se mora vsebina spremeniti, mora razvijalec posodobiti želene elemente, potem pa poklicati metodo za osvežitev celotne podobe. V ozadju sistem poišče razlike in posodobi samo spremenjene elemente DOM. Filozofija tega sistema je, da vsaka posodobitev predstavlja celotno podobo v enem trenutku.

34 20 David Mihelj Slika 4.6: Datoteka activity.xml. Slika 4.7: Metoda render.

35 Diplomska naloga Stylesheet Ker je React samo knjižnica, ki se uporablja za spletne strani, se ravnokar opisan sistem uporablja samo za pripravo HTML, kjer je mogoče dodatno oblikovanje definirati s CSS, ki pa ga React Native ne podpira. RN zato ponuja StyleSheet. Podobnost s CSS je vidna na sliki 4.8. Ločena definicija oblikovanja izboljša berljivost kode in pohitri izvajanje, saj so stili shranjeni v objektih, ki se jih lahko ponovno uporabi. Stile se ustvari z metodo StyleSheet.create, ki za argument sprejme krovni objekt, ta pa vsebuje druge objekte, kateri predstavljajo selektorje. V selektorskih objektih se nahajajo polja, katerim razvijalec poda želene vrednosti. Glavni navdih je pri obeh načinih razvoja isti, zato sta si filozofiji oblikovanja podobni. Različni sta si tudi v nekaterih bolj bistvenih delih (imena značk, različne datoteke, različni opisni jeziki), vendar ne dovolj, da bi razvijalec samo na podlagi oblikovanja izbral način razvoja, saj se v nekaterih bolj bistvenih delih razvoj domorodne aplikacije in aplikacije React Native bolj razlikujeta in lahko uporabnik napravi bolj smotrno odločitev. Slika 4.8: Objekt za oblikovanje.

36 22 David Mihelj 4.8 Dovoljenja Varovanje zasebnosti uporabnika je zelo pomembno. Za občutljive podatke je zato treba od uporabnika pridobiti dovoljenje, preden jih aplikacija lahko uporablja, za domorodni razvoj pa so na voljo API-ji. Pridobivanje pravic se je z verzijami spreminjalo. Do verzije Android 7.0 so morale biti uporabljene pravice zapisane v datoteki AndroidManifest, uporabniku se prikaže seznam pred inštalacijo in če se strinja, potem se aplikacija naloži in lahko prosto pridobiva vse dovoljene podatke. Če pa se uporabnik ne strinja, se aplikacija niti ne naloži. V zadnjih verzijah so poleg omenjenega načina (ki poskrbi tudi za kompatibilnost s starejšimi verzijami) dodali še zahtevo, da se pred prvo uporabo uporabnika ponovno povpraša po dovoljenju. Pri obeh so funkcije, ki poskrbijo za prikaz dialoga. Tudi v projektu React Native je potrebno urediti datoteko AndroidManifest, ki je enaka domorodni aplikaciji. Razlika pri pridobivanju pravic v kodi je v tem, da je v funkciji RN potrebno definirati tudi obliko prikazanega dialoga, medtem ko funkcija v domorodni aplikaciji za argument sprejme samo zahtevane pravice. 4.9 Shranjevanje podatkov Z RN je mogoče shranjevanje podatkov samo na en način, domorodna aplikacija pa jih ponuja več. V ozadju, izven kontrole programerja, se pri domorodni aplikaciji vsi podatki shranjujejo v lokalno podatkovno bazo (RocksDB ali SQLite, odvisno od podpore na napravi). V RN je na voljo modul AsyncStorage, ki deluje na principu ključ-vrednost. Dokumentacija predlaga, da se ta modul abstrahira za potrebe specifične aplikacije, ker deluje globalno (možna je okvara podatkov, saj so vsem aplikacijam dostopni vsi podatki). Za varnost podatkov je odgovoren programer, saj niso na noben način zaščiteni ali šifrirani. Ker je uporaba dolgoročnega pomnilnika dolgotrajen proces, tudi metoda ponuja asinhrono izvajanje po klicu se glavni program normalno izvaja najprej, klicana funkcija pa deluje v drugi niti in ne upočasnjuje aplikacije, po zaključku pa izvede dodeljeno funkcijo. Domorodni razvoj po drugi

37 Diplomska naloga 23 strani ponuja več metod za različne potrebe aplikacije. Ekvivalent RN ponuja razred SharedPreferences. Na voljo sta dve metodi, ena za argument potrebuje samo podatke, drugi pa se lahko poda še ime datoteke, kamor se podatki shranjujejo. V nasprotju z RN so uporabljene datoteke dostopne samo aktualni aplikaciji, zato ni nevarnosti za poškodovanje podatkov. Datoteke morajo biti ustvarjene pred uporabo in zapisane v AndroidManifestu. Za zapisovanje in branje je potrebno uporabiti metode, primerne za tip podatka, npr. putint in getint za celoštevilske vrednosti. Te metode ne podpirajo večnitnega izvajanja samodejno, ampak mora za to poskrbeti programer Senzorji V nasprotju z RN je pri domorodnem razvoju uporaba senzorjev dobro podprta. S senzorji se lahko upravlja samo preko zunanjih knjižnic, zato je koda za vsak senzor različna in jih bomo opisali ločeno. Zaradi raznolikosti naprav je potrebno najprej določiti, če je senzor na voljo, kar je odvisno od naprave (če vsebuje strojno opremo) in verzije operacijskega sistema [3]. Ti podatki se pri domorodni aplikaciji nahajajo v instanci objekta tipa SensorManager, ki se ga pridobi od operacijskega sistema. Ta objekt vsebuje vse metode za delo in vse podatke o razpoložljivih senzorjih, seznam pa je mogoče tudi omejiti na določene tipe. Vsak tip ima različne podatke in razpone vrednosti, zato je delo z vsakim senzorjem drugačno, vendar razred ponuja enovit način dostopa do teh informacij. Podatke se lahko pridobi ob eksplicitni zahtevi, ob spremembah pa lahko prožijo tudi vrnitvene metode.

38 24 David Mihelj 4.11 Orientacija V času izdelovanja aplikacije React Native ni ponujal kontrole nad obračanjem zaslona, je pa na spletu mogoče dobiti modul react-native-orientation. Najlažje se ga namesti z NPM-jem, tako da je po sprožitvi ukaza modul že pripravljen za uporabo brez dodatnega konfiguriranja. Modul vsebuje pet metod, štiri od teh zaklenejo orientacijo, ena pa omogoči prosto obračanje. Poleg teh metod sta še dva dogodka, ki se sprožita ob spremembi orientacije. Domorodne funkcije so bolj robustne, zaklep orientacije je mogoč na dva različna načina v datoteki XML za oblikovanje aktivnosti in v programski kodi. Spreminjanje datoteke XML je najhitrejši način, vendar nefleksibilen, saj naknadno spreminjanje v kodi ni omogočeno. V programski kodi se doseže podobne rezultate kot s prej omenjenim dodatkom v RN, vendar je programska koda bolj zapletena, saj ima več funkcionalnosti in je bolj splošnonamenska Lokacija Lokacija je ena izmed informacij, za katere je potrebno imeti dovoljenje uporabnika. Obstajata dve različni lokacijski storitvi, Coarse location (groba) in Fine location (natančna). Razlikujeta se v natančnosti, groba lokacija uporablja samo mobilni signal, natančna lokacija pa tudi senzor GPS. Obe storitvi imata ločeni dovoljenji. Tako domorodni kot razvoj RN imata enak potek pridobivanja lokacijskih podatkov, le malo se razlikujeta v manjših podrobnostih, npr. v imenih razredov. Pri obeh je potrebno pred zahtevo lokacije preveriti, če je uporabnik podal dovoljenje za uporabo. Aplikacija bo ravno tako delovala brez tega preverjanja, vendar če nima dovoljenja, mu v naslednjem koraku, ko se zahteva podatke, funkcija ne bo vrnila podatkov. Preverjanje je potrebno tudi zato, da se lahko uporabniku pred prvo uporabo ponudi dialog za dovoljenje. Razlika pa se pokaže pri funkciji za pridobivanje lokacije. Pri domorodni aplikaciji je pridobivanje preprostejše, saj se uporabi dve funkciji, vsako za eno koordinato (obstaja tudi funkcija ki vrne zadnjo znano lokacijo, za boljšo odzivnost). Pri React Native je po-

39 Diplomska naloga 25 stopek malo drugačen zaradi stanja. Funkcija za pridobivanje lokacije vrača rezultate v vrnitveni funkciji, ki se izvede ob vsaki zaznani spremembi koordinat, medtem ko mora pri domorodnem razvoju programer sam poskrbeti za osveževanje vmesnika Kompas Še ena izmed trenutno nepodprtih funkcionalnosti v RN je pridobivanje usmerjenosti naprave oziroma kompas. Ta funkcionalnost je dostopna v paketu react-native-simple-compass. Paket doda dve novi funkciji. Z eno se sproži sledenje obračanju, ki s prvim argumentom določi, ob kolikšni razliki v stopinjah se sproži vrnitvena funkcija, ki je podana v drugem argumentu. Pridobivanje orientacije v domorodni aplikaciji je spet bolj zapleteno, ker funkcija nima ovojnice, ki na poenostavljen način vrača želene vrednosti. API ponuja dostop do veliko različnih senzorjev (merilnik pospeškov, magnetomer, žiroskop...), s katerimi je mogoče na različne načine in z različno natančnostjo pridobiti usmerjenost. Senzor tipa TYPE ROTATION VECTOR ob spremembi meritev sproži dogodek, kateremu dostavi štiri decimalna števila, ki skupaj predstavljajo usmerjenost naprave v obliki kvaternionov. Tretja vrednost po vrsti v tem objektu predstavlja rotacijo okrog osi Z, oziroma kot med usmerjenostjo naprave in severom Vibracija Vibracije so v RN podprte z asinhrono funkcijo. Pred uporabo je treba v datoteko AndroidManifest dodati dovoljenje. Glede na argumente ima različne rezultate - celoštevilski argument bo določil čas enakomernega vibriranja v milisekundah, seznam celih števil definira vzorec (liha števila so premori, soda števila čas vibracije), zadnji argument pa omogoči ponavljanje vzorca do preklica. Domorodna aplikacija vsebuje nekaj korakov več, ker je potrebno od sistema najprej pridobiti storitev za vibriranje. Proženje vibracij je odvisno

40 26 David Mihelj od nivoja API (verzija sistema Android). Do verzije 26 se uporablja metoda vibrate, uporaba je zelo podobna RN. Celo število določi dolžino vibriranja, seznam števil pa vzorec. Majhna razlika je v tem, da se ponavljanje vzorca določi z indeksom začetka ponovitev v podanem seznamu. V novih verzijah je potrebno namesto surovih vrednosti uporabiti razred VibrationEffect (ki se ga instancira z želenimi vrednostmi) Komunikacija Oba načina razvoja omogočata komunikacijo s strežnikom REST brez dodatnih knjižnic. Strežnik REST sprejema zahteve POST, ki so standardizirane, zato so podani podatki zmeraj enaki, imata pa drugačne postopke in metode. V sklopu headers se lahko zahtevku POST doda tudi druge informacije v obliki ključ-vrednost, ki jih prejme strežnik, na primer avtorizacijski podatki (uporabniško ime in geslo za dostop do strežnika) pod ključem Authorization in oblika vrnjenih podatkov (npr. JSON) pod ključem Accept. React Native za komunikacijo s strežnikom ponuja funkcijo fetch, ki za argumente sprejme naslov URL in objekt, v katerem so nastavljene prej omenjene vrednosti. Izvaja se v ločeni niti, da je aplikacija odzivna (komunikacija preko spleta je relativno počasna). Ko se zaključi, se izvede vrnitvena metoda, podana v argumentu. Rezultat je generičen in neberljiv objekt z odzivom strežnika, ki se ga lahko pretvori v objekt, strukturiran kot JSON, da se na lažji način dostopa do podatkov. V domorodni aplikaciji je postopek zelo podoben, samo da se izkorišča funkcionalnost razredov v RN se pokliče funkcijo fetch, kateri se poda potrebne argumente, v Javi pa je potrebno ustvariti objekt (tipa HttpGet), ki v konstruktorju zahteva naslov URL strežnika (kot v RN), od tukaj naprej pa se manipulira s tem novim objektom. Dodatne podatke se zahtevku dodeli s funkcijo, argumenta sta ključ in vrednost. Ta funkcija ustvari objekt, ki se poda kot drugi argument funkciji fetch. Za komunikacijo s strežniki se uporablja objekt DefaultHttpClient, ki tudi skrbi za sprejem odziva. Celoten rezultat s strežnika se shrani v objekt, za lažjo

41 Diplomska naloga 27 uporabo pridobljenih podatkov pa se ga lahko pretvori v drug razred, ki izpusti velikokrat neuporabne podatke. Ta objekt potem vsebuje niz z vsebino prejetega rezultata JSON Testiranje Aplikacijo se testira na enak način, če je domorodna ali narejena z RN. Razvijalci imajo na izbiro fizično napravo (npr. mobilni telefon ali tablico) in posnemovalnik (na sliki 4.9 je prikazan posnemovalnik v Android Studiu). Posnemovalnik je program, ki omogoča izvajanje programov enega operacijskega sistema na drugem. Z Googlovim posnemovalnikom je mogoče v Studiu (za domorodne aplikacije) in z orodji RN pognati aplikacijo na osebnem računalniku brez izdelave inštalacijskega paketa. V ADT je viden kot fizična naprava. To tudi pomeni, da lahko tudi fizično napravo uporabljamo na enak način. V Android Studiu je tudi mogoče z enim klikom pognati aplikacijo na napravi.

42 28 David Mihelj Slika 4.9: Posnemovalnik.

43 Diplomska naloga Primerjava aplikacij Aplikacija ni dovolj zahtevna, da bi uporabniki lahko opazili zmogljivostne razlike, s stališča izkušnje sta obe praktično enaki z zelo majhnimi razlikami. En pomemben kriterij za uporabnike je velikost aplikacije (recimo zaradi omejenih količin podatkov ali nepotrpežljivosti uporabnika). Večje razlike bo opazil razvijalec, zato se bomo bolj osredotočili na to plat. Pri obeh načinih razvoja je mogoče doseči enako delovanje, pot do tega cilja pa se pri določenih komponentah razlikuje. Razlike v delovanju aplikacije so za uporabnika sicer transparentne. Ena tehnika za dosego paritete funkcionalnosti v aplikaciji React Native je uporaba domorodnih klicev. Precej funkcionalnosti v RN trenutno manjka, a jih je mogoče pridobiti s knjižnicami, ki jih ustvarjajo zanesenjaki in so dostopne na spletu. Tudi te zunanje knjižnice so domorodna koda, katere se kliče iz programa Javascript. Za knjižnice ne obstaja osrednji portal, kjer bi bile zbrane, ampak jih je potrebno najti vsako posebej. Vse so odprtokodne in ponavadi shranjene na različnih spletnih repozitorijih (npr. GitHub), kjer so napisana tudi navodila za uporabo. Večino se naloži kar preko ukazne vrstice z NPM. Zanimiv stranski učinek zunanjih knjižnic je, da v veliko primerih olajšajo uporabo senzorjev, saj bolj zapleteno domorodno kodo zapakirajo v preprostejše funkcije. Programerji lahko opazijo razliko pri količini napisane kode, kar je lahko en kriterij za določanje zahtevnosti programa. Sam po sebi ni zanesljiv, vendar lahko skupaj z drugimi oriše približno zahtevnost projekta. Domorodni projekt je spisan v približno 1650 vrsticah, React Native pa v približno 600 vrsticah. Nobena od teh dveh ni optimizirana. Program React Native je krajši, ker so funkcije preprostejše za uporabo. Veliko več se uporablja statične razrede, ki direktno dostopajo do funkcionalnosti naprave, medtem ko se v domorodnem programu praviloma pridobiva reference do funkcionalnosti od operacijskega sistema. Zaradi bolj kompleksnih verig referenc so stavki daljši in vsebujejo več klicev metod, bolj kompleksno pa je tudi upravljanje vmesniških komponent (programer mora skrbeti za zaznavanje

44 30 David Mihelj interakcije in dinamično spreminjanje elementov), kjer je RN preprostejši, saj je prirejen programiranju vmesnikov. Sicer v zmožnostih obeh ni razlike. Domorodna aplikacija omogoča najbolj nizkonivojski dostop, zato ima teoretično največjo zmogljivost. Vseeno pa orodja React Native za oblikovanje niso nič manj zmogljiva, dodaten plus za nekatere razvijalce pa je še podobnost s HTML in CSS, ki sta že dolgo standard na spletu. Problematična točka za programerje je lahko tudi čas izdelave aplikacije, ker je lahko čakalni čas do izdelanega paketa zelo dolg in bi upočasnil razvoj. V primeru te aplikacije se to ni zgodilo. Je pa tudi v tej aplikaciji opazna razlika. Najdaljši časi so pri vzpostavitvi projekta in prvem zagonu, saj se takrat ustvarijo še preostale potrebne datoteke za aplikacijo in so lahko dolgi po več minut. Daljši od povprečja so tudi ob vsakem zagonu, ko programa ni v pomnilniku. Pri domorodnem razvoju so časi konsistentno krajši. Rezultati so zapisani v tabeli. Odstopajo po več sekund, zelo je odvisno od trenutne obremenjenosti računalnika (programi v ozadju, protivirusni programi, orodja v sistemu Windows, spletni brskalniki). Povprečen čas pri RN je 9x daljši kot pri domorodnem razvoju. Daljši časi so posledica dejstva, da se mora projekt RN najprej pretvoriti v domorodni projekt, šele potem se lahko zgradi aplikacijo. Zanimiv podatek pri RN je, da se ob ponovnem zagonu čas zagona na emulatorju ne razlikuje bistveno od povprečja. Razlika je opazna tudi pri izdelavi paketa APK, vendar je manjša. Poudariti je treba, da so časi zelo odvisni od strojne opreme, obremenjenosti računalnika in zahtevnosti programa. Pridobljene vrednosti nakazujejo samo trend, da je React Native v povprečju počasnejši od orodij v Android Studiu. Za bolj natančne zaključke je potrebna analiza več aplikacij.

45 Diplomska naloga 31 Rezultati so bili pridobljeni na namiznem računalniku z naslednjimi specifikacijami: Procesor: Intel i GHz Pomnilnik: 4 GB DDR MHz Trdi disk: Samsung 850 Evo 250 GB (SSD, SATA II priključek) Matična plošča: Asus P7H55-M SI Grafična kartica: AMD Radeon R GB (Asus) Tabela 4.1: Časi izdelave APK Povprečen Ogrodje Čas 1 Čas 2 Čas 3 Povprečje Android Studio 3,696 s 4,210 s 1,766 s 3,224 s React Native 29,324 s 28,703 s 31,014 s 29,680 s čas izdelave APK Velikost APK Android Studio React Native Absolutna razlika Povečanje odstotkih 3,224 s 29,680 s 26,456 s 920,596 % 4,480 MB 8,124 MB 3,644 MB 181,250 % Tabela 4.2: Primerjava časov in velikosti v

46 32 David Mihelj Prva stvar, ki jo opazi uporabnik je velikost aplikacije, kjer je RN ponovno bolj potraten, vendar v manjši meri kot pri času izdelave. Večji je za približno 4 MB. Aplikacija ni dovolj velika, da bi uporabnik imel probleme zaradi porabe prostora, morajo pa razvijalci upoštevati, da je na Google Play postavljena meja pri 100 MB, ob presežku katere se prikaže opozorilo o velikosti aplikacije. Aplikacije, ki presegajo to mejo (tudi če samo za nekaj kilobajtov), imajo precej nižje število prenosov. Razlika pri RN je v redkih primerih dovolj velika, da potisne aplikacijo čez mejo. Za primerjavo, osnovna aplikacija samo z dvema vrsticama teksta je velika 7,794 MB, če je ustvarjena z RN verzije 0.52, v kateri je narejena tudi aplikacija Driver Assistant. V kasnejših verzijah se je velikost povečala, v verziji 0.58 na 16,612 MB. Podobno velika je tudi v ogrodju Expo, ki se uporablja v zadnji verziji RN. Expo so dodatna orodja za razvoj v React Native, ki pridodajo tudi k velikosti aplikacije. Velikost je mogoče zmanjšati, na primer če se loči verzije za procesorje x86 in ARM (večino naprav Android poganja procesor ARM). Posledično se ustvarita dva paketa APK, paket ARM pa je manjši, saj ne vsebuje kode za x86 naprave. Druga možnost je uporaba orodja kot je ProGuard, ki iz programa oklesti neuporabljeno kodo in knjižnice. Razlike je treba pravilno interpretirati. V primeru te aplikacije so se razlike merile v večkratnikih, vendar velik del dodatnega časa in prostora uporabijo orodja RN (na primer za interpretiranje Javascripta v Javo). Ta orodja so vedno enake velikosti, ampak pri tako majhni aplikaciji predstavljajo velik delež.

47 Diplomska naloga Odzivnost Pri uporabi ni zaznavnih razlik. Čas zagona je zelo kratek in je enak pri obeh verzijah. Prva dlje trajajoča zadeva je nalaganje podatkov mape, ki pa je odvisna od hitrosti interneta. Edina razlika, ki jo uporabnik opazi, je nalaganje slik. Element, ki prikazuje slike v RN, samodejno poskrbi za nalaganje v drugi programski niti, zato se program ne zaustavi med čakanjem. Se pa zato slike prikažejo na zaslonu čez čas in ne hkrati. Programer lahko prepreči dinamično nalaganje in prikaže vse slike naenkrat, če določi, da program počaka vse slike, preden prikaže nov dialog. V domorodnem programu je to privzeto delovanje, ker se nalaganje slik ne izvaja vzporedno. Programer mora ročno poskrbeti, da se sproži vzporedna nit, v kateri se nalagajo slike. Gumbi so enako odzivni, komunikacija s spletnim strežnikom traja enako dolgo na istih povezavah... S stališča odzivnosti in uporabniške izkušnje razlike niso dovolj velike, da bi se na njihovi podlagi odločili za eno izmed orodij, saj je mogoče z boljšo programsko kodo izenačiti delovanje obeh Povzetek Rezultati primerjave so povzeti v tabeli 4.3. Tabela je razdeljena po komponentah aplikacije, pri vsaki pa je razloženo, kateri način razvoja ima uporabo bolje implementirano. Razvijalec lahko izbere React Native ali domorodni razvoj glede na število kategorij, ki imajo boljšo rešitev pri najbolj pomembnih zahtevah aplikacije in razvijalcev, npr. če imajo oblikovalci veliko izkušenj s spletnimi tehnologijami ali pa če ima aplikacija zapleten in dinamičen vmesnik, potem je boljša izbira RN.

48 34 David Mihelj Kategorija Boljša Razlog rešitev Namestitev orodij Domorodna aplikacija Za pripravo domorodnega razvojnega okolja je dovolj prenos enega paketa, za React Native se jih potrebuje več. Ustvarjanje projekta Domorodna aplikacija Grafična orodja vodijo skozi celoten postopek, React Native potrebuje zunanjega vodiča in ročno pisanje ukazov. Poganjanje aplikacije Domorodna aplikacija Pri obeh je skorajda enako preprosto pognati aplikacijo za testiranje, Android in izdelava ali aplikacija je malo lažji zaradi gumba, React Native APK React Native pa ima prednost v tem, da se lahko aplikacijo posodobi med izvajanjem. Oblikovanje React Native Zaradi podobnosti s spletnimi tehnologijami, ki so močne in splošno znane Pridobivanje dovoljenj Domorodna aplikacija ali aplikacija React Native Postopek je podoben, se pa potrebuje zunanjo knjižnico za React Native Shranjevanje React Native React Native potrebuje dodatno knjižnico, ki pa so lažje za uporabo kot pisanje domorodne kode Uporaba senzorjev Domorodna React Native potrebuje dodatne aplikacija knjižnice za vsak senzor posebej, je ali aplikacija React Native pa potem dostop do senzorjev preprostejši Spletna komunikacija Domorodna Praktično enaka uporaba aplikacija ali aplikacija React Native Končna aplikacija Domorodna aplikacija ali aplikacija React Native Zelo odvisno od potreb in razvijalcev, bolj natančno opisano drugje Tabela 4.3: Pregled primerjave

49 Poglavje 5 Zaključek Za primerjavo smo razvili dve inačici aplikacije. Primerjava je razdeljena na razvojni in uporabniški del, ki sta še naprej razdeljena na kategorije. Pri razvojnem delu so primerjana IDE in orodja, ki jih vsebujeta Android Studio in React Native, ter posamezne komponente aplikacije (recimo spletna komunikacija in shranjevanje podatkov). Pri uporabniškem delu sta primerjani končni aplikaciji in njuni deli - velikost, izgled, funkcionalnost, odzivnost... Če povzamemo, bi domorodni razvoj priporočali razvijalcem, ki bolje poznajo Javo kot Javascript, ali če je aplikacija strojno zahtevna (ker so lahko bolj optimizirane) ali pa zaradi boljših orodij, ker ni časa za učenje RN. React Native je bolj primeren za spletne razvijalce zaradi Javascripta in sistema oblikovanja, več podprtih operacijskih sistemov in za aplikacije, kjer se informacije pogosto spreminjajo. Za zelo neizkušene programerje je bolj primeren razvoj domorodne aplikacije, ker so orodja veliko bolj prijazna do začetnikov, predvsem zaradi vodiča in grafičnega vmesnika. Za implementacijo nekaterih komponent, npr. pridobivanje dovoljenj, shranjevanje, orientacijo ali uporabo senzorjev, je pri aplikaciji RN potrebna zunanja knjižnica. Vložen čas učenja knjižnice se nato ponavadi poravna z lažjo uporabo. Z RN je mogoče ustvariti enako aplikacijo po izgledu in funkcionalnosti, razlika je v velikosti inštalacijskega paketa, kar vpliva na zelo majhne aplikacije, ali pa na tiste, ki so blizu meje, kjer Google Play vpraša za vklop 35

50 36 David Mihelj brezžičnega interneta. Odločitev je zato bolj odvisna od specifik razvoja in aplikacije. Zelo pomembno je znanje programerjev, ker na razvojni čas zelo vpliva znanje uporabljenih orodij. Kljub podobnemu imenu sta si Java in Javascript precej različna, saj sta namenjena različnemu delu. Java je bolj splošnonamenska, Javascript pa je bolj usmerjen v spletne tehnologije. Zaradi teh razlik v filozofiji lahko drugače vajenim programerjem ne ustreza. Drugačna so tudi programerska orodja in okolja, kar ima podobne posledice. Naslednje vprašanje se tiče potreb projekta. React Native ima dve specifiki. Prva je podpora za več operacijskih sistemov. Z majhnimi spremembami v kodi se lahko ustvari aplikacijo za Android in ios hkrati. V primeru, da projekt nima dovolj časa ali izurjenih programerjev za razvoj dveh ločenih domorodnih aplikacij, se lahko privarčuje veliko časa. Druga posebnost je usmerjenost v uporabniške vmesnike, kar skupaj s programskim konstruktom state precej olajša delo z vmesnikom. Celotno ogrodje je zasnovano okrog stanja, v katerem so shranjeni vsi podatki aplikacije, uporabniški vmesnik pa se posodobi samodejno. Nekatere aplikacije, ki uporabljajo veliko podatkov, ki se pogosto spreminjajo, lahko to sposobnost dobro izkoristijo. Zmožnosti RN so tako skorajda enakovredne domorodnemu razvoju v Javi, manjkajo pa določene funkcionalnosti, ki se jih pridobi z knjižnicami, vendar jih je treba najprej najti. Večinoma so preproste za uporabo, ker imajo zelo ozko namembnost. Sicer pa je mogoče tudi klicanje domorodnih metod iz programov RN. Razvoj domorodne aplikacije je v nasprotju bolj tehnično zahteven. Java je bolj rigidna, zaradi nižjega dostopa je potrebne več kode za enako delovanje. To se najbolj opazi pri upravljanju z vmesniki, kjer je kode občutno več in je manj intuitivna. Druga plat zahtevnosti pa so manjše aplikacije in hitrejše delovanje, saj je preprostost React Native rezultat več slojev abstrakcije. Druga plat domorodnega razvoja pa so bolj dodelana orodja, ki jih je lažje uporabljati kot ukazno vrstico, preko katere se upravlja z React Native. Android Studio uporabnika vodi čez proces vzpostavitve projekta, nalaganja posnemovalnika, razvojnih orodij, ustvarjanje paketov itd. React Native niti

Vaja 2 Virtualizacija fizičnih strežnikov in virtualni PC A. Strežnik Vmware ESX Namestitev strežnika VMware ESX 3.5 na fizični strežnik 2. Nas

Vaja 2 Virtualizacija fizičnih strežnikov in virtualni PC A. Strežnik Vmware ESX Namestitev strežnika VMware ESX 3.5 na fizični strežnik 2. Nas Vaja 2 Virtualizacija fizičnih strežnikov in virtualni PC A. Strežnik Vmware ESX 3.5 1. Namestitev strežnika VMware ESX 3.5 na fizični strežnik 2. Nastavitve strežnika ESX 3. Namestitev in nastavitve VM

Prikaži več

NAVODILA ZA UPORABO K01-WIFI Hvala, ker ste se odločili za nakup našega izdelka. Pred uporabo enote skrbno preberite ta Navodila za uporabo in jih shr

NAVODILA ZA UPORABO K01-WIFI Hvala, ker ste se odločili za nakup našega izdelka. Pred uporabo enote skrbno preberite ta Navodila za uporabo in jih shr NAVODILA ZA UPORABO Hvala, ker ste se odločili za nakup našega izdelka. Pred uporabo enote skrbno preberite ta in jih shranite za prihodnjo rabo Vsebina 1. Pregled 2. Sistem 3. Prednosti 4. Upravljanje

Prikaži več

IZGRADNJA PREDSTAVITVENE SPLETNE STRANI GLUCOWATCH Avtor: Marko Zajko Projekt delno financira Evropska unija, in sicer iz Evropskega socialnega sklada

IZGRADNJA PREDSTAVITVENE SPLETNE STRANI GLUCOWATCH Avtor: Marko Zajko Projekt delno financira Evropska unija, in sicer iz Evropskega socialnega sklada IZGRADNJA PREDSTAVITVENE SPLETNE STRANI GLUCOWATCH Avtor: Marko Zajko UPORABLJENE TEHNOLOGIJE Za izdelavo predstavitvene spletne strani smo izbrali tehnologije, ki zagotavljajo: Hitro delovanje spletne

Prikaži več

1 MMK - Spletne tehnologije Vaja 5: Spletni obrazci Vaja 5 : Spletni obrazci 1. Element form Spletni obrazci so namenjeni zbiranju uporabniških podatk

1 MMK - Spletne tehnologije Vaja 5: Spletni obrazci Vaja 5 : Spletni obrazci 1. Element form Spletni obrazci so namenjeni zbiranju uporabniških podatk 1 MMK - Spletne tehnologije Vaja 5: Spletni obrazci Vaja 5 : Spletni obrazci 1. Element form Spletni obrazci so namenjeni zbiranju uporabniških podatkov in njihov prenos med spletnimi mesti. Obrazec v

Prikaži več

VPELJAVA MDM V DRŽAVEM ZBORU MATJAŽ ZADRAVEC

VPELJAVA MDM V DRŽAVEM ZBORU MATJAŽ ZADRAVEC VPELJAVA MDM V DRŽAVEM ZBORU MATJAŽ ZADRAVEC Državni zbor v številkah 90 poslancev 9 + 1 poslanska skupina 150+ mobilnih naprav (OS Android, ios) 500+ internih uporabnikov, 650+ osebnih računalnikov, 1100+

Prikaži več

PowerApps

PowerApps ko tehnologija postane brezmejna strast Microsoft PowerApps Uporabniška navodila Avtorji Brina Gomboc, Lucija Kos, Damjana Krampač Mentorici dr. Simona Sternad Zabukovšek Sara Cokan, mag. ekon. in posl.

Prikaži več

Navodila za programsko opremo FeriX Namestitev na trdi disk Avtor navodil: Martin Terbuc Datum: December 2007 Center odprte kode Slovenije Spletna str

Navodila za programsko opremo FeriX Namestitev na trdi disk Avtor navodil: Martin Terbuc Datum: December 2007 Center odprte kode Slovenije Spletna str Navodila za programsko opremo FeriX Namestitev na trdi disk Avtor navodil: Martin Terbuc Datum: December 2007 Center odprte kode Slovenije Spletna stran: http://www.coks.si/ Elektronski naslov: podpora@coks.si

Prikaži več

Microsoft Word - CNC obdelava kazalo vsebine.doc

Microsoft Word - CNC obdelava kazalo vsebine.doc ŠOLSKI CENTER NOVO MESTO VIŠJA STROKOVNA ŠOLA STROJNIŠTVO DIPLOMSKA NALOGA Novo mesto, april 2008 Ime in priimek študenta ŠOLSKI CENTER NOVO MESTO VIŠJA STROKOVNA ŠOLA STROJNIŠTVO DIPLOMSKA NALOGA Novo

Prikaži več

Microsoft Word - CN-BTU4 Quick Guide_SI

Microsoft Word - CN-BTU4 Quick Guide_SI Bluetooth Dongle Artikel: CN-BTU4 NAVODILA v1.0 Sistemske zahteve Zahteve za PC: - Proc.: Intel Pentium III 500MHz or above. - Ram: 256MB ali več. - Disk: vsaj 50MB. - OS: Windows 98SE/Me/2000/XP - Prost

Prikaži več

NEVTRIN d.o.o. Podjetje za razvoj elektronike, Podgorje 42a, 1241 Kamnik, Slovenia Telefon: Faks.: in

NEVTRIN d.o.o. Podjetje za razvoj elektronike, Podgorje 42a, 1241 Kamnik, Slovenia Telefon: Faks.: in NEVTRIN d.o.o. Podjetje za razvoj elektronike, Podgorje 42a, 1241 Kamnik, Slovenia Telefon: +386 1 729 6 460 Faks.: +386 1 729 6 466 www.nevtrin.si info@elektrina.si USB RFID READER Navodila za uporabo?

Prikaži več

Microsoft Word - CNR-BTU3_Bluetooth_vmesnik

Microsoft Word - CNR-BTU3_Bluetooth_vmesnik CNR-BTU3 Bluetooth vmesnik A. Vsebina pakiranja Bluetooth USB Adapter Bluetooth programska oprema in CD z gonilniki Navodila za uporabo in CD 1. Namestitev Bluetooth programske opreme za Windowse 1. Vstavite

Prikaži več

Document ID / Revision : 0519/1.3 ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov

Document ID / Revision : 0519/1.3 ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov Gospodarski subjekti Definicija: V skladu z 2. členom Izvedbene uredbe Komisije (EU) 2018/574

Prikaži več

Nameščanje Adopt Open Java Development Kit 8

Nameščanje Adopt Open Java Development Kit 8 Nameščanje Adopt Open Java Development Kit 8 za Windows x64 IZUM, 2019 IZUM, COBISS, COMARC, COBIB, COLIB, CONOR, SICRIS, E-CRIS so zaščitene znamke v lasti javnega zavoda IZUM. KAZALO VSEBINE 1 Uvod...

Prikaži več

Nameščanje Adopt Open Java Development Kit 8

Nameščanje Adopt Open Java Development Kit 8 Nameščanje Adopt Open Java Development Kit 8 za Windows x64 IZUM, 2019 IZUM, COBISS, COMARC, COBIB, COLIB, CONOR, SICRIS, E-CRIS so zaščitene znamke v lasti javnega zavoda IZUM. KAZALO VSEBINE 1 Uvod...

Prikaži več

Slide 1

Slide 1 Projektno vodenje PREDAVANJE 7 doc. dr. M. Zajc matej.zajc@fe.uni-lj.si Projektno vodenje z orodjem Excel Predstavitev Najbolj razširjeno orodje za delo s preglednicami Dva sklopa funkcij: Obdelava številk

Prikaži več

Poročilo za 1. del seminarske naloge- igrica Kača Opis igrice Kača (Snake) je klasična igrica, pogosto prednaložena na malce starejših mobilnih telefo

Poročilo za 1. del seminarske naloge- igrica Kača Opis igrice Kača (Snake) je klasična igrica, pogosto prednaložena na malce starejših mobilnih telefo Poročilo za 1. del seminarske naloge- igrica Kača Opis igrice Kača (Snake) je klasična igrica, pogosto prednaložena na malce starejših mobilnih telefonih. Obstaja precej različic, sam pa sem sestavil meni

Prikaži več

Strojna oprema

Strojna oprema Asistenta: Mira Trebar, Miha Moškon UIKTNT 2 Uvod v programiranje Začeti moramo razmišljati algoritmično sestaviti recept = napisati algoritem Algoritem za uporabo poljubnega okenskega programa. UIKTNT

Prikaži več

Chapter 1

Chapter 1 - 1 - Poglavje 1 Uvod v podatkovne baze - 2 - Poglavje 1 Cilji (Teme).. Nekatere domene, kjer se uporabljajo podatkovne baze Značilnosti datotečnih sistemov Problemi vezani na datotečne sisteme Pomen izraza

Prikaži več

Navodila za uporabo programske opreme OTRS verzija Administracijska navodila Avtor navodil: Sebastijan Šilec Datum: December 2007 Center odprte

Navodila za uporabo programske opreme OTRS verzija Administracijska navodila Avtor navodil: Sebastijan Šilec Datum: December 2007 Center odprte Navodila za uporabo programske opreme OTRS verzija 2.2.3 Administracijska navodila Avtor navodil: Sebastijan Šilec Datum: December 2007 Center odprte kode Slovenije Spletna stran: http://www.coks.si/ Elektronski

Prikaži več

Vprašanja za 2. izpitno enoto poklicne mature Strokovni predmet NPA Vprašanja Visual C# (4. letnik) 1. Uporabniški vmesnik razvojnega okolja Visual C#

Vprašanja za 2. izpitno enoto poklicne mature Strokovni predmet NPA Vprašanja Visual C# (4. letnik) 1. Uporabniški vmesnik razvojnega okolja Visual C# Vprašanja za 2. izpitno enoto poklicne mature Strokovni predmet NPA Vprašanja Visual C# (4. letnik) 1. Uporabniški vmesnik razvojnega okolja Visual C# Pomen posameznih oken uporabniškega vmesnika, urejevalnik

Prikaži več

Izdelava spletnih aplikacij z ogrodjem Angular

Izdelava spletnih aplikacij z ogrodjem Angular Univerza v Ljubljani Fakulteta za računalništvo in informatiko Vid Stoschitzky Izdelava spletnih aplikacij z ogrodjem Angular DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

Prikaži več

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO WLAN usmerjevalnik TP LINK Archer C5 Kataloška št.:

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO WLAN usmerjevalnik TP LINK Archer C5 Kataloška št.: SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: 75 31 33 www.conrad.si NAVODILA ZA UPORABO WLAN usmerjevalnik TP LINK Archer C5 Kataloška št.: 75 31 33 KAZALO 1. PRIKLOP STROJNE OPREME...3 2. KONFIGURACIJA

Prikaži več

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM POGOSTA VPRAŠANJA IN ODGOVORI Ljubljana, Verzija 1.0

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM POGOSTA VPRAŠANJA IN ODGOVORI Ljubljana, Verzija 1.0 TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM POGOSTA VPRAŠANJA IN ODGOVORI Ljubljana, 12.11.2018 Verzija 1.0 KAZALO 1 REGISTRACIJA... 3 1.1 Katere podatke potrebujem za registracijo/kreiranje

Prikaži več

(Microsoft Word - U\350enje telegrafije po Kochovi metodi.doc)

(Microsoft Word - U\350enje telegrafije po Kochovi metodi.doc) MORSE UČENJE PO KOCHOVI METODI Računalniški program za učenje skupaj z nekaterimi dodatnimi datotekami dobite na spletni strani avtorja: http://www.g4fon.net/. Zanimive strani so tudi: - http://www.qsl.net/n1irz/finley.morse.html

Prikaži več

NAVODILA ZA IZPOLNJEVANJE ELEKTRONSKEGA OBRAZCA ZA PRIJAVO IN PREKLIC DIGITALNIH POTRDIL Verzija Datum Opis sprememb dokumenta dokumenta

NAVODILA ZA IZPOLNJEVANJE ELEKTRONSKEGA OBRAZCA ZA PRIJAVO IN PREKLIC DIGITALNIH POTRDIL Verzija Datum Opis sprememb dokumenta dokumenta NAVODILA ZA IZPOLNJEVANJE ELEKTRONSKEGA OBRAZCA ZA PRIJAVO IN PREKLIC DIGITALNIH POTRDIL Verzija Datum Opis sprememb dokumenta dokumenta 1.0 22.11.2013 Prva verzija dokumenta 1.1 15.04.2015 Dodana možnost

Prikaži več

COBISS3/Medknjižnična izposoja

COBISS3/Medknjižnična izposoja 3/Medknjižnična izposoja 2.2 KATALOG Katalog nam omogoča: iskanje gradiva prikaz izbranih bibliografskih zapisov ali pripadajočih podatkov o zalogi iz lokalne baze podatkov v formatu COMARC vpogled v stanje

Prikaži več

Microsoft Word - M docx

Microsoft Word - M docx Š i f r a k a n d i d a t a : ržavni izpitni center *M15178112* SPOMLNSKI IZPITNI ROK Izpitna pola 2 Četrtek, 4. junij 2015 / 90 minut ovoljeno gradivo in pripomočki: Kandidat prinese nalivno pero ali

Prikaži več

Navodila za uporabo Mini prenosna HD kamera s snemalnikom

Navodila za uporabo Mini prenosna HD kamera s snemalnikom Navodila za uporabo Mini prenosna HD kamera s snemalnikom www.spyshop.eu Izdelku so priložena navodila v angleščini, ki poleg teksta prikazujejo tudi slikovni prikaz sestave in delovanja izdelka. Lastnosti

Prikaži več

INFORMATOR BIROKRAT 1/2011

INFORMATOR BIROKRAT 1/2011 ta Veleprodaja Maloprodaja Storitve Računovodstvo Proizvodnja Gostinstvo Turizem Hotelirstvo Ticketing CRM Internetna trgovina Izdelava internetnih strani Grafično oblikovanje NOVOSTI IN NASVETI ZA DELO

Prikaži več

ZAČETNI VODNIK ZA POVEZAVO Izkusite prilagojeno nego perila z aplikacijo My AEG Care. Pralni stroj lahko povežete in upravljate od koder koli in preje

ZAČETNI VODNIK ZA POVEZAVO Izkusite prilagojeno nego perila z aplikacijo My AEG Care. Pralni stroj lahko povežete in upravljate od koder koli in preje ZAČETNI VODNIK ZA POVEZAVO Izkusite prilagojeno nego perila z aplikacijo My AEG Care. Pralni stroj lahko povežete in upravljate od koder koli in prejemate obvestila o tem, kdaj je perilo pripravljeno.

Prikaži več

ISOFT , računalniški inženiring

ISOFT , računalniški inženiring ISOFT, računalniški inženiring Marko Kastelic s.p. Sad 2, 1296 Šentvid pri stični Spletna stran podjetja:http://www.isoft.si podjetja ISOFT Spletna stran sistema sledenja vozil track.si: http://www.track.si

Prikaži več

NETGEAR R6100 WiFi Router Installation Guide

NETGEAR R6100 WiFi Router Installation Guide Blagovne znamke NETGEAR, logotip NETGEAR in Connect with Innovation so blagovne znamke in/ali registrirane blagovne znamke družbe NETGEAR, Inc. in/ali njenih povezanih družb v ZDA in/ali drugih državah.

Prikaži več

Microsoft Word - NAVODILA ZA UPORABO.docx

Microsoft Word - NAVODILA ZA UPORABO.docx NAVODILA ZA UPORABO VODILO CCM-18A/N-E (K02-MODBUS) Hvala ker ste se odločili za nakup našega izdelka. Pred uporabo enote skrbno preberite ta Navodila za uporabo in jih shranite za prihodnjo rabo. Vsebina

Prikaži več

Diapozitiv 1

Diapozitiv 1 9. Funkcije 1 9. 1. F U N K C I J A m a i n () 9.2. D E F I N I C I J A F U N K C I J E 9.3. S T A V E K r e t u r n 9.4. K L I C F U N K C I J E I N P R E N O S P A R A M E T R O V 9.5. P R E K R I V

Prikaži več

Navodila za uporabo Mini snemalnik

Navodila za uporabo Mini snemalnik Navodila za uporabo Mini snemalnik www.spyshop.eu Pred vami so navodila za pravilno uporabo mini snemalnika in opis funkcionalnosti. Lastnosti snemalnika: Naziv Mere Teža Kapaciteta spomina Snemanje Format

Prikaži več

(Microsoft Word - MSDN AA Navodila za \232tudente FS.doc)

(Microsoft Word - MSDN AA Navodila za \232tudente FS.doc) 1. Pogoji uporabe programske opreme Pred uporabo programske opreme iz programa MSDNAA morate prebrati in se strinjati s pogoji in določili Licenčne pogodbe za končnega uporabnika programske opreme MSDN

Prikaži več

Orodje za izvoz podatkov

Orodje za izvoz podatkov Pomoč uporabnikom -NA-SI-200, V6.13-00 IZUM, 2018 COBISS, COMARC, COBIB, COLIB, IZUM so zaščitene znamke v lasti javnega zavoda IZUM. KAZALO VSEBINE 1 Uvod... 1 2 Predstavitev orodja za izvoz podatkov...

Prikaži več

PowerPoint Presentation

PowerPoint Presentation Uporaba storitve Office 365 v napravi iphone ali ipad Priročnik za hiter začetek dela Ogled e-pošte Nastavite napravo iphone ali ipad tako, da boste lahko pošiljali in prejemali e-pošto iz računa v storitvi

Prikaži več

Slide 1

Slide 1 Tehnike programiranja PREDAVANJE 10 Uvod v binarni svet in računalništvo (nadaljevanje) Logične operacije Ponovitev in ilustracija Logične operacije Negacija (eniški komplement) Negiramo vse bite v besedi

Prikaži več

Kratka navodila za uporabo razširjevalnika dosega WiFi AC750 model EX3800

Kratka navodila za uporabo razširjevalnika dosega WiFi AC750 model EX3800 Hiter začetek Razširjevalnik dosega WiFi AC750 Model EX3800 Začetek uporabe Razširjevalnik dosega WiFi NETGEAR doseg omrežja WiFi poveča tako, da okrepi obstoječi signal WiFi in izboljša splošno kakovost

Prikaži več

innbox_f60_navodila.indd

innbox_f60_navodila.indd Osnovna navodila Komunikacijski prehod Innbox F60 SFP AC Varnostna opozorila Pri uporabi opreme upoštevajte naslednja opozorila in varnostne ukrepe. Da bi v največji meri izkoristili najnovejšo tehnologijo

Prikaži več

Nove različice programske opreme GE Podjetje GE Digital, vodilni svetovni proizvajalec programske opreme za področje avtomatike, je izdalo kar nekaj n

Nove različice programske opreme GE Podjetje GE Digital, vodilni svetovni proizvajalec programske opreme za področje avtomatike, je izdalo kar nekaj n Nove različice programske opreme GE Podjetje GE Digital, vodilni svetovni proizvajalec programske opreme za področje avtomatike, je izdalo kar nekaj novosti na področju SCADA sistemov (ifix Productivity

Prikaži več

Upravljanje sistema COBISS Navodila za uporabo tiskalnika CITIZEN S310II V1.0 VIF-NA-27-SI

Upravljanje sistema COBISS Navodila za uporabo tiskalnika CITIZEN S310II V1.0 VIF-NA-27-SI Navodila za uporabo tiskalnika CITIZEN S310II V1.0 VIF-NA-27-SI IZUM, 2015 COBISS, COMARC, COBIB, COLIB, IZUM so zaščitene znamke v lasti javnega zavoda IZUM. KAZALO VSEBINE 1 Uvod... 1 2 Uporaba tiskalnika...

Prikaži več

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA Navdih Poizvedovanje po BD podatkovnih virih, ki imajo časovno dimenzijo in so dostopni. Večji promet pomeni večje število dobrin in močnejšo

Prikaži več

PRIPOROČILA ZA OBLIKOVANJE KATALOGOV ZNANJA ZA MODULE V PROGRAMIH VIŠJEGA STROKOVNEGA IZOBRAŽEVANJA

PRIPOROČILA ZA OBLIKOVANJE KATALOGOV ZNANJA ZA MODULE V PROGRAMIH VIŠJEGA STROKOVNEGA IZOBRAŽEVANJA KATALOG ZNANJA 1. IME PREDMETA ZBIRKE PODATKOV I ZBIRKE PODATKOV II 2. SPLOŠNI CILJI Splošni cilji predmeta so: razvijanje sposobnosti za uporabo znanstvenih metod in sredstev, razvijanje odgovornosti

Prikaži več

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1 TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, 14. 03.2019 Verzija 1.1 KAZALO 1 NAMEN...3 2 REGISTRACIJA...4 3 VNOS GESLA IN AKTIVACIJA RAČUNA...6

Prikaži več

Diplomska naloga: Prototip informacijskega sistema za shranjevanje računov v digitalni obliki

Diplomska naloga: Prototip informacijskega sistema za shranjevanje računov v digitalni obliki UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Matej Vovko Prototip informacijskega sistema za shranjevanje računov v digitalni obliki DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM

Prikaži več

Navodila za namestitev odjemalca ibsreport2 produkcijsko okolje (poročanje Banki Slovenije) Avgust 2017

Navodila za namestitev odjemalca ibsreport2 produkcijsko okolje (poročanje Banki Slovenije) Avgust 2017 Navodila za namestitev odjemalca ibsreport2 produkcijsko okolje (poročanje Banki Slovenije) Avgust 2017 1. Uvod Navodilo je namenjeno tehničnemu osebju pri pošiljateljih poročil oziroma poročevalcih, ki

Prikaži več

Linksys PLEK500 User Guide

Linksys PLEK500 User Guide Uporabniški priročnik Linksys PLEK500 Omrežni vmesnik Powerline Vsebina Pregled............... 2 Funkcije..................... 2 Kako deluje omrežje Powerline 3 Primer namestitve 3 Namestitev omrežja Powerline.....

Prikaži več

Navodila za uporabo aplikacije mlist - neposredni mentorji za Zdravniško zbornico Slovenije pripravila Gooya, interaktivni mediji, d.o.o. Ljubljana, m

Navodila za uporabo aplikacije mlist - neposredni mentorji za Zdravniško zbornico Slovenije pripravila Gooya, interaktivni mediji, d.o.o. Ljubljana, m Navodila za uporabo aplikacije mlist - neposredni mentorji za Zdravniško zbornico Slovenije pripravila Gooya, interaktivni mediji, d.o.o. Ljubljana, marec 2019 Vsebina 1 Dostop do aplikacije... 3 1.1 Android...

Prikaži več

Slajd 1

Slajd 1 REPUBLIKA SLOVENIJA MINISTRSTVO ZA JAVNO UPRAVO 1 EU ENOTNI DIGITALNI PORTAL: PRIHAJA NOVA EU UREDBA Alenka Žužek Nemec, Tina Kuliš DNEVI SLOVENSKE INFORMATIKE 18. april 2018 Ko podjetja ali državljani

Prikaži več

Zadeva: Ponudba

Zadeva: Ponudba Navodila za urejanje Spletne strani CTEK.si 1. Dodajanje novega polnilnika Za dodajanje novega polnilnika nikoli ne prepisujte že objavljenih vsebin, ampak sledite tem navodilom. Ta so zagotovilo, da bodo

Prikaži več

NETGEAR R6250 Smart WiFi Router Installation Guide

NETGEAR R6250 Smart WiFi Router Installation Guide Blagovne znamke NETGEAR, logotip NETGEAR in Connect with Innovation so blagovne znamke in/ali registrirane blagovne znamke družbe NETGEAR, Inc. in/ali njenih povezanih družb v ZDA in/ali drugih državah.

Prikaži več

DCS-2330L_A1_QIG_v1.00(EU).indd

DCS-2330L_A1_QIG_v1.00(EU).indd HD WIRELESS N OUTDOOR CLOUD CAMERA DCS-2330L KRATKA NAVODILA ZA UPORABO VSEBINA PAKETA HD WIRELESS N OUTDOOR CLOUD CAMERA DCS-2330L NAPAJALNI ADAPTER ADAPTER ETHERNET KABEL (CAT5 UTP) MED POSTAVITVIJO,

Prikaži več

Vostro 430 Informacijski tehnični list o namestitvi in funkcijah

Vostro 430 Informacijski tehnični list o namestitvi in funkcijah O opozorilih OPOZORILO: OPOZORILO označuje možnost poškodb lastnine, telesnih poškodb ali smrti. Dell Vostro 430 List s tehničnimi informacijami o nastavitvi in funkcijah Pogled s sprednje in zadnje strani

Prikaži več

IJS EDS IJS Elektronski Dokumentni Sistem Osnovna uporaba sistema uporabniška navodila Institut "Jožef Stefan" Ljubljana

IJS EDS IJS Elektronski Dokumentni Sistem Osnovna uporaba sistema uporabniška navodila Institut Jožef Stefan Ljubljana IJS Elektronski Dokumentni Sistem Osnovna uporaba sistema uporabniška navodila Institut "Jožef Stefan" Ljubljana Projekt: (RD JN19 16) Naročnik projekta: Institut "Jožef Stefan" Izvajalec projekta: BuyITC

Prikaži več

Primerjava ogrodij za razvoj mobilnih aplikacij

Primerjava ogrodij za razvoj mobilnih aplikacij Univerza v Ljubljani Fakulteta za računalništvo in informatiko Gregor Vertovšek Primerjava ogrodij za razvoj mobilnih aplikacij DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE: RAČUNALNIŠTVO

Prikaži več

CODEKS IP KAMERA

CODEKS IP KAMERA CODEKS IP KAMERA uporabniška navodila Vse pravice pridržane. Noben del uporabniških navodil se ne sme reproducirati v kakršnikoli obliki ali na kakršen koli način - grafični, elektronski ali mehanski,

Prikaži več

Navodila Trgovina iCenter

Navodila Trgovina iCenter Napredovanja v plačne razrede javnih uslužbencev 2019 S pomočjo SAOP programa Kadrovska evidenca lahko ob dokupljeni kodi vodimo napredovanja javnih uslužbencev. Za napredovanja v letu 2019 je potrebno

Prikaži več

FOR SMARTER PEOPLE TAKO SE VLOMI PREPREČUJEJO DANES REHAU Smart Guard System plus preventivna protivlomna zaščita WINDOWS. REINVENTED FOR MODERN LIFE.

FOR SMARTER PEOPLE TAKO SE VLOMI PREPREČUJEJO DANES REHAU Smart Guard System plus preventivna protivlomna zaščita WINDOWS. REINVENTED FOR MODERN LIFE. FOR SMARTER PEOPLE TAKO SE VLOMI PREPREČUJEJO DANES REHAU Smart Guard System plus preventivna protivlomna zaščita WINDOWS. REINVENTED FOR MODERN LIFE. NA NOVO ZASNOVANA OKNA Za današnje življenje Naše

Prikaži več

PowerPointova predstavitev

PowerPointova predstavitev Dostopnost elektronskih virov za slepe, slabovidne in druge osebe z motnjami branja Kristina Janc ZSSML - 27. Seja TIFLO sekcije 22.3.2012 Možnost izkoriščanja elektronskih virov za slepe, slabovidne in

Prikaži več

Navodila za nastavitev mail odjemalca na ios in Android napravah TELEFONI iphone (ios 12) Predlagamo, da do svoje študentske e-pošte dostopate s pomoč

Navodila za nastavitev mail odjemalca na ios in Android napravah TELEFONI iphone (ios 12) Predlagamo, da do svoje študentske e-pošte dostopate s pomoč TELEFONI iphone (ios 12) Predlagamo, da do svoje študentske e-pošte dostopate s pomočjo aplikacije Outlook, katero lahko prenesete s pomočjo trgovine App Store. Ko aplikacijo zaženete se vam pojavi naslednje

Prikaži več

ASUS Miracast Dongle E-priročnik SL9364

ASUS Miracast Dongle E-priročnik SL9364 E-priročnik SL9364 SL9364 Revidirana izdaja V2 Lahko 2014 INFORMACIJE O AVTORSKIH PRAVICAH Nobeno od teh navodil, vključno s proizvodi in programi, ki so tu opisani, ne sme biti kopirano, preneseno, prepisano,

Prikaži več

UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Milan Gabor Analiza varnostnih tveganj v mobilnih aplikacijah na platfor

UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Milan Gabor Analiza varnostnih tveganj v mobilnih aplikacijah na platfor UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Milan Gabor Analiza varnostnih tveganj v mobilnih aplikacijah na platformi Android Diplomsko delo Maribor, avgust 2016 ANALIZA

Prikaži več

NAVODILA ZA IZPOLNJEVANJE OBRAZCA

NAVODILA ZA IZPOLNJEVANJE OBRAZCA NAVODILO ZA UPORABO PRIPOMOČKA ZA PRIPRAVO STROŠKOVNEGA NAČRTA PROJEKTA»Piano finanziario Stroskovni nacrt«dokument»piano finanziario Stroskovni nacrt«v Microsoft Excel obliki lahko uporabite kot pripomoček

Prikaži več

Microsoft PowerPoint - Sequi_SecDAy.ppt

Microsoft PowerPoint - Sequi_SecDAy.ppt Sistem za zagotavljanje revizijske sledi zbirk podatkov Marko Hočevar Premisa d.o.o. Iztok Lasič Hic Salta d.o.o. O revizijski sledi Namen revizijske sledi Znane težave pri zajemanju revizijske sledi Zakaj

Prikaži več

PowerPoint Presentation

PowerPoint Presentation INFORMACIJSKI SISTEM MFERAC - LETA 2022 mag. Andreja Sladoje Jemec, Sanja Štumberger Kovačič Ministrstvo za finance 10.12.2018 Vsebina predstavitve 1. Projekt MFERAC05 in izhodišča prenove 2. Izvajanje

Prikaži več

Vedno pod nadzorom, kjerkoli že ste

Vedno pod nadzorom, kjerkoli že ste Vedno pod nadzorom, kjerkoli že ste 02 Vedno pod nadzorom, kjerkoli že ste Daikin zagotavlja novo rešitev za nadzorovanje in krmiljenje glavnih funkcij stanovanjskih notranjih enot. Sistem deluje na uporabniku

Prikaži več

Excel 2016

Excel 2016 PRIDOBIVANJE TEMELJN IH IN POKLICNIH KOMPETENC OD 2019 DO 2022 HIPERPOVEZAVA Gradivo za interno uporabo AVTOR: Belinda Lovrenčič Gradivo ni lektorirano V Maj 2019 Operacijo sofinancira Evropska unija,

Prikaži več

Sistemi Daljinskega Vodenja Vaja 3 Matej Kristan Laboratorij za Strojni Vid Fakulteta za elektrotehniko, Univerza v Ljubl

Sistemi Daljinskega Vodenja Vaja 3 Matej Kristan Laboratorij za Strojni Vid Fakulteta za elektrotehniko, Univerza v Ljubl Sistemi Daljinskega Vodenja Vaja 3 Matej Kristan Laboratorij za Strojni Vid Fakulteta za elektrotehniko, Univerza v Ljubljani matej.kristan@fe.uni-lj.si Česa smo se naučili

Prikaži več

Microsoft Word - M docx

Microsoft Word - M docx Š i f r a k a n d i d a t a : Državni izpitni center *M17178111* SPOMLADANSKI IZPITNI ROK Izpitna pola 1 Četrtek, 1. junij 2017 / 90 minut Dovoljeno gradivo in pripomočki: Kandidat prinese nalivno pero

Prikaži več

Hiter začetek Razširjevalnik dosega WiFi N300 Model EX2700

Hiter začetek Razširjevalnik dosega WiFi N300 Model EX2700 Hiter začetek Razširjevalnik dosega WiFi N300 Model EX2700 Začetek uporabe Razširjevalnik dosega WiFi NETGEAR doseg omrežja WiFi poveča tako, da okrepi obstoječi signal WiFi in izboljša splošno kakovost

Prikaži več

Elektronska pošta

Elektronska pošta Elektronska pošta ZGODOVINA Prvo sporočilo je bilo poslano leta 1971. Besedilo, ki ga je vsebovalo, je bilo QWERTYUIOP. Pošiljatelj je bil Ray Tomlinson, računalnika med katerima je bilo sporočilo poslano

Prikaži več

SETCCE Uporabniška navodila za namestitev in upravljanje komponente SETCCE proxsign v2.0.5 za MAC OS X [Nova generacija komponent SETCCE proxsign ] Id

SETCCE Uporabniška navodila za namestitev in upravljanje komponente SETCCE proxsign v2.0.5 za MAC OS X [Nova generacija komponent SETCCE proxsign ] Id SETCCE Uporabniška navodila za namestitev in upravljanje komponente SETCCE proxsign v2.0.5 za MAC OS X [Nova generacija komponent SETCCE proxsign ] Identifikacijska oznaka dokumenta: n/a Različica dokumenta:

Prikaži več

PowerPointova predstavitev

PowerPointova predstavitev INFORMATIKA Tečaj za višjega gasilca OGZ PTUJ 2017 PRIPRAVIL: ANTON KUHAR BOMBEK, GČ VSEBINA TEORETIČNA PREDAVANJA INFORMACIJSKI SISTEMI SISTEM OSEBNIH GESEL IN HIERARHIJA PRISTOJNOSTI PRAKTIČNE VAJE ISKANJE

Prikaži več

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1,

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1, TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, 14. 03. 2019 KAZALO 1 Namen...3 2 Registracija...4 3 Vnos gesla in aktivacija računa...6 4 Prijava...7

Prikaži več

Brezplačno učenje zaposlenim in brezposelnim od 2018 do 2022 omogočata Ministrstvo za izobraževanje, znanost in šport ter Evropska unija iz Evropskega

Brezplačno učenje zaposlenim in brezposelnim od 2018 do 2022 omogočata Ministrstvo za izobraževanje, znanost in šport ter Evropska unija iz Evropskega ter Evropska unija iz Evropskega socialnega sklada Računalniška pismenost za odrasle 60 ur. - Seznaniti vas z osnovnimi komponentami računalnika in osnovnimi pojmi informacijske tehnologije. - Naučiti

Prikaži več

PowerPointova predstavitev

PowerPointova predstavitev INTRANET - DETEKTIV Detektivska zbornica Republike Slovenije Pozdravljeni, v kratki predstaviti in navodilih za delo z intranet sistemom Detektiv. Intranet članom Detektivske zbornice RS omogoča, da: -

Prikaži več

Gimnazija Bežigrad Peričeva Ljubljana OPERACIJSKI SISTEM Predmet: informatika

Gimnazija Bežigrad Peričeva Ljubljana OPERACIJSKI SISTEM Predmet: informatika Gimnazija Bežigrad Peričeva 4 1000 Ljubljana OPERACIJSKI SISTEM Predmet: informatika KAZALO 1. Uvod...3 2. Predstavitev programa Windows 98...5 3. Raziskovanje računalnika...5 4. Raziskovanje Interneta...6

Prikaži več

Folie 1

Folie 1 S&TLabs Innovations mag. Damjan Kosec, S&T Slovenija d.d. marec 2013 S&TLabs Laboratorij za inovacije in razvoj spletnih in mobilnih informacijskih rešitev Kako boste spremenili svoj poslovni model na

Prikaži več

INTERAKTIVNE REŠITVE PROMETHEAN

INTERAKTIVNE REŠITVE PROMETHEAN INTERAKTIVNE REŠITVE PROMETHEAN Promethean je vodilni svetovni ponudnik interaktivne tehnologije na področju izobraževanja. S svojim inovativnim pristopom in vizijo prihodnosti, spreminjajo način sodelovanja

Prikaži več

MATLAB programiranje MATLAB... programski jezik in programersko okolje Zakaj Matlab? tipičen proceduralni jezik enostaven za uporabo hitro učenje prir

MATLAB programiranje MATLAB... programski jezik in programersko okolje Zakaj Matlab? tipičen proceduralni jezik enostaven za uporabo hitro učenje prir MATLAB programiranje MATLAB... programski jezik in programersko okolje Zakaj Matlab? tipičen proceduralni jezik enostaven za uporabo hitro učenje priročno programsko okolje tolmač interpreter (ne prevajalnik)

Prikaži več

Diplomsko delo visokošolskega strokovnega študija Informatika v organizaciji in managementu SPLETNA REŠITEV ZA ISKANJE TERMINOV IN LOKACIJ PREDAVANJ M

Diplomsko delo visokošolskega strokovnega študija Informatika v organizaciji in managementu SPLETNA REŠITEV ZA ISKANJE TERMINOV IN LOKACIJ PREDAVANJ M Informatika v organizaciji in managementu SPLETNA REŠITEV ZA ISKANJE TERMINOV IN LOKACIJ PREDAVANJ Mentor: doc. dr. Borut Werber Kandidat: Boštjan Koželj Somentor: viš. pred. dr. Gregor Lenart Kranj, September

Prikaži več

Za vaše podjetje ModernBiz Glossary 2014 Microsoft Corporation. Vse pravice pridržane.

Za vaše podjetje ModernBiz Glossary 2014 Microsoft Corporation. Vse pravice pridržane. Za vaše podjetje ModernBiz Glossary 2014 Microsoft Corporation. Vse pravice pridržane. A Analitična orodja: Programska oprema, s katero je mogoče zbirati in meriti poslovne podatke ter o njih poročati.

Prikaži več

Base NET.cdr

Base NET.cdr Rešitev fiksnega radijskega odčitavanja Delovanje BaseNet je način odčitavanja porabe vode, toplote, elektrike, plina in delilnikov toplote v fiksnem radijskem omrežju. Merilnike v Sensus Base sistemu

Prikaži več

Navodila za pisanje diplomskih nalog UM FERI

Navodila za pisanje diplomskih nalog UM FERI Domen Kupnik RAZVOJ APLIKACIJE ZA UPRAVLJANJE SLIK IN ALBUMOV NA MOBILNI PLATFORMI ANDROID Diplomsko delo Maribor, september 2012 Aplikacija za upravljanje slik in albumov na mobilni platformi Android

Prikaži več

Arjan Topolovec PROFILIRANJE SPLETNIH APLIKACIJ Diplomsko delo Maribor, september 2010

Arjan Topolovec PROFILIRANJE SPLETNIH APLIKACIJ Diplomsko delo Maribor, september 2010 Arjan Topolovec PROFILIRANJE SPLETNIH APLIKACIJ Diplomsko delo Maribor, september 2010 I Diplomsko delo univerzitetnega študijskega programa PROFILIRANJE SPLETNIH APLIKACIJ Študent: Študijski program:

Prikaži več

PowerPointova predstavitev

PowerPointova predstavitev TIK terminal nima povezave s strežnikom Ob vpisu v TIK Admin se pojavi napis ni povezave s strežnikom Na terminalu je ikona 1. preverimo ali je pravilno nastavljen IP strežnika 1. Preverimo datoteko TIKSAdmin.INI

Prikaži več

TNUV Lab

TNUV Lab TNUV - VAJA 5 doc. dr. Marko Meža 2013/14 Cilji vaje Predvajanje multimedijskih vsebin MediaPlayer http://developer.android.com/training/building-multimedia.html http://developer.android.com/guide/topics/media/mediaplayer.html

Prikaži več

Microsoft Word - M doc

Microsoft Word - M doc Državni izpitni center *M11145113* INFORMATIKA SPOMLADANSKI IZPITNI ROK NAVODILA ZA OCENJEVANJE Petek, 10. junij 2011 SPLOŠNA MATURA RIC 2011 2 M111-451-1-3 IZPITNA POLA 1 1. b 2. a 3. Pojem se povezuje

Prikaži več

PowerPoint Presentation

PowerPoint Presentation Naslov prispevka STORITVE SOC ŠT.3 ter SOC ŠT.4 Peter Šprajc, Ministrstvo za javno upravo Andrej Skamen, S&T Slovenija d.d.. 10.12.2018 AGENDA pravna podlaga za izvajanja storitev opis SOC storitve 3 opis

Prikaži več

DES

DES Laboratorij za načrtovanje integriranih vezij Univerza v Ljubljani Fakulteta za elektrotehniko Digitalni Elektronski Sistemi Digitalni sistemi Vgrajeni digitalni sistemi Digitalni sistem: osebni računalnik

Prikaži več

Oblikovanje in razvijanje spletnih strani

Oblikovanje in razvijanje spletnih strani Uporabniški vmesnik načrtovanje in izdelava Interaktivni mediji Doc. dr. Aleš Hladnik Načrtovanje uporabniškega vmesnika (UV) Načrtovanje oz. zasnova UV (User( interface design or engineering) je načrtovanje

Prikaži več

bob p. p Ljubljana Tel.: (cena klica na minuto je 1 z DDV) Posebni pogoji uporabe storitve moj bob

bob p. p Ljubljana Tel.: (cena klica na minuto je 1 z DDV)   Posebni pogoji uporabe storitve moj bob bob p. p. 415 1001 Ljubljana Tel.: 090 068 068 (cena klica na minuto je 1 z DDV) www.bob.si Posebni pogoji uporabe storitve moj bob Kazalo Uvod 5 Opredelitve 5 Registracija in uporaba Storitve moj bob

Prikaži več

Microsoft Word doc

Microsoft Word doc SLO - NAVODILO ZA NAMESTITEV IN UPORABO Št. izd. : 973911 www.conrad.si OJAČEVALNIK SIGNALA NETGEAR WN2000RPT Št. izdelka: 973911 1 KAZALO 1 OBSEG DOBAVE... 3 2 LED PRIKAZI OJAČEVALNIKA SIGNALA... 3 3

Prikaži več

Protokoli v računalniškem komuniciranju TCP, IP, nivojski model, paket informacij.

Protokoli v računalniškem komuniciranju TCP, IP, nivojski model, paket informacij. Protokoli v računalniškem komuniciranju TCP, IP, nivojski model, paket informacij. Protokoli - uvod Protokol je pravilo ali zbirka pravil, ki določajo načine transporta sporočil po računalniškem omrežju

Prikaži več

Poročanje izdanih računov pri gotovinskem poslovanju

Poročanje izdanih računov pri gotovinskem poslovanju Poročanje izdanih računov pri gotovinskem poslovanju Vrsta dokumenta: Uporabniška navodila Pripravil/i: Za: Naviservice +386 1 548 3999 naviservice@adacta.si Adacta d.o.o. Verovškova 55a, 1000 Ljubljana

Prikaži več

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni RAM stroj Nataša Naglič 4. junij 2009 1 RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni trak, pomnilnik ter program. Bralni trak- zaporedje

Prikaži več

Okolje SupportAssist OS Recovery Navodila za uporabo

Okolje SupportAssist OS Recovery Navodila za uporabo Okolje SupportAssist OS Recovery Navodila za uporabo Opombe, svarila in opozorila OPOMBA: OPOMBA označuje pomembne informacije, s katerimi lahko izboljšate učinkovitost izdelka. POZOR: PREVIDNO označuje

Prikaži več

EU-TPD 1 PODROBNOSTI KODIRANJA Informacije za trgovino JB za DCTA, (Final 1.2) Obveznost kodiranja izdelka, urejena s predpisom EU-TPD se n

EU-TPD 1 PODROBNOSTI KODIRANJA Informacije za trgovino JB za DCTA, (Final 1.2) Obveznost kodiranja izdelka, urejena s predpisom EU-TPD se n EU-TPD 1 PODROBNOSTI KODIRANJA Informacije za trgovino Obveznost kodiranja izdelka, urejena s predpisom EU-TPD se nanaša na tobačne izdelke na trgu EU in na tobačne izdelke, izdelane v EU, vključno s tistimi

Prikaži več