Sem vložte zadání Vaší práce.

Rozměr: px
Začít zobrazení ze stránky:

Download "Sem vložte zadání Vaší práce."

Transkript

1 Sem vložte zadání Vaší práce.

2

3 České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Mobilní aplikace pro aukční portál Veronika Stojanová Vedoucí práce: Ing. Martin Klíma, Ph.D. 16. května 2013

4

5 Poděkování Tímto bych ráda poděkovala svému vedoucímu Ing. Martinu Klímovi, Ph.D. za vedení mé práce a rady k praktické i teoretické části. Dále bych ráda poděkovala Ing. Josefu Kufnerovi za rady ohledně porálu Nume.cz a v neposlední řadě bych chtěla poděkovat rodině a kolegům ze školy za jejich podporu a cenné rady při vypracovávání praktické části.

6

7 Prohlášení Prohlašuji, že jsem předloženou práci vypracovala samostatně a že jsem uvedla veškeré použité informační zdroje v souladu s Metodickým pokynem o etické přípravě vysokoškolských závěrečných prací. Beru na vědomí, že se na moji práci vztahují práva a povinnosti vyplývající ze zákona č. 121/2000 Sb., autorského zákona, ve znění pozdějších předpisů, zejména skutečnost, že České vysoké učení technické v Praze má právo na uzavření licenční smlouvy o užití této práce jako školního díla podle 60 odst. 1 autorského zákona. V Praze dne 16. května

8 České vysoké učení technické v Praze Fakulta informačních technologií c 2013 Veronika Stojanová. Všechna práva vyhrazena. Tato práce vznikla jako školní dílo na Českém vysokém učení technickém v Praze, Fakultě informačních technologií. Práce je chráněna právními předpisy a mezinárodními úmluvami o právu autorském a právech souvisejících s právem autorským. K jejímu užití, s výjimkou bezúplatných zákonných licencí, je nezbytný souhlas autora. Odkaz na tuto práci Stojanová, Veronika. Mobilní aplikace pro aukční portál. Bakalářská práce. Praha: České vysoké učení technické v Praze, Fakulta informačních technologií, 2013.

9 Abstract The bachelor thesis is about developing of mobile application for web portal Portal specializes in the auction of antique coins and legal tenders. Goal is extend it to the mobile devices running the Android operating system. Keywords mobile application, Android, auction portal, auction, client, server, REST Abstrakt Tato bakalářská práce se zabývá vývojem mobilní aplikace pro stávající webový portál Portál je zaměřen na dražbu starožitných mincí a platidel. Cílem práce je rozšířit jej na mobilní zařízení s operačním systémem Android. Klíčová slova server, REST mobilní aplikace, Android, aukční portál, dražba, klient, ix

10

11 Obsah Úvod 1 Cíl práce Analýza a návrh Aukce Mobilní platforma Android Web services REST Restful aplikace Hlavičky HTTP Autentizace Webový portál Nume Mobilní aplikace Nume Uživatelské role Případy užití Analýza požadavků Funkční požadavky Nefunkční požadavky Návrh restového rozhraní Realizace serveru Vývojové prostředí Framework Nette Persistence dat Aplikační logika Realizace Klienta - mobilní aplikace 39 xi

12 3.1 Vývojové prostředí Aplikační logika Knihovny třetích stran Grafické rozhraní Testování Test uživatelského rozhranní Závěr 57 Budoucnost aplikace Literatura 59 A Seznam použitých zkratek 61 B Test uživatelského rozhranní 63 B.1 Vstupní dotazník B.2 Výstupní dotazník C Obsah přiloženého CD 65 xii

13 Seznam obrázků 1.1 Hlavní součásti operačního systému Android. [12] Životní cyklus activities. [11] Stavový model komunikace [15] Bezestavový model komunikace [15] Lišta pro sdílení na sociálních sítích [17] autentizační schéma OAuth [17] Úvodní stránka portálu Nume. a) Registrace, b) Přihlášení, c) Prodej, d) Nákup, e) Hlavní kategorie, f) Vyhledávání Diagram případů užití Hlavní aktivita, vlevo uživatel není přihlášen, vpravo je uživatel přihlášen Potvrzovací dialog odhlášení Přihlašovací aktivita, vpravo registrace Osobní profil přihlášeného uživatele Zleva: hlavní kategorie, druhá podkategorie, třetí podkategorie Položky z vybrané kategorie, vpravo vidíme načítací kolečko Stavový diagram položky Vlevo detail aukce, vpravo detail obchodu Stav ze kterého nelze nakupovat, uživatel není přihlášen Zleva: potvrzovací dialog nákupu v obchodě, dialog Kup teď, dialog přihoď View zobrazovaný v případě, že není připojení Sherlock ActionBar (uživatel je přihlášen) Zleva: logo logo mobilní aplikace xiii

14

15 Seznam tabulek 1.1 Ukázka dražby s pravidly Vickreyho aukce Případ užití - Přihlášení uživatele Případ užití - Odhlášení uživatele Případ užití - Zobrazení vlastního profilu Případ užití - Nákup v obchodě Případ užití - Nákup pomocí Kup teď Případ užití - Nákup pomocí příhozů xv

16

17 Úvod Internetové aukce se stávají stále populárnější a počet internetových portálů nabízejících internetové dražby stoupá. Možnost získat dražený předmět za nižší, než skutečnou cenu se stává stále více atraktivní. Láká tak mnoho v tomto oboru zkušených i nezkušených spotřebitelů do oblasti virtuálního světa nákupů. Právě jeden z nově založených internetových portálů je jádrém mé bakalářské práce. Jedná se o aukci nabízející zboží pro specifický sběratelský koníček, kterým je numismatika. Mobilní telefony dnes již také neslouží pouze pro telefonování a posílání SMS zpráv. Od doby kdy spatřil světlo světa první mobilní telefon se vývoj posunul tak dopředu, že dnes již může zastoupit dříve nenahraditelné věci jako noviny, hudební přehrávače či fotoaparáty. Chytrý mobilní telefon, anglicky smartphone, může dnes snadno v mnoha případech zastoupit běžný počítač. Provozovatelé internetových obchodů a jiných internetových aplikací se snaží rozšířit své pole působnosti i mezi uživatele smartphonů, a proto jim nabízejí možnost stáhnout si jejich aplikaci do svého telefonu. V dnešní době je pro každou větší internetovou společnost provozující eshop nebo aukci jakousi povinností nabídnout jejich zákazníkovi mobilní verzi aplikace. Důvodem vzniku této bakalářské práce tedy bylo nabídnout zákazníkům portálu aplikaci do jejich chytrého telefonu a rozšířit tak možnost nákupu mincí a platidel. V současné době vede mezi mobilními operačními systémy Android od společnosti Google, a proto je mobilní aplikace vyvíjena pro tuto platformu. 1

18 Úvod Cíl práce Cílem této práce je vytvořit mobilní aplikaci pro platformu Android, která nabídne základní funkcionalitu aukčního portálu, jako je procházení nabízených položek a jejich následné nakupování. Součástí práce je také implementace serveru, který by umožnil komunikaci mezi stávajícím webovým portálem a vyvíjenou mobilní aplikací. V první kapitole provedu analýzu potřebnou pro následující návrh řešení a poté i samotný návrh řešení jak klientské aplikace, tak serveru. V druhé a třetí kapitole přiblížím realizaci serveru a klienta. Ve čtvrté kapitole poté popíši proběhlé testování. V závěru práce poté zhodnotím, zda bylo dosaženo požadovaných výsledků. 2

19 Kapitola 1 Analýza a návrh 1.1 Aukce Aukce je druh obchodu se specifickými pravidly. Většina typů aukcí je postavena na následujícím principu, přičemž detaily se mění druh od druhu. Princip spočívá v tom, že na počátku obchodu (aukce) není jisté, kolik vlastně zájemce za draženou věc zaplatí. Zprostředkovatel dražby před začátkem stanoví počáteční cenu a po začátku dražby se tato cena navyšuje podle toho kolik je zájemců. Ti se přehazují tím způsobem, že se střídají a zvedají cenu předmětu. Aukce je časově omezená a dražený předmět v závěru získá ten přihazující, který nabídne nejvyšší částku. Díky tomuto způsobu může nakupující získat předmět daleko levněji, než v obyčejném prodeji, ale na druhou stranu také může prodělat, a to v případě, že neuváženě zvedne cenu, která převýší standardní hodnotu předmětu. V našem případě se konkrétně budeme zabývat typem aukce s názvem Vickreyho aukce, jejíž princip je popsán níže. Historie aukcí se datuje již od dob před naším letopočtem, kdy ovšem nebyly aukce nijak běžné. V dnešní době však představují nemalou součást obchodu se zbožím. Dostupné je prakticky cokoliv od klíčenky, přes živé mazlíčky po celé domy. V současnoti existují jak aukce, na kterých můžete být přítomni, jako například známá britská Sotheby s specializující se na umění, tak internetové aukce využívající moderních technologií. Internetové aukce jsou dnes již standardním jevem a poskytují kupci možnost získat potřebnou věc jednoduše bez fyzické účasti na aukci. 3

20 1. Analýza a návrh Vickreyho aukce Právě tento typ aukce je použit na aukčním portálu Nume.cz, a tak považuji za podstatné popsat zde pravidla tohoto typu aukce. Své jméno získala podle Williama Vickreyho, který jako první roku 1961 tento způsob dražení popsal. Setkat se ale můžeme také s názvem Aukce druhé ceny, anglicky Second-price sealed-bid auction, který vychází ze způsobu dražby. Jak druhý název vypovídá, jedná se o aukci, kde vyhrává přihazující s nejvyšší nabídkou, ale nezaplatí svoji nabízenou cenu, nýbrž druhou nejvyšší nabídnutou. Aby byl tento způsob možný, probíhá aukce skrytě, a tudíž není vidět aktuální nejvyšší nabídka. [1] Tento druh aukce je výhodný v tom, že nabádá nakupující ke spravedlivé ceně a dražené zboží tak je možné získat za jeho skutečnou hodnotu. K těmto pravidlům portál Nume.cz ještě přidal další omezující podmínku, kterou si určuje zakladatel aukce - prodávající. Touto podmínkou je tzv. Rezervní cena. Rezervní cena určuje minimální cenu, za kterou je prodávající ochoten dražený předmět prodat a tato cena není veřejně známá. Pokud dražba nedosáhne hodnoty rezervní ceny, není předmět vydražen nikomu. [2] Pro lepší znázornění jsem připravila tabulku 1.1 demonstrující dražbu předmětu s počáteční cenou 5 Kč, rezervní cenou 1000 Kč a časem do konce 10min Aukro.cz Jedná se o neznámější aukční portál na českém trhu. Založen byl roku 2003 a později roku 2011 se stává členem skupiny Allegro Group, která se realizuje ve světě obchodování na internetu, realit, cestovního ruchu, apod. [3] [4] Aukro.cz nabízí svým uživatelům nepřeberné množství zboží v mnoha kategoriích. Cena zboží se zde pohybuje v řádu korun až tisíců, s možností nákupu zboží nového i použitého. Mezi hlavní funkce tohoto portálu patří možnost Kup teď, která umožňuje zájemci koupit zboží ihned za předem známou cenu (která je vyšší než počáteční cena aukce) a vyhnout se tak možnosti prohry při přihazování. V současné době Aukro.cz poskytuje i svoji mobilní verzi pro nejpoužívanější platformy Android, Symbian, Apple ios a Windows Phone. [5] Kromě standardního prohlížení a nakupování poskytuje aplikace widget, který spravuje Váš účet a zobrazuje hlídané aukce. Nevýhodou aplikace je, že neposkytuje možnost vytvářet nové aukce - jedná se pouze o nakupovací aplikaci. 4

21 1.1. Aukce Přihazující A Tabulka 1.1: Ukázka dražby s pravidly Vickreyho aukce Přihazující B Cena Vítěz Čas (min) Poznámka 5-10 Počáteční cena je stanovena na 5. Vítězem není nikdo, protože zatím nikdo nepřihazuje 10-5 A 9 A přihodil 10, je tedy vítěz tohoto kola. Cena je druhá nejvyšší B 7 B přehodil A s částkou 100, je tedy vítěz tohoto kola. Cena je o 1 vyšší než druhá nejvyšší částka (10) B 6 A nevidí cenu nabídnutou od B a tak nabízí málo. Cena = B 5 A stále nabízí málo. Cena = A 3 A nabídl víc než B, je tedy vítěz. Cena je o 1 vyšší než druhá nejvyšší čátka (100) B 3 B se rozhodl přihodit 1500, je tedy vítěz. Cena překročila rezervní cenu, a tak je druhá nejvyšší částka 1000 (rezervní cena) B 2 B je stále vítěz. Cena = A 0 A přehodil B a je vítěz, protože čas vypršel. Konečná cena, kterou A zaplatí je 1501,- 5

22 1. Analýza a návrh ebay ebay je největší obchodní portál na světě založený americkou společností ebay Inc. se vznikem roku [6] Jeho dostupnost je celosvětová ve všech různých jazycích, a to i v češtině ( Bohužel se ale jedná pouze o zjednodušenou verzi ebay.com v českém jazyce, která nenabízí možnost prodávání předmětů. Pokud by tedy měl někdo zájem prodávat na ebay musí navštívit americkou verzi a souhlasit s prodejem po celém USA a Evropě. Co se týče nákupu jsou možnosti podobné jako u českého výše zmíněného Aukro.cz. Zákazník má možnost nakupovat pomocí příhozů, případně pomocí Kup teď. ebay sází na službu PayPal!, což je jeho nepochybnou výhodou v tom, že pokud má zákazník službu PayPal! zařízenou je nákup velice rychlý a jednoduchý. Stejně tak jako Aukro.cz nabízí i ebay svoji mobilní verzi pro platformy Android, Apple ios, Windows Phone a navíc také pro BlackBerry. Nenabízí verzi pro Symbian, ale je dostupný v mobilní verzi. [7] Neposkytuje možnost výběru verze pro Českou republiku. Oproti mobilní verzi českého Aukra je dostupná možnost vytvoření nové aukce. 1.2 Mobilní platforma Android Hlavní důvod pro výběr platformy Android byl ten, že sama vlastním mobilní telefon s touto platformou. Proto je mi Android velice blízký a sympatický. Android je open-sourcová platforma od společnosti Google založená na Linuxovém jádru a jedná se o nejrozšířenější platformu jak na českém, tak i celosvětovém trhu. Na svých stránkách Android uvádí, že každý den je aktivováno více než 1 milion nových zařízení s jejich platformou. [8] Nemalý podíl na takovém úspěchu je fakt, že si Android zvolili za svůj operační systém takoví velikáni jako HTC a Samsung, kteří nabízejí s tímto OS nejen mobilní telefony, ale i tablety. Značnou výhodou je také to, že Android poskytl svůj systém opensourcově a na svých stránkách nemale podporuje vývojáře a nabízí jim rady při vyvíjení vlastních aplikací. Díky tomu, se dá mnoho věcí najít na internetu a vývojář nemusí zbytečně ztrácet čas dohledáváním informací. Díky tomuto a také díky silné společnosti stojící za tímto operačním systémem se dá předpokládat, že rozšířenost a oblíbenost Androidu bude nadále stoupat. 6

23 1.2. Mobilní platforma Android Historie Android Ačkoliv se na první pohled zdá, že platformu Android vyvinula společnost Google, není to zcela tak jednoznačné. Počátky Androidu se začínají psát roku 2003 kdy je založena společnost Android Inc. jejímž zakladatelem je Andy Rubin (který byl do tohoto roku (2013) vedoucím vývoje Android u Google). Již v tu dobu bylo v plánu vyvinout chytřejší mobilní zařízení. Až v druhé polovině roku 2005 začíná svoji roli hrát i společnost Google, která Android Inc. kupuje. V tu dobu začíná být jisté, že Google má v plánu konkurovat operačním systémům jako je Symbian a o vývoj se začínají zajímat velké firmy jako HTC, LG, Samsung a T-Mobile. Ti poté společně zakládají Open Handset Alliance - konsorcium výrobců mobilních telefonů, telefoních operátorů a technologických firem, které má za úkol vyvíjet operační systém Android. [9] Verze Android Android již měl mnoho verzí, zde jsou vypsané ty s nejdůležitějšími inovacemi: [8] Verze 0.9 beta a 1.0, srpen 2008 a září 2008 Podpora služeb Google Verze 1.1, únor 2009 Podpora ovládání hlasem Podpora pro ukládání příloh MMS Verze 1.5 (Cupcake), duben 2009 Rychlejší start kamery, získávání GPS polohy, GMail Widgety (hodiny, kalendář, hudební přehrávač, vyhledávání) Nahrávání a přehrávání videa Verze 2.1 (Eclair), říjen 2009 Rychlý přístup ke kontaktům Vyhledávání uložených SMS a MMS Kamera (digitální zoom, makro, vyvážení bílé) Multi-touch klávesnice 7

24 1. Analýza a návrh Podpora HTML5 Verze 2.2 (FroYo), květen 2010 Hotspot Wifi Vícejazyčná klávesnice Bluetooth (hlasové vytáční, sdílení kontaktů, připojení k automobilu) instalace na externí úložiště Verze 3.0 (Honeycomb), únor 2011 Podpora pro tablety Verze 4.0 (IceCreamSandwitch), říjen 2011 Akce na zamčené obrazovce Screenshot Face Unlock - odemykání telefonu pomocí tváře Verze 4.2 (Jelly Bean), červen 2012 Podpora více uživatelů pro tablety Posílání souborů dotykem Vývoj aplikací na platformě Android Android na svých stránkách poskytuje podporu pro vývojáře a zdarma nabízí plugin pro Eclipse s názvem The Android Developer Tools (ADT), který je dostupný pro Windows, Mac OS i Linux. Android je vlastně takový framework psaný v jazyce Java a ADT je balíček usnadňující vývoj nových aplikací. Jedná se o plnohodnotné Java IDE 1 s kompletními funkcemi, které pomůžou s tvorbou, testováním a debugem nové Android alikace Architektura Android Android jakožto softwarový balíček pro mobilní zařízení zahrnuje operační systém, middleware a aplikace s následující architekturou (obr. 1.1): Applications - základní aplikace jako , SMS, kalendář, mapy, prohlížeč 1 Integrated Development Environment - vývojové prostředí 8

25 1.2. Mobilní platforma Android Obrázek 1.1: Hlavní součásti operačního systému Android. [12] Application framework - zjednodušuje opakované použití součástí systému Libraries - obsahuje set knihoven C/C++, které využívají různé součásti systému Android Android Runtime - každá aplikace běží jako samostatný proces se svojí vlastní instancí na virtuálním stroji s názvem Dalvik (architektura založená na Linuxovém jádru s ohledem na úsporu energie) Linux Kernel - Android je postaven na Linuxovém jádru 2.6 kvůli službám, jako jsou správa paměti a řízení procesů Aplikační součásti Android Aplikační součásti jsou základní stavební kameny systému Android. Každá součást má svoji jedinečnou funkci a předem specifikovaný životní cyklus, čímž vytváří konečné chování aplikace. 9

26 1. Analýza a návrh Ještě před startem aplikačních součástí se musí systém ujistit, že všechny komponenty existují. To provede tím, že přečte soubor AndroidManifest.xml, který je umístěn v kořenovém adresáři a jsou v něm definovány všechny podstatné položky. Pokud je vše v pořádku může začít pracovat s následujícími součástmi: [10] 10 Activities Aktivita poskytuje uživateli obrazovku se kterou může provádět interakci (např. používat ového klienta). Každá aktivita je vedená jako samostatná obrazovka, a proto můžeme v ovém klientu např. zapnout fotoaparát pro pořízení fotografie. Activities obsahují většinu aplikační logiky a musí dodržovat životní cyklus. Aktivita posunutá do pozadí se ukládá do zásobníku, aby mohla být při zpětném volání zavolána. Pokud ale nová aktivita např. potřebuje mnoho paměti, může být stará aktivita zničena. Activities se mohou nacházet v těchto stavech (obr. 1.2): Activity launched - aktivita se incializuje Activity running - aktivita běží, uživatel může obrazovku používat Activity shut down - aktivita skončila, nebo byla zničena systémem App process killed - systém ukončil neviditelnou aktivitu, např. z důvodu nedostatku paměti pro aktuálně používanou aktivitu Services Služba je součást, která běží na pozadí a slouží například k tomu, aby uživatel mohl přehrávat hudbu zatímco píše SMS nebo ovládá jinou aplikaci. Neposkytuje uživatelské rozhraní, to mají za úkol Activities, které většinou Services ovládají. Content providers Poskytovatel obsahu spravuje sadu aplikačních dat. Má za úkol sdílet data mezi aplikacemi a mezi aktivitami, které se mohou jeho prostřednictvím na data dotazovat, nebo je měnit. Např. při vytváření události v kalendáři s odkazem na konkrétní kontakt. Data mohou být ukládána do souborů, databáze, na webu nebo na jiné úložiště. Broadcast reciever

27 1.3. Web services Broadcast reciever naslouchá a reaguje na systémová volání, které mohou pocházet ze systému (oznámení o vybité baterii) nebo přímo od aplikace (data byla stažena). Broadcast může na taková volání reagovat výpisem do stavové řádky, nebo zavoláním jiné komponenty (neposkytuje uživatelské rozhraní). Komunikace mezi součástmi probíhá pomocí prostředku Intent. Ten se stará o to, abychom v případě, že chceme prostřednictvím jedné aplikace využít nějakou jinou, nemuseli tuto aplikaci náročně hledat. Pokud například chceme v kalendáři vytvořit událost, ke které chceme připojit kontakt a zvolíme možnost přiřadit kontakt, Intent vyhledá všechny možnosti splňující naše kritéria - tzn. dá nám na výběr, zda chceme kontakt vyhledat pomocí aplikace Kontakty, nebo například pomocí nějakého správce souborů, případně pomocí jiného programu spravujícího kontakty. 1.3 Web services Web services, neboli česky webové služby umožňují komunikaci dvou aplikací po síti pomocí strojově zpracovatelného formatu, čímž je XML 2. Služby ve Web services jsou definovány pomocí jazyku WSDL a komunikace probíhá s pomocí protokolu SOAP. Další součástí je standard UDDI, který slouží pro nalezení webových služeb. [13] Jak jsem tedy již napsala, web services jsou tvořeny třemi základními částmi: SOAP - protokol pro vzdálené volání procedur WSDL - jazyk pro popis webových služeb UDDI - standard pro nalezení webové služby SOAP SOAP neboli Simple Object Access Protokol je protokol pro výměnu zpráv vyvinutý firmou Microsoft v roce Pro svoji činnost využívá HTTP 3, kde s metodou POST posílá data ve formátu XML. S předávanými parametry poté zasílá i informaci, která funkce se bude volat. Nezanedbatelnou roli hraje WSDL, s jehož pomocí je definována struktura SOAP. 2 extensible Markup Language - obecný značkovací jazyk 3 HyperText Transfer Protocol 11

28 1. Analýza a návrh Obrázek 1.2: Životní cyklus activities. [11] WSDL Web Services Description Language je jazyk popisující webové služby, tedy například to, jaké funkce se dají volat. Je založen na XML, jehož pomocí je možné zapsat libovolně složitě strukturovaná data v platformově nezávislém formátu. Jednotnosti potřebné pro nezávislost se dá dosáhnout například pomocí využití XML Schémat, která typově omezují data a XML jmenných prostorů, která zabraňují kolizím, například předchází stejnému pojmenování proměnných. 12

29 1.4. REST UDDI Poslední součástí webové služby je Universal Description, Discovery and Integration, standard pro nalezení webové služby. V praxi se jedná o registr sloužící pro veřejné či neveřejné ukládání a vyhledávání webových služeb. Cílem je tedy reprezentace dat a metadat o webových službách s využitím možností třídění a řazení webových služeb. 1.4 REST V této kapitole se seznámíme s pojmem REST, který je součástí zadání práce. Zkratka REST znamená Representational State Transfer a jedná se o architekturu rozhraní pro vytváření síťových aplikací. Jeho představitelem je Roy Fielding, který tuto architekturu prezentoval ve své disertační práci v roce Vzhledem k tomu, že Roy Fielding je spoluautorem protokolu HTTP, není divu, že se architektura REST opírá právě o protokol HTTP. Mezi nepopiratelné výhody patří, že je REST platformově nezávislý, takže je jedno zda server běží na Unixu a klient používá Windows či Mac, jazykově nezávislý a ačkoliv sám není standardizován, je založen na standardu HTTP. Jako potvrzení, že se REST opírá o HTTP je fakt, že RESTové aplikace používají čtyři základní operace s daty, tzv. CRUD metody (Create, Read, Update, Delete), které jsou implementovány pomocí metod HTTP protokolu. REST vlastně určuje, jak se přistupuje k datům a je používaný pro snadný a jednotný přístup ke zdrojům pomocí jejich unikátního identifikátoru URI 4. Co se týče reprezentace zdrojů, mohou mít různou podobu, např. JSON 5, XML nebo RSS 6. [14] GET (Read) HTTP metoda GET slouží jako základní metoda pro přístup ke zdrojům. Konkrétně se jedná například o požadavek na stránku odeslaný pomocí HTTP GET metody s použitím identifikátoru URI. Pokud bychom potřebovali získaná data nějak konkretizovat, nebo filtrovat je to možné. Jedná se o metodu která je idempotentní - lze ji volat opakovaně se stále stejným výsledkem. POST (Create) 4 Universal Resource Identifier 5 JavaScript Object Notation 6 Really Simple Syndication 13

30 1. Analýza a návrh Tato metoda slouží k vytvoření nového zdroje a jedná se o jedinou metodu, která není idempotentní, tedy s každým požadavkem se stav zdroje mění. Metoda POST se používá například v HTML 7 formulářích. V případě, že vytvoření proběhlo vrací server návratový kód Created, v opačném případě vrací server chybový kód, například Unauthorized, Forbidden. PUT (Update) Metoda PUT je velice podobná metodě POST s tím rozdílem, že u metody PUT je předem známý URI identifikátor zdroje, který chceme změnit. U vytvářeného zdroje metodou POST není možné aby bylo známé jeho URI, protože zdroj ještě není vytvořen. Jedná se o idempotentní metodu. DELETE Metoda DELETE je velice podobná metodě GET. Místo abychom zdroj získali, tak ho přímo smažeme. Jedná se o idempotentní metodu. 1.5 Restful aplikace Abychom mohli aplikaci označit za Restful, musí splňovat základní principy REST designu [15]. Mezi základní principy patří: Jednotné rozhraní Bezestavová komunikace Adresovatelnost Reprezentace zdrojů Jednotné rozhraní Tato podmínka jednoznačně určuje, že je potřeba držet se HTTP protokolu a výše zmíněných CRUD metod (Create, Read, Update, Delete), tzn.: POST pokud chceme na serveru vytvořit nový zdroj GET pokud chceme získat zdroj PUT pro pozměnění zdroje 7 HyperText Markup Language 14

31 1.5. Restful aplikace Obrázek 1.3: Stavový model komunikace [15] DELETE pro odstranění zdroje Neměli bychom se dopouštět omylů, jako například přidávání zdroje pomocí metody GET: GET /adduser?name=robert HTTP/1.1 Správně má přidání zdroje vypadat například takto: POST /users HTTP/1.1 Host: myserver Content-Type: application/xml <?xml version="1.0"? <user> <name>robert</name> </user> Bezestavová komunikace V případě bezestavové komunikace nejsou data spravována serverem, ale pouze klientskou aplikací. Server je tedy zodpovědný pouze za generování odpovědi a poskytování rozhraní, které umožňuje klientovi udržet vlastní stav aplikace. Takový přístup je méně komplikovaný a výkonější. Na obrázku 1.3 můžeme vidět stavovou komunikaci - aplikace si neudržuje svůj stav, proto se může dotazovat všeobecně na NextPage. Zatímco na obrázku 1.4 se jedná o bezestavovou komunikaci, a proto při požadavku na další stranu aplikace informuje, že se aktuálně nacházíme na straně 2. 15

32 1. Analýza a návrh Obrázek 1.4: Bezestavový model komunikace [15] Adresovatelnost REST pracuje s tzv. zdroji, které jsou identifikovány pomocí URI (Uniform Resource Identifier), neboli pomocí jednotného identifikátoru zdroje. Všeobecně platí, že by URI mělo být jednoznačné, předvídatelné a snadno odvoditelné. Abychom toho dosáhli, je vhodné definovat si adresářovou strukturu, která je hierarchická a má vlastní kořen. Ukázkou takového URI může být například následující adresa: přičemž: je protokol, je doménové jméno, discussion je kořen, který má pod sebou uzel topics pod uzlem topics existuje řada názvů různých diskuzních témat. Další pravidla, která bychom měli dodržovat aby bylo URI plně funkční jsou: 16 používat pouze malá písmena namísto mezer používat podtržítko nebo pomlčku nepoužívat znaky používané pro dotazy (jako například otazník) a v neposlední řadě platí, že URI by měla být statická, což umožní funkčnost odkazu i v případě změny zdroje

33 1.6. Hlavičky HTTP Reprezentace zdrojů Reprezentace zdrojů, tzn. formát dat o které jsme právě požádali může být v různých formátech, nejčastěji se setkáváme s XML, JSON nebo RSS. 1.6 Hlavičky HTTP REST aplikace využívají HTTP protokol a tím pádem i HTTP hlavičky. Co to tedy vlastně HTTP hlavičky jsou? HTTP hlavičky jsou součástí protokolu a mají za úkol konkretizovat parametry probíhající komunikace. Dalo by se říci, že se v nich definuje jak bude probíhat komunikace, jak probíhá a jaký je její výsledek. Hlavičky bychom mohli rozdělit do čtyř typů: [16] Obecné hlavičky, které poskytují univerzální informace o zprávě, např.: Date - informují o datu vytvoření zprávy: Sun, 06 Nov :49:37 GMT Connection - definují podmínky připojení: Connection: close Hlavičky dotazu, které konkretizují dotaz, např.: Host - informuje o jméně serveru, případně portu pro požadavek: Host: info.pvt.net:8087 Accept-Charset - definuje, která znaková sada se má použít v odpovědi: Accept-Charset: iso , iso ;q=0.8 Hlavičky odpovědi, které konkretizují odpověď, např.: Location - používá se v případě přesměrování stránky - uvádí se v ní kam byla stránka přesunuta: HTTP/ Moved Permanently Location: Hlavičky těla, popisující tělo, např.: Content-Type - určuje formát zobrazovaných dat: Content-Type: text/html;charset=iso

34 1. Analýza a návrh 1.7 Autentizace Pokud se běžný uživatel internetu chce například přihlásit na webové stránky, musí zadávat své uživatelské jméno a heslo. V takovém případě server spolupracuje s databází, kde hledá zadaného uživatele a kontroluje, zda je v databázi zaveden a zda odpovídá jak jméno, tak heslo. Protože ale není možné, aby uživatelská data byla posílána nechráněná, je potřeba tato data nějakým způsobem zabezpečit. U HTTP protokolu, který využívá REST se setkáváme se třemi nejčastějšími možnostmi: [18] Basic Authentication V tomto případě klient posílá jméno a heslo v hlavičce Authorization (kapitola 1.6). Například: GET /soukrome/text.html HTTP/1.1 Authorization: Basic QWxhZGRpbjGVuIH== Jak můžeme vidět na příkladu, jméno a heslo je kódováno. U metody HTTP Basic se kóduje algoritmem base64. Již na první pohled je vidět, že ochrana není zcela dostačující. Schéma neposkytuje zabezpečení proti odposlechu a pokud se někomu podaří odchytit autorizační řetězec, není problém ho rozluštit, například v PHP pouhým jedním řádkem: $decoded = base64_decode($stringtodecode); Digest Access Authentication S příchodem protokolu HTTP 1.1 přichází i rozšíření v podobě Digest Access Authentication. Digest řeší problém se zasíláním skoro nechráněného jména a hesla u Basic Authentication tak, že již nezasílá přímo jméno a heslo, ale pouze kontrolní součet jména, hesla a řetězce, šifrovaného algoritmem MD5. Díky tomu odpadá možnost odposlechu a rozluštění jména a hesla, a proto je Digest Access Authentication o poznání bezpečnější OAuth Cílem metody OAuth je možnost používat webové aplikace, aniž bychom museli poskytovat údaje třetím stranám. Nejlepší vysvětlení je na příkladu - v dnešní době sociálních sítí jako Facebook, Twitter a Google+ se stále 18

35 1.8. Webový portál Nume Obrázek 1.5: Lišta pro sdílení na sociálních sítích [17] častěji setkáváme s tím, že můžeme například článek ze stránky, která nemá s danou sociální sítí nic společného, publikovat na svém profilu (viz. obrázek 1.5). Právě OAuth toto umožňuje aniž bychom museli například stránce root.cz sdělovat své přihlašovací údaje na sociální síť, např. na facebook. Jak tedy takový proces probíhá popisuje obrázek 1.6, slovně asi takto: Pokud chceme např. nějaký článek ze serveru root.cz sdílet na našem facebookovém profilu, musí nejdřív root.cz zažádat facebook o neautorizovaný Token. Facebook token poskytne a uživatel je přesměrován (i s neautorizovaným tokenem) na facebookové stránky a vyzván k přihlášení. Po přihlášení je uživatel přesměrován zpět na root.cz a root.cz může požádat o klíč k tokenu ve kterém jsou přihlašovací údaje. Facebook mu klíč předá a root nyní může přistupovat k našemu facebookovému profilu. [17] 1.8 Webový portál Nume Jedná se o aukční portál zabývající se dražbou položek ze sběratelských oborů numismatika (věda zabývající se platebními prostředky, jako jsou mince a bankovky), faleristika (věda zabývající se historií řádů a vyznamenání) a podobných. V současné době je implementace řešena ve frameworku Nette. Za naprosto nezbytné považuji zmínit, že aukční portál Nume.cz je založen na pravidlech Vickreyho aukce, která je popsaná výše v kapitole Vickreyho aukce Co do funkčnosti nabízí portál Nume.cz širokou nabídku funkcí, které nyní představím Registrace Registraci může provést fyzická nebo právnická osoba tím, že vyplní své osobní informace. (obr. 1.7, a)) Přihlášení/Odhlášení Po registraci je možné se přihlašovat a odhlašovat. (obr. 1.7, b)) 19

36 1. Analýza a návrh Obrázek 1.6: autentizační schéma OAuth [17] 20

37 1.8. Webový portál Nume Aktivace účtu Aby mohl registrovaný uživatel plně využívat všech funkcí Nume.cz, například nákup a prodej, musí provést aktivaci účtu zasláním požadavku o aktivaci. Po zaslání požadavku je uživateli na příslušnou adresu zaslán aktivační kód, který zadá do aktivační sekce na svém profilu, a tím aktivuje svůj účet. Následující funkce jsou popsány s předpokladem, že uživatel má plně aktivovaný účet Prodej V případě, že chce uživatel nabídnout své zboží k prodeji, může tak učinit vyplněním formuláře informacemi o prodávaném předmětu. Za určitých podmínek (upřesněných ve Všeobecných podmínkách Nume [2]) je uživateli zpřístupněn hromadný upload, tzn. nahrání více položek najednou. Další možnosti prodeje upřesním níže. (obr. 1.7, c)) Nákup Za předpokladu, že si nakupující uživatel vybral ze zveřejněné nabídky zboží o které má zájem, může využít následujících prostředků, uvedených v kapitole pro jeho koupi. (obr. 1.7, d)) Možnosti nákupu a prodeje To, jaké jsou možnosti nákupu závisí na tom, jaké podmínky určil majitel (prodávající) žádaného zboží. Pro prodávajícího a tedy i pro nakupujícího jsou dostupné tyto možnosti, s tím, že první dvě možnosti (Příhoz a Kup teď) jsou součástí aukce a jsou časově omezené (omezení určí prodávající) a třetí možnost (obchod) není časově omezena: Příhoz - nakupující uživatelé se přehazují a vyhrává nejvyšší nabídka. Kup teď - uživatel nakoupí položku za předem známou cenu určenou prodávajícím. Obchod - zboží je nabídnuto za pevnou cenu a není možné zakoupit položku pomocí příhozů. 21

38 1. Analýza a návrh Procházení kategorií Jedná se o jednu z funkcí, kterou může využít i nepřihlášený uživatel. Zboží je vystavováno ve třech základních kategoriích, které jsou dále děleny do dvou podkategorií. Základní kategorie jsou: (obr. 1.7, e)) Mince a medaile Papírová platidla Řády a vyznamenání Vyhledávání V případě, že nakupující uživatel má alespoň přibližnou představu co hledá, může využít funkci vyhledávání. (obr. 1.7, f)) Další funkce Sledování aukce - Pokud má uživatel o dražený předmět zájem, ale ještě není rozhodnut zda ho koupit, může si aukci přidat do sledovaných a sledovat vývoj ceny draženého předmětu. Komentář - Ke každému prodávajícímu může být napsán komentář. Hodnocení uživatele - Prodávající uživatel je hodnocen předchozími nakupujícími podle jejich zkušenosti. 1.9 Mobilní aplikace Nume V následujících kapitolách je provedena analýza požadavků na funkce a funkčnost budoucí mobilní aplikace pro portál Nume Uživatelské role Uživatel aplikace Uživatel aplikace je libovolný člověk, který může aplikaci nějakým způsobem využívat. V našem případě se pravděpodobně bude jednat o zájemce o aukce a starožitná platidla a vyznamenání. 22

39 1.10. Uživatelské role Obrázek 1.7: Úvodní stránka portálu Nume. a) Registrace, b) Přihlášení, c) Prodej, d) Nákup, e) Hlavní kategorie, f) Vyhledávání 23

40 1. Analýza a návrh Nepřihlášený uživatel Jedná se o uživatele u kterého nebyla provedena autentizace, ale aplikaci již zapnul a využívá možností pro neautorizované uživatele, které jsou popsané v částech výše (mobilní aplikace bude dodržovat stejná pravidla přístupů jako webový portál) Přihlášený uživatel Přihlášený uživatel je ten uživatel, který přes webové stránky provedl registraci a poté se úspěšně pomocí mobilní aplikace autorizoval Přihlášený uživatel s plně aktivním účtem Tato role je získána tak, že přihlášený uživatel zadá aktivační kód, který obdržel po zažádání do své poštovní schránky, na svém profilu a může poté využívat všechny dostupné možnosti aukčního portálu Nume Případy užití Na obrázku 1.8 můžeme vidět případy užití s výše zmíněnými uživatelskými rolemi. V následujících podkapitolách podrobněji vysvětlím některé z hlavních případů užití Přihlášení uživatele Popis případu užití pro přihlášení uživatele se nalézá v tabulce Odhlášení uživatele Popis případu užití pro odhlášení uživatele se nalézá v tabulce Zobrazení vlastního profilu Popis případu užití pro zobrazení vlastního profilu přihlášeného uživatele se nalézá v tabulce Nákup v obchodě Popis případu užití pro nákup v obchodě se nalézá v tabulce

41 1.11. Případy užití Přihlášený uživatel s aktivovaným účtem Kup teď Přihodit Přihlásit se Procházet kategorie Procházet položky Zobrazit detail položky Zobrazit profil Odhlásit se Nakoupit v obchodě System Nepřihlášený uživatel Přihlášený uživatel Obrázek 1.8: Diagram případů užití 25

42 1. Analýza a návrh Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Tabulka 1.2: Případ užití - Přihlášení uživatele Autorizace aktéra Nepřihlášený uživatel Aktér se chce přihlásit Aktér je identifikován a proběhla autorizace - Je zobrazen přihlašovací formulář - Aktér vyplní své přihlašovací údaje (jméno a heslo) - Aplikace se spojí se serverem a identifikuje aktéra - Aplikace se nemohla spojit se serverem, je potřeba obnovit spojení - Aktér vyplnil nesprávně přihlašovací údaje, je vyzván k opakování Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Tabulka 1.3: Případ užití - Odhlášení uživatele Odhlášení aktéra Přihlášený uživatel Aktér se chce odhlásit Aktér je odhlášen - Je zobrazen potvrzovací dialog - Aktér potvrdí odhlášní - Aplikace odhlásí aktéra - Aktér nepotvrdil odhlášení a je stále přihlášen Tabulka 1.4: Případ užití - Zobrazení vlastního profilu Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Zobrazení vlastního profilu aktéra Přihlášený uživatel Aktér chce zobrazit vlastní profil Aktér vidí vlastní profil - Aktér je přihlášen a vidí tlačítko Zobrazit profil - Aktér stiskne tlačítko Zobrazit profil - Aktérovi je zobrazen vlastní profil - Aktér není přihlášen a tedy nevidí tlačítko Zobrazit profil - Aktér je přihlášen, ale nestiskl tlačítko Zobrazit profil 26

43 1.12. Analýza požadavků Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Tabulka 1.5: Případ užití - Nákup v obchodě Zakoupit předmět nabízený v obchodě Přihlášený uživatel s plně aktivním účtem Aktér chce zakoupit předmět z obchodu Aktér úspěště zakoupil předmět z obchodu - Systém zkontroluje zda je aktér přihlášen - Aktér zvolí možnost Nakup v obchodě - Aktér je vyzván k pozvrzení výběru - Aktér nevidí možnost nakup v obchodě, protože u daného předmětu (aukce) není možná - Aktér nemá možnost nákupu, je potřeba přihlásit se - Aktér nemá možnost nákupu - jeho účet není aktivní - Aktér nepotvrdí výběr a obchod neproběhne - Není možné zakoupit položku, protože se nachází v jiném stavu než v aktivním - Aplikace se nemohla spojit se serverem, je potřeba obnovit spojení Nákup pomocí Kup teď Popis případu užití pro nákup pomocí Kup teď se nalézá v tabulce Nákup pomocí příhozů Popis případu užití pro nákup pomocí příhozů se nalézá v tabulce Analýza požadavků Start aplikace Uživatel zapne aplikaci a ta mu nabídne možnost přihlásit se a zobrazit základní kategorie nabízené na tomto portálu. Jako další možnosti se tedy uživateli nabízí: Procházení kategorií Uživatel může procházet kategorie a podkategorie. Prohlížení sekcí 27

44 1. Analýza a návrh Tabulka 1.6: Případ užití - Nákup pomocí Kup teď Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Zakoupit dražený předmět Přihlášený uživatel s plně aktivním účtem Aktér chce zakoupit předmět Aktér úspěště zakoupil předmět - Systém zkontroluje zda je aktér přihlášen - Aktér zvolí Kup teď u vybraného předmětu - Aktér je vyzván k pozvrzení výběru - Aktér nevidí možnost Kup teď, protože u daného předmětu není možná - Aktér nemá možnost nákupu, je potřeba přihlásit se - Aktér nemá možnost nákupu - jeho účet není aktivní - Aktér nepotvrdí výběr a obchod neproběhne - Není možné koupit za Kup teď, příhozy přesáhly cenu Kup teď - Není možné zakoupit položku, protože se nachází v jiném stavu než v aktivním - Aplikace se nemohla spojit se serverem, je potřeba obnovit spojení Uživatel může procházet nabízené zboží s možností dělení na aukční položky, položky v obchodu, nebo položky obchodu i aukce dohromady. Zobrazení detailu Aukce/Obchodu Po zvolení požadovaného zboží ze sekce, se uživateli zobrazí detail položky (aukce/obchod), který obsahuje podrobnosti o zboží a po přihlášení je možné na položku přihazovat nebo nakupovat. Přihlášení Uživatel je vyzván k autentizaci vyplněním svého přihlašovacího jména a hesla Uživatel je přihlášen Pokud uživatel již provedl autentizaci a je nyní přihlášen, může se odhlásit, a to v případě, že již nechce využívat výhody přihlášení. Po odhlášení může uživatel užívat aplikaci stejně tak, jako tomu bylo po startu aplikace. Důležité je zmínit, že aby uživatel mohl nakupovat zboží, musí být přihlášen a musí mít plně aktivovaný účet. V případě, že uživatel nemá plně 28

45 1.12. Analýza požadavků Tabulka 1.7: Případ užití - Nákup pomocí příhozů Cíl Aktér Vstupní podmínky Výstupní podmínky Základní scénář Alternativní scénáře Zakoupit dražený předmět pomocí příhozů Přihlášený uživatel s plně aktivním účtem Aktér chce zakoupit předmět prostřednictvím příhozů Aktér úspěště vydražil předmět - Systém zkontroluje zda je aktér přihlášen - Aktér zvolí maximální cenu - Systém navýší hodnotu předmětu - Aktér nevidí možnost příhozů, protože u daného předmětu (obchod) není možná - Aktér nemá možnost nákupu, je potřeba přihlásit se - Aktér nemá možnost nákupu - jeho účet není aktivní - Aktér nepotvrdí příhoz a transakce neproběhne - Aktér přihodil nižší cenu, než je současná cena, příhoz nebyl přijat - Příhoz byl přijat, ale byl přehozen předchozím příhozem - Není možné zakoupit položku, protože se nachází v jiném stavu než v aktivním - Aplikace se nemohla spojit se serverem, je potřeba obnovit spojení aktivovaný učet, nemůže nakupovat zboží a nad možnosti nepřihlášeného uživatele může využít pouze možnosti zobrazit svůj profil. Pokud je uživatel přihlášen a má plně aktivní účet, může využít všech dostupných možností, včetně nákupu zboží Nákup zboží V případě, že uživatel v sekci nalezl zboží o které má zájem,e může si zobrazit detail položky, kde se nacházejí informace o jejím aktuálním stavu, informace o položce a v případě aukce zde může nalézt historii příhozů. Samozřejmě může na dražený předmět přihodit (v případě aukce) a tím projevit zájem o koupi nebo pokud je to u dané aukce možné, koupit zboží ihned za předem známou cenu funkcí Kup teď. U obchodu může uživatel zboží pouze nakoupit, a to za předem známou cenu. 29

46 1. Analýza a návrh Zobrazit profil V sekci Zobrazit profil může přihlášený uživatel vidět své osobní informace, jako je jméno, adresa, telefon a další. Také zde vidí, zda je jeho účet aktivní nebo není Funkční požadavky Přihlášení Vyžadovaná role - Nepřihlášený uživatel (1.10.2) Odhlášení Vyžadovaná role - Přihlášený uživatel (1.10.3) Zobrazení nabídek Vyžadovaná role - Nepřihlášený uživatel (1.10.2) Zobrazení detailu položky Vyžadovaná role - Nepřihlášený uživatel (1.10.2) Zobrazení vlastního profilu Vyžadovaná role - Přihlášený uživatel (1.10.3) Nákup v obchodě Vyžadovaná role - Přihlášený uživatel s plně aktivním účtem (1.10.4) Příhoz na aukci Vyžadovaná role - Přihlášený uživatel s plně aktivním účtem (1.10.4) Možnost Kup teď u aukce Vyžadovaná role - Přihlášený uživatel s plně aktivním účtem (1.10.4) 30

47 1.14. Nefunkční požadavky 1.14 Nefunkční požadavky Funkční na platformě Android Minimální verze 2.2 Uživatelsky přívětivé - snadná orientace 1.15 Návrh restového rozhraní Vzhledem k tomu, že pro funkčnost mobilní aplikace je nezbytně nutné mít serverovou stranu, bylo potřeba abych takový server naimplementovala. Ráda bych ale zdůraznila, že serverová část není hlavním předmětem mé bakalářské práce a proto jsem se při implementaci zaměřila především na funkčnost, nezbytně nutnou pro chod mé mobilní aplikace. Po předchozí analýze jsem se rozhodla využít architekturu REST. Pro snazší implementaci jsem připravila návrh restového rozhraní: Přihlášení uživatele Cíl: Metoda: URL: Hlavička: Formát odpovědi: Odpověď: Uživatel se chce přihlásit GET /rest/login.json Authorization: Basic [username:password v Base64] JSON Osobní údaje uživatele (pokud jsou přihlašovací údaje správné) Odhlášení uživatele Cíl: Uživatel se chce odhlásit Metoda: GET URL: /rest/logout.json Hlavička: Authorization: Basic [username:password v Base64] Formát odpovědi: JSON Odpověď: ok 31

48 1. Analýza a návrh Zobrazení hlavních kategorií Cíl: Uživatel chce zobrazit hlavní kategorie Metoda: GET URL: /rest/category.json Hlavička: - Formát odpovědi: JSON Odpověď: informace o třech hlavních kategoriích (název, id) Zobrazení podkategorií Cíl: Uživatel chce zobrazit podkategorie Metoda: GET URL: /rest/category/[id nadřazené kategorie].json Hlavička: - Formát odpovědi: JSON Odpověď: informace o podkategoriích (název, id) Zobrazení položek auction může mít hodnoty 0 - pouze obchod, 1 - pouze aukce, 2 - aukce i obchody Cíl: Uživatel chce zobrazit položky - aukce a obchody Metoda: GET URL: /rest/section/[id kategorie].json?auction=[0 1 2]&page=[číslo stránky] Hlavička: - Formát odpovědi: JSON Odpověď: informace o položkách z vybrané kategorie Zobrazení detailu položky Cíl: Uživatel chce zobrazit detail položky Metoda: GET URL: /rest/auction/[id položky].json Hlavička: - Formát odpovědi: JSON Odpověď: detailní informace o vybrané položce 32

49 1.15. Návrh restového rozhraní Příhoz Cíl: Metoda: URL: Hlavička: Formát odpovědi: Odpověď: Uživatel chce přihodit na aukci POST /rest/bid/[id aukce].json Authorization: Basic [username:password v Base64] Price: [přihozená částka] JSON odpověď serveru (true, Házíte pod cenou) Nákup v obchodu nebo Kup teď Cíl: Uživatel chce koupit položku z aukce nebo obchodu Metoda: POST URL: /rest/buy/[id aukce].json Hlavička: Authorization: Basic [username:password v Base64] Formát odpovědi: JSON Odpověď: odpověď serveru (true, chyba) 33

50

51 Kapitola 2 Realizace serveru Protože mobilní aplikace - klient není funkční bez serveru, popíši v první části realizaci serveru. Jak jsem již zmínila na předchozích stránkách, server není předmětem mé bakalářské práce, a proto byl vypracován tak, aby v první řadě sloužil mé mobilní aplikaci. 2.1 Vývojové prostředí Jako vývojové prostředí jsem si zvolila program NetBeans IDE , který podporuje jazyk PHP 9, ve kterém je server napsán. Abych byla konkrétnější, server je napsán v jazyku PHP s využitím frameworku Nette, který je popsán v následující kapitole (2.2 Framework Nette). 2.2 Framework Nette Nette framework jsem si zvolila z prostého důvodu, že již hotová webová aplikace Nume byla napsána s využitím tohoto frameworku. Výhoda Nette frameworku je ta, že celá dokumentace je v češtině a rozšiřuje tak skupinu zájemců i o ty, kteří angličtinu zcela neovládají. Já jsem bohužel nemohla, z důvodu nutnosti práce na klientovi, dostatečně nahlédnout do světa Nette. Nevýhoda ovšem byla v tom, že Nette samo nepodporuje Restový server. Proto jsem na restové routování použila kód od Adama Štipáka RestRoute 10, který mapuje CRUD operace do presenteru a je dostupný přes úložiště Github Hypertext Preprocessor

52 2. Realizace serveru 2.3 Persistence dat Data se kterými jsem pracovala bohužel nemohu poskytnout, neboť jsou majetkem firmy NUME ONE s.r.o. a jsou licencovaná. Pouze tedy vypíši strukturu databáze, a to tabulky, které jsem ve své práci využívala. bid - Tabulka, ve které se uchovávají informace o příhozech, jako id aukce, id uživatele, výše příhozu a čas příhozu. buynow - Tabulka, ve které se uchovávají informace o nákupu Kup teď a nákupu přes obchod. category - Tabulka se záznamy o kategoriích a podkategoriích. itemimages - Tabulka se záznamy o obrázcích k položkám, jako je id aukce a id obrázku. images - Jedná se o tabulku na kterou se odkazuje tabulka itemimages, nachází se v ní například cesta k obrázku a jeho název. saleitem - Obsahuje veškeré informace o položkách, jako je název, id majitele, cena, čas do konce a další. user - Tabulka se záznamy o uživatelích, například jméno, příjmení, , telefon a další. address - Tabulka s adresou uživatele. 2.4 Aplikační logika Aplikační logika Nette je založená na architektuře MVP, tedy Model-View- Presenter. Kdy každá část má svoji vlastní úlohu. Model je datová a funkční vrstva aplikace, View se stará o vykreslení výsledku a Presenter spojuje obě vrstvy dohromady, kdy na základě požadavku uživatele vyvolá příslušnou aplikační logiku. V mé práci se setkáváme s presentery, které popisuji v následujících odstavcích BasePresenter Základní presenter, který podle zadaného URL volá příslušné presentery. Mimo této funkce také pracuje s hlavičkami a z výsledků presenterů tvoří JSON, který odesílá jako odpověď. Mimo jiných v něm najdeme funkce: public function actionread(){} 36

53 2.4. Aplikační logika public function actioncreate(){} pro GET a POST operace SectionPresenter Třída zajištující načítání položek ze zadané kategorie. Protože se může stát, že chceme zobrazit položky z kategorie, která není poslední, musíme použít rekurzi. V tomto případě se jedná o funkci private function gettree($parent, $where) {} které předáváme id nadřazené kategorie a která rekurzivně prochází tabulku saleitem (2.3) a hledá v ní položky z příslušné kategorie. Proměnná $where určuje zda se budou hledat aukce, obchody nebo obojí CategoryPresenter Presenter, který vrací kategorie. V případě, že předem známe nadřazenou kategorii, vypisuje podkategorie podle id nadřazené kategorie, zadané v url. V případě, že neznáme nadřazenou kategorii vypíše tři hlavní kategorie AuctionPresenter Presenter, který vrací všechny informace z tabulky saleitem - tedy podrobnosti o obchodu nebo aukci. Mimo to vrací i historii příhozů a adresu a název obrázku LoginPresenter Podle přijatého jména a hesla (dešifrovaného z hlavičky v BasePresenteru) vyhledá v databázi záznam o uživateli. Pokud uživatel existuje, vrací jeho osobní informace a adresu. Pokud v databázi uživatel neexistuje, případně se neshoduje jméno a heslo, vrací prázdné pole ImagePresenter Presenter, který podle přijatého id položky vrací předem neznámou množinu cest a názvů obrázků. 37

54 2. Realizace serveru LogoutPresenter Odhlásí uživatele a vrací true BidPresenter Presenter zajišťující příhoz na aukci identifikované podle id v url. Přihazovaná cena se zjistí z hlavičky v BasePresenteru. Spolupracuje s již hotovou logikou Nume a v případě úspěchu vrací true. V případě neúspěchu vrací chybovou hlášku BuyPresenter Zajišťuje nákup v obchodě nebo pomocí Kup teď. Stejně jako BidPresenter spolupracuje s již hotovou logikou Nume a v případě úspěchu vrací true, v případě neúspěchu vrací chybovou hlášku. 38

55 Kapitola 3 Realizace Klienta - mobilní aplikace 3.1 Vývojové prostředí Svoji mobilní aplikaci jsem vyvíjela v prosředí Eclipse SDK verze , které se dá stáhnout jako součást balíčku ADT 12. ADT je oficiální plugin, česky zásuvný modul, pro vývoj Androidu a obsahuje všechny knihovny a nástroje potřebné pro vznik nové Android aplikace. Mimo jiné je součástí balíčku i emulátor AVD 13, který jsem při své práci často využívala a z něhož pochází následující obrázky. Ještě bych ráda připomněla, že aplikace je psaná v jazyku Java. 3.2 Aplikační logika Většina aplikační logiky se skrývá v aktivitách (popsaných v kapitole 1.2.5). Každou aktivitu můžeme prezentovat jako samostatnou obrazovku. Ve své práci jsem navrhla několik aktivit, které popisuji v následujícíh kapitolách Hlavní aktivita Jedná se o aktivitu, kterou uživatel vidí jako první po startu aplikace. Můžeme jí také říkat domovská aktivita, protože se na ní odkazujeme z action baru, při stisknutí domovského tlačítka 3.12 (obrázek vlevo na actionbaru) Android DeveloperTools 13 Android Virtual Device 39

56 3. Realizace Klienta - mobilní aplikace Při startu aplikace se na obrazovce nacházejí pouze dvě tlačítka (viz. obrázek 3.1 vlevo), a to: Kategorie Přihlásit se Při kliknutí na tlačítko Kategorie se přesměrujeme na aktivitu Aktivita Kategorie. Při kliku na tlačítko Přihlásit se, se přesměrujeme na aktivitu Přihlašovací aktivita. V případě, že uživatel je přihlášen a vrátí se zpět na tuto aktivitu jsou vidět jiná tlačítka (viz. obrázek 3.1 vpravo), a to: Kategorie Zobrazit profil Odhlásit se Při kliku na tlačítko Zobrazit profil se přesměrujeme na aktivitu Aktivita Profilu. Při kliknutí na tlačítko Odhlásit se se pouze zobrazí potvrzovací dialog (viz. obrázek 3.2). Také se jedná o jedinou aktivitu, která není závislá na internetu, tzn. můžeme ji vidět i v případě, kdy nemáme připojení na internet Přihlašovací aktivita Jak již název vypovídá, jedná se o kategorii, kde se může uživatel přihlásit. Při stisknutí tlačítka Přihlásit se na hlavní obrazovce (případně na actionbaru) se zobrazí tato aktivita obsahující dvě textová vyplňovací pole a odesílací tlačítko Přihlásit se. V každém vyplňovacím poli je nápověda Jméno a Heslo aby uživatel věděl, kam má své údaje zapsat (obrázek 3.3). Po vyplnění údajů, přičemž u hesla se zobrazují pouze tečky, uživatel stiskne tlačítko Přihlásit se a mohou nastat následující situace: 40 Přihlášení bylo úspěšné V případě, že v databázi existuje záznam se zadaným jménem a heslem, je uživatel přihlášen a přesměrován na domovskou aktivitu Přihlášení proběhlo neúspěšně V případě, že v databázi nebyl nalezen uživatel se zadaným jménem a heslem, je zobrazena varovná hláška (viz obrázek 3.3 uprostřed) a je ponecháno vyplněné jméno a odstraněno heslo. Stejná situace nastává i v případě, že uživatel nevyplnil jedno nebo obě textová pole.

57 3.2. Aplikační logika Obrázek 3.1: Hlavní aktivita, vlevo uživatel není přihlášen, vpravo je uživatel přihlášen Obrázek 3.2: Potvrzovací dialog odhlášení 41

58 3. Realizace Klienta - mobilní aplikace Obrázek 3.3: Přihlašovací aktivita, vpravo registrace Není připojení Pokud aktuálně není připojení k internetu, nemůžeme zjistit, zda je uživatelské jméno a heslo platné, proto se zobrazí View V případě, že uživatel ještě není registrován, může využít odkaz Registrace, který přesměruje na webové stránky (3.3, vpravo) Aktivita Profilu Aktivita zobrazující osobní profil přihlášeného uživatele. Jedná se o jednu z aktivit, kdy není potřeba připojení. Připojení není potřeba, neboť všechny potřebné údaje byly přijaté spolu s odesláním přihlašovacích údajů jako odpověď na požadavek o přihlášení. Proto když po přihlášení dojde k přerušení internetového spojení, mohou být údaje zobrazeny. V této aktivitě se také na actionbaru zobrazí tlačítko Odhlásit se, které funguje stejně jako na domovské aktivitě (obrázek 3.2). Ukázka profilu je na obrázku Aktivita Kategorie Aktivita kategorií je aktivita vytvořená s pomocí prvku ListView, což znamená, že se jedná o seznam položek, přičemž předem nevíme o kolik položek se bude jednat. Ač v hlavní kategorii víme, že se bude jednat o 3 položky, nemůžeme vědět, zda se tento počet v budoucnu nezvýší a nebude přidána další hlavní kategorie. 42

59 3.2. Aplikační logika Obrázek 3.4: Osobní profil přihlášeného uživatele Protože jsem chtěla, aby se mezi jednotlivými kategoriemi a podkategoriemi dalo přesouvat i pomocí systémového tlačítka Zpět, každou z úrovní jsem vytvořila jako samostatnou aktivitu. Aby kód nemusel být několikrát duplikovaný, vytvořila jsem hlavní třídu GeneralCat ze které každá kategorie aktivita (KategorieActivity, SecondCat, ThirdCat) dědí. Předávání id mezi jednotlivými kategoriemi probíhá pomocí Intentu (viz. kapitola 1.2.5), stejně tak předávání názvu nadřazené kategorie: Intent act = new Intent(v.getContext(), MainSherlock.class); act.putextra("oldid", ida); act.putextra("oldname", labela); startactivity(act); V našem případě mají kategorie tři stupně. Poté co máme zobrazen poslední stupeň kategorie a nějakou z nich vybereme, přesměrujeme se na aktivitu Aktivita Sekce a ta zobrazí položky z vybrané kategorie. Může se ale stát, že nejsme zcela rozhodnuti jakou přesně kategorii požadujeme, a proto je zde možnost zvolit např. celou hlavní kategorii Mince a medaile. Docílit toho můžeme stisknutím Zobrazit vše u příslušné kategorie (viz. obrázek 3.5). Stisknutí tohoto tlačítka nás přesměruje na aktivitu 43

60 3. Realizace Klienta - mobilní aplikace Obrázek 3.5: Zleva: hlavní kategorie, druhá podkategorie, třetí podkategorie (stejně jako v případě zvolení poslední kategorie), ovšem zobrazí se nám položky ze všech jejích podkategorií. Pokud nastane situace, kdy mobilní zařízení nemá připojení na internet (nebo se internet přeruší ještě před vytvořením aktivity), nezobrazí se požadovaná aktivita, ale nastaví se View Není připojení Aktivita Sekce Jedná se o aktivitu s největší a nejsložitější funkčností. Po zvolené kategorii nám tato aktivita zobrazí položky aukce nebo obchodu. Základem aktivity je třída MainSherlock která dědí z třídy SherlockFragmentActivity importované z rozšíření Sherlock ActionBar (popsané v kapitole 3.3.1). Jednou z hlavních funkcí aktivity je přepínání mezi takzvanými Taby, neboli záložkami (viz. obrázek 3.6), které umožňují vybírat položky podle jejich typu, tedy: Aukce - aukční položky na které lze přihazovat, nebo využít funkci Kup teď Obchod - položky obchodu, které lze nakoupit za pevnou cenu a nejsou časově omezené Vše - aukční položky i položky obchodu dohromady Mezi další funkci této aktivity patří stránkování. Protože jsou veškeré údaje načítané z internetu je doba zobrazení závislá na rychlosti připojení, a proto 44

61 3.2. Aplikační logika Obrázek 3.6: Položky z vybrané kategorie, vpravo vidíme načítací kolečko také není možné zobrazit všechny položky najednou, protože jich mohou být stovky. Proto je ve spolupráci se serverem navrženo stránkování, konkrétně 7 položek na stránku, nastavených na straně serveru. Při prvním načtení této aktivity se zobrazí prvních 7 položek. Pokud chce uživatel vidět další položky, odroluje na konec stránky, kde se zobrazí načítací kolečko, které signalizuje načítání dalších 7 položek (obrázek 3.6 vpravo). Tímto způsobem lze postupně zobrazit všechny dostupné položky. V případě, že uživatele nějaká položka zaujme, zvolí ji a přesměruje se na aktivitu Aktivita Detail Položky. V této aktivitě byla také poprvé použita knihovna ImageLoader (3.3.2), zajišťující načítání obrázků a knihovna JodaTime (3.3.3), zajišťující přepočet času zbývajícího do konce aukce Aktivita Detail Položky Jednou z posledních aktivit je Detail položky. Jedná se o detailní náhled námi zvolené položky. V této aktivitě také můžeme provést příhoz nebo nákup. Podstatné je také říci že vzhled aktivity se liší podle toho, zda se jedná o obchod nebo o aukci. Rozdíl je patrný na obrázku 3.8. Rozdílů mezi detailem obchodu a aukce je více: u obchodu se nemůžeme setkat s historií 45

62 3. Realizace Klienta - mobilní aplikace 46 Obrázek 3.7: Stavový diagram položky

63 3.2. Aplikační logika příhozů. Dále, jak bylo uvedeno výše, je položka obchodu časově neomezená, proto u ní není uveden čas konce. Kromě rozdílů mezi obchodem a aukcí jsou zde rozdíly také podle toho, do jaké kategorie položka spadá. Například u detailu položky z kategorie Mince a medaile jsou informace jako Mincovna a Mincmistr, zatímco u kategorie Řády a vyznamenání jsou to Název řádu a Medailiér. Položky se řídí stavovým automatem 3.7, definovaném již při vzniku webové verze portálu Nume.cz. Z tohoto automatu vyplývá, že jsou pro nás důležité všechny stavy, kromě stavů 4 - Skryté, 7 - Čeká na vystavení a 2 - Smazáno, kdy běžný uživatel nemůže tuto aukci vidět ani si zobrazit její detail a nejsou tedy zobrazeny v mobilní aplikaci. Dle logiky tohoto automatu, může uživatel zakoupit položku pouze pokud se nachází ve stavu 5 - Vystaveno. Může se ale stát, že v okamžiku kdy uživatel aktualizuje detail, je položka již prodána, tzn. nachází se ve stavu 6 - Prodáno. Proto se v této aktivitě vyskytuje několik stavů, kdy uživatel nemůže nakupovat. Tyto stavy jsou následující a jsou výrazně vyznačeny 3.9: Pokud chcete nakupovat, přihlašte se - Uživatel není přihlášen a musí se přihlásit Pokud chcete nakupovat, aktivujte si účet - Uživatel nemá aktivní účet, aktivaci musí provést přes webové stránky Nemůžete koupit vlastní položku Položka je navržena na zrušení - stav 10 Položka byla zrušena portálem - stav 9 Úspěšně ukončeno - stav 8 Prodej byl zrušen prodávajícím - stav 1 Položka se neprodala - stav 3 Položka byla prodána - stav 6 Neaktivní - jiný, neočekávaný stav V případě, že se nenacházíme v žádném z těchto stavů, můžeme položku získat třemi způsoby: 47

64 3. Realizace Klienta - mobilní aplikace Nákup v obchodě Jde o jednorázový nákup za pevně stanovenou cenu, který může být realizován pouze u položek z obchodu. Pokud je uživatel přihlášen a položka se nachází ve stavu 5, může uživatel stisknout tlačítko Nakup v obchodě a potvrdit potvrzovací dialog (obrázek 3.10 vlevo). Pokud nenastane problém, je mu zobrazen text Gratuluji, nakoupil jste a položka změní svůj stav na stav Položka byla prodána. Kup teď Možnost, která je dostupná pouze u aukčních položek, ale pouze pokud ji prodávající uživatel povolil. V případě, že cena navýšená příhozy přesáhla cenu Kup teď, není už tato možnost dále dostupná. Pokud ale možnost Kup teď dostupná je, může uživatel stisknout tlačítko Kup teď a potvrdit potvrzovací dialog (obrázek 3.10 uprostřed). Pokud nenastane problém, je mu zobrazen text Gratuluji, nakoupil jste a položka změní svůj stav na stav Položka byla prodána. Příhoz Způsob, kdy uživatel u aukčních položek nabídne určitou cenu a snaží se díky ní zvítězit. Přihazování v mé aplikaci se říd modifikovanými pravidly Vickreyho aukce (kapitola 1.1.1). Uživatel do čistě numerického políčka zapíše svoji nabízenou cenu a stiskne tlačítko Odeslat a potvrdí potvrzovací dialog (obrázek 3.10 vpravo). Následně je mu zobrazen text, který definuje současný stav: Gratulujeme, nyní jste vítěz - Uživatel nabídl nejvyšší nabídku a nyní v dražbě vede. Přihodil jste cenu nižší než vlastní příhoz - Uživatel již jednou přihodil a při druhém příhozu nabídl nižší částku než při prvním Byl jste přehozen - Příhoz byl platný, bohužel před uživatelem přihodil někdo vyšší částku. Přihazujete pod cenou - Příhoz nebyl přijat, protože byla nabídnuta částka stejná nebo nižší než aktuální cena. Stejně jako u aktivity sekce, je zde využita knihovna ImageLoader a JodaTime. 48

65 3.2. Aplikační logika Obrázek 3.8: Vlevo detail aukce, vpravo detail obchodu Obrázek 3.9: Stav ze kterého nelze nakupovat, uživatel není přihlášen 49

66 3. Realizace Klienta - mobilní aplikace Obrázek 3.10: Zleva: potvrzovací dialog nákupu v obchodě, dialog Kup teď, dialog přihoď Obrázek 3.11: View zobrazovaný v případě, že není připojení Není připojení Nejedná se o aktivitu, ale považuji to za důležitou součást práce. Jedná se o View, který je nastaven vždy při přechodu na novou aktivitu pokud není připojení. Je zde jednoduchý obrázek a text a spolu s tímto View je zobrazován i Toast Není připojení. Pokud uživatel připojení obnoví, musí se pomocí tlačítka Zpět vrátit o aktivitu zpět a znovu kliknout na požadovanou položku. Obrázek

Webové služby. Martin Sochor

Webové služby. Martin Sochor Webové služby Martin Sochor Webové služby způsob komunikace dvou aplikací přes Web binární zprávy (CORBA) blokovány proxy servery a firewally masivní využití XML protokol SOAP + jazyk pro popis služeb

Více

Sem vložte zadání Vaší práce.

Sem vložte zadání Vaší práce. Sem vložte zadání Vaší práce. České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Informační systém pro evidenci potápěčských ponorů

Více

RESTful API TAMZ 1. Cvičení 11

RESTful API TAMZ 1. Cvičení 11 RESTful API TAMZ 1 Cvičení 11 REST Architektura rozhraní navržená pro distribuované prostředí Pojem REST byl představen v roce 2000 v disertační práci Roye Fieldinga, zkratka z Representional State Transfer

Více

CTUGuide (XXX-KOS) D1

CTUGuide (XXX-KOS) D1 CTUGuide (XXX-KOS) D1 Verze: 1.0 Předmět: PDA Mentor: Zdeněk Míkovec Autor: Petr Tarant, Martin Štajner, Petr Husák Datum: 14. 02. 2013 Obsah CTUGUIDE verze 1.0 1. Úvod... 3 1.1. Úvod do problematiky...

Více

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Aplikovaná informatika

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Aplikovaná informatika VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Aplikovaná informatika Napojení e-shopu na obchodní portál aukro.cz bakalářská práce Autor: Josef Vrbata Vedoucí práce: Ing.

Více

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services

1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services 13. Webové služby. K čemu slouží? Popis a vyhledávání služeb. Co je a k čemu slouží orchestrace a choreografie služeb. Technologie pro implementaci služeb 1. Webové služby. K čemu slouží? Definice WS -

Více

POLOPROVOZ ZNALOSTNÍ DATABÁZE INTERPI DOKUMENTACE

POLOPROVOZ ZNALOSTNÍ DATABÁZE INTERPI DOKUMENTACE POLOPROVOZ ZNALOSTNÍ DATABÁZE INTERPI DOKUMENTACE INTERPI Interoperabilita v paměťových institucích Program aplikovaného výzkumu a vývoje národní kulturní identity (NAKI) (DF11P01OVV023) Zpracovali: Marie

Více

Mobilní aplikace Novell Filr Stručný úvod

Mobilní aplikace Novell Filr Stručný úvod Mobilní aplikace Novell Filr Stručný úvod Únor 2016 Podporovaná mobilní zařízení Aplikace Novell Filr je podporována v následujících mobilních zařízeních: Telefony a tablety se systémem ios 8 novějším

Více

MATURITNÍ PRÁCE dokumentace

MATURITNÍ PRÁCE dokumentace MATURITNÍ PRÁCE dokumentace Jídelníček SŠIEŘ pro Android Martin Bartoň školní rok: 2012/2013 obor: třída: Počítačové systémy PS4.A ABSTRAKT Práce je zaměřená na problematiku tvorby Android aplikací,

Více

Microsoft Office 2003 Souhrnný technický dokument white paper

Microsoft Office 2003 Souhrnný technický dokument white paper Microsoft Office 2003 Souhrnný technický dokument white paper Přehled inteligentních klientských aplikací založených na sadě Microsoft Office 2003 System Publikováno: Duben 2003 Shrnutí: Inteligentní klienti

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

KAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče.

KAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče. KAPITOLA 3 Architektura aplikací na frameworku Rails V této kapitole: modely, pohledy, řadiče. 58 Část I: Začínáme Jedna ze zajímavých vlastností frameworku Rails spočívá v tom, že klade docela závažná

Více

Extrémně silné zabezpečení mobilního přístupu do sítě

Extrémně silné zabezpečení mobilního přístupu do sítě www.eset.cz Extrémně silné zabezpečení mobilního přístupu do sítě ESET Secure Authentication (ESA) poskytuje silné ověření oprávnění přístupu do firemní sítě a jejímu obsahu. Jedná se o mobilní řešení,

Více

Vývoj Internetových Aplikací

Vývoj Internetových Aplikací 9 Vývoj Internetových Aplikací Webová API Ing. Jan Janoušek API - Application Programming Interface - Definuje způsob interakce mezi: - Softwarovými komponentami Interface - Software a hardware OpenGL

Více

Uživatelský manuál na obsluhu mobilní aplikace CMOB

Uživatelský manuál na obsluhu mobilní aplikace CMOB Uživatelský manuál na obsluhu mobilní aplikace CMOB 1 Obsah 1. Popis aplikace... 3 2. Instalace aplikace na zařízení... 3 3. První spuštění aplikace... 3 4. Úvodní obrazovka aplikace... 3 5. Sekce kamer...

Více

HTTP protokol. HTTP protokol - úvod. Zpracoval : Petr Novotný novotny0@students.zcu.cz

HTTP protokol. HTTP protokol - úvod. Zpracoval : Petr Novotný novotny0@students.zcu.cz HTTP protokol Zpracoval : Petr Novotný novotny0@students.zcu.cz HTTP protokol - úvod zkratka z Hyper-Text Transfer Protocol možnost přenášet jakákoliv data (soubor, obrázek, výsledek dotazu) obvykle provozován

Více

MapleCloud a jeho použ ití. Vladimír Žák

MapleCloud a jeho použ ití. Vladimír Žák MapleCloud a jeho použ ití Vladimír Žák Brno, 2015 Obsah 1 Úvod... 4 2 Novinky v MapleCloud pro Maple 2015... 5 3 MapleCloud a registrace... 6 4 Použití MapleCloud přímo z Maple 2015... 7 4.1 Popis jednotlivých

Více

Filr 2.0 Uživatelská příručka k aplikaci Filr Web. Únor 2016

Filr 2.0 Uživatelská příručka k aplikaci Filr Web. Únor 2016 Filr 2.0 Uživatelská příručka k aplikaci Filr Web Únor 2016 Právní vyrozumění Informace o právních upozorněních, ochranných známkách, prohlášeních o omezení odpovědnosti, zárukách, omezeních exportu a

Více

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL SYSTEM FOR CONFIGURATION OF COMMUNICATION TERMINALS AND VISUALIZATION OF STATE INFORMATION FROM RAIL VEHICLES

Více

SMART GATE webové a aplikační ovládací rozhraní zařízení ESIM120

SMART GATE webové a aplikační ovládací rozhraní zařízení ESIM120 ALARM PRODEJ.CZ OFICIÁLNÍ DISTRIBUTOR VÝROBKŮ ELDES PRO ČESKOU REPUBLIKU UVÁDÍ INSTRUKTÁŽNÍ PREZENTACI SMART GATE webové a aplikační ovládací rozhraní zařízení ESIM120 ALARM PRODEJ.CZ je součástí CENTR

Více

Úvod do Web Services

Úvod do Web Services Úvod do Web Services Základy webových služeb a jejich implementace na platformě OS/2 Jarda Kačer jarda@kacer.biz Český Warpstock 2008 Brno, 20.-21.9.2008 Co je to webová služba? Část business logiky přístupná

Více

Obsah. Úvod 11. Vytvoření emulátoru 20 Vytvoření emulátoru platformy Android 4.4 Wearable 22 Spouštění aplikací na reálném zařízení 23

Obsah. Úvod 11. Vytvoření emulátoru 20 Vytvoření emulátoru platformy Android 4.4 Wearable 22 Spouštění aplikací na reálném zařízení 23 Úvod 11 KAPITOLA 1 Nástroje pro vývoj 13 Co budete potřebovat 13 Instalace programovacího jazyka Java 13 Java 8 14 Vývojové prostředí Eclipse 15 Instalace a konfigurace Android SDK a doplňků ADT 15 Vytvoření

Více

Nastavení provozního prostředí webového prohlížeče pro aplikaci

Nastavení provozního prostředí webového prohlížeče pro aplikaci Nastavení provozního prostředí webového prohlížeče pro aplikaci IS o ISVS - Informační systém o informačních systémech veřejné správy verze 2.03.00 pro uživatele vypracovala společnost ASD Software, s.r.o.

Více

Děkujeme za zakoupení zařízení Mobile WiFi. Zařízení Mobile WiFi vám umožní vysokorychlostní bezdrátové síťové připojení.

Děkujeme za zakoupení zařízení Mobile WiFi. Zařízení Mobile WiFi vám umožní vysokorychlostní bezdrátové síťové připojení. Stručný návod Děkujeme za zakoupení zařízení Mobile WiFi. Zařízení Mobile WiFi vám umožní vysokorychlostní bezdrátové síťové připojení. Tento dokument slouží k tomu, abyste zařízení Mobile WiFi pochopili

Více

UŽIVATELSKÁ DOKUMENTACE PRO DODAVATELE. Stav ke dni 1. 8. 2013 v. 2.0

UŽIVATELSKÁ DOKUMENTACE PRO DODAVATELE. Stav ke dni 1. 8. 2013 v. 2.0 UŽIVATELSKÁ DOKUMENTACE PRO DODAVATELE Stav ke dni 1. 8. 2013 v. 2.0 Obsah: 1 Úvod... 3 1.1 Definice a zkratky... 4 1.2 Podmínky provozu... 4 1.3 Pokyny k užívání dokumentu... 4 1.4 Obecné informace o

Více

Metodická příručka pro učitele. InspIS SET modul školní testování

Metodická příručka pro učitele. InspIS SET modul školní testování Metodická příručka pro učitele InspIS SET modul školní testování Tato Metodická příručka pro učitele byla zpracována v rámci projektu Národní systém inspekčního hodnocení vzdělávací soustavy v České republice

Více

Point of View TAB-P731N- Android 4.0 Tablet PC. Čeština. Obsah

Point of View TAB-P731N- Android 4.0 Tablet PC. Čeština. Obsah Point of View TAB-P731N- Android 4.0 Tablet PC Čeština Obsah Obecné pokyny pro užívání zařízení... 2 Doplňující informace... 2 Obsah balení... 2 1.0 Základní informace... 3 1.1 Tlačítka a konektory...

Více

OBCHODNÍ PODMÍNKY PRO ELEKTRONICKÝ STYK S BANKOU SBERBANK ONLINE BANKING

OBCHODNÍ PODMÍNKY PRO ELEKTRONICKÝ STYK S BANKOU SBERBANK ONLINE BANKING Účinné od 1. 10. 2014 Část I. Úvodní ustanovení (1) Tyto Obchodní podmínky pro elektronický styk s bankou Sberbank Online Banking (dále jen Podmínky ) stanoví závazná pravidla pro elektronický styk s bankou

Více

Obrazovka. Návod k aplikaci

Obrazovka. Návod k aplikaci Návod k aplikaci Změněno: St, 18 Květen, 2016 at 4:24 PM Uživatelská příručka pro aplikaci není k dispozici v tištěné podobě, protože je neustále aktualizována tak, aby odpovídala dalším funkcím průběžných

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Tvorba informačních systémů 1/20 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních

Více

Manuál k aukčnímu portálu Diakonie ČCE

Manuál k aukčnímu portálu Diakonie ČCE Manuál k aukčnímu portálu Diakonie ČCE I. OBECNÉ INFORMACE Tento manuál ve stručnosti popisuje aukční portál Diakonie ČCE. Je určen především dosavadním správcům webů diakonické rodiny, kteří mají alespoň

Více

Moderní trendy využívání mobilních (dotykových) zařízení nejen ve výuce. RNDr. Jan Krejčí, PhD.

Moderní trendy využívání mobilních (dotykových) zařízení nejen ve výuce. RNDr. Jan Krejčí, PhD. Moderní trendy využívání mobilních (dotykových) zařízení nejen ve výuce RNDr. Jan Krejčí, PhD. Nezapomeneme Vyplnit dotazník na: http://dotyk.ujep.cz/dotaznik.php Kritéria pro výběr zařízení Mobilita zařízení

Více

Uživatelská příručka. BlackBerry 8700 Smartphone

Uživatelská příručka. BlackBerry 8700 Smartphone Uživatelská příručka BlackBerry 8700 Smartphone SWD-280428-0212105034-010 Obsah Základní informace o řadě BlackBerry...9 Přepínání aplikací...9 Přiřazení aplikace tlačítku Komfort...9 Nastavení informací

Více

Základní ovládání aplikace

Základní ovládání aplikace Základní ovládání aplikace Základem ovládání aplikace je jednoduchý toolbar (panel nástrojů) ve spodní části obrazovky, který umožňuje přepínání mezi jednotlivými obrazovkami aplikace. Jsou zde zobrazeny

Více

Pokročilé Webové služby a Caché security. Š. Havlíček

Pokročilé Webové služby a Caché security. Š. Havlíček Pokročilé Webové služby a Caché security Š. Havlíček Webové služby co se tím míní? Webová služba metoda komunikace mezi dvěma elektronickými zařízeními přes internet Typicky jsou pomocí rozhraní přístupné

Více

MAWIS. Uživatelská dokumentace

MAWIS. Uživatelská dokumentace MAWIS Uživatelská dokumentace Verze 27-11-2008 OBSAH OBSAH... 2 1) O MAPOVÉM SERVERU... 3 2) POTŘEBNÁ NASTAVENÍ... 3 Hardwarové požadavky... 3 Softwarové požadavky... 3 Nastavení Internet Exploreru:...

Více

QuarkXPress 9.5 - soubor ReadMe

QuarkXPress 9.5 - soubor ReadMe QuarkXPress 9.5 - soubor ReadMe OBSAH Obsah QuarkXPress 9.5 - soubor ReadMe...4 Požadavky na systém...5 Požadavky na systém: Mac OS...5 Požadavky na systém: Windows...5 Instalování: Mac OS...7 Provedení

Více

Průvodce pro účast v elektronických dražbách (dále též jen Průvodce )

Průvodce pro účast v elektronických dražbách (dále též jen Průvodce ) Průvodce pro účast v elektronických dražbách (dále též jen Průvodce ) I. OBECNÁ USTANOVENÍ Tento Průvodce upravuje užívání dražebního elektronického systému dražebníka, jehož prostřednictvím probíhají

Více

TouchPad a klávesnice

TouchPad a klávesnice TouchPad a klávesnice Copyright 2006 Hewlett-Packard Development Company, L.P. Microsoft a Windows jsou registrované ochranné známky společnosti Microsoft Corporation v USA. Informace uvedené v této příručce

Více

Využití webových kapacit v cestovním ruchu

Využití webových kapacit v cestovním ruchu Využití webových kapacit v cestovním ruchu CÍL KAPITOLY Cíl 1. Představit základy projektů tvorby webových stránek Cíl 2. Představit řešení pro online ukládání a sdílení souborů Cíl 3. Představit základy

Více

Uživatelská příručka + základní informace o IS o ISVS

Uživatelská příručka + základní informace o IS o ISVS Uživatelská příručka + základní informace o IS o ISVS Vážení uživatelé, vítejte v Informačním systému o informačních systémech veřejné správy (dále jen IS o ISVS ) Obsah uživatelské příručky: 1. Obecně

Více

M I S Y S - W E B. Intranet řešení systému MISYS. Verze 9.00. Příručka uživatele

M I S Y S - W E B. Intranet řešení systému MISYS. Verze 9.00. Příručka uživatele M I S Y S - W E B Intranet řešení systému MISYS Verze 9.00 Příručka uživatele GEPRO s.r.o. Září 2008 Copyright GEPRO s.r.o. 2008 Ochranné známky GEPRO spol. s r.o. KOKEŠ, MISYS Ochranné známky Microsoft

Více

WINDOWS 8 APLIKACE PRO PREZENTACI DAT Z WEBOVÉHO API

WINDOWS 8 APLIKACE PRO PREZENTACI DAT Z WEBOVÉHO API VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INFORMAČNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INFORMATION SYSTEMS WINDOWS 8 APLIKACE

Více

[TMB-NAP] Nabídka a poptávka produktů založená na mapových podkladech D3. Jan Minařík, minarja4 Vojtěch Koukal, koukavoj Mikhail Sukhotin, sukhomik

[TMB-NAP] Nabídka a poptávka produktů založená na mapových podkladech D3. Jan Minařík, minarja4 Vojtěch Koukal, koukavoj Mikhail Sukhotin, sukhomik [TMB-NAP] Nabídka a poptávka produktů založená na mapových podkladech D3 Jan Minařík, minarja4 Vojtěch Koukal, koukavoj Mikhail Sukhotin, sukhomik Vytvoření prototypu Pokryté scénáře Vytvořený prototyp

Více

Technologie počítačových sítí 5. cvičení

Technologie počítačových sítí 5. cvičení Technologie počítačových sítí 5. cvičení Obsah jedenáctého cvičení Active Directory Active Directory Rekonfigurace síťového rozhraní pro použití v nadřazené doméně - Vyvolání panelu Síťové připojení -

Více

The Locator/ID Separation Protocol (LISP)

The Locator/ID Separation Protocol (LISP) The Locator/ID Separation Protocol (LISP) Robin Kořístka (KOR0116) Abstrakt: Seminární práce je věnována popisu a přiblížení funkčnosti nové síťové architektury LISP (Locator/ID Separation Protocol). Součástí

Více

Komponentní technologie

Komponentní technologie Komponentní technologie doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Motivace Aplikace v IT Vývoj přístupů

Více

Outlook 2010. David Procházka. Vydala Grada Publishing, a.s. U Průhonu 22, Praha 7 jako svou 4154. publikaci

Outlook 2010. David Procházka. Vydala Grada Publishing, a.s. U Průhonu 22, Praha 7 jako svou 4154. publikaci Outlook 2010 David Procházka Vydala Grada Publishing, a.s. U Průhonu 22, Praha 7 jako svou 4154. publikaci Odpovědný redaktor Zuzana Malečková Sazba Tomáš Brejcha Počet stran 168 První vydání, Praha 2010

Více

Veřejné. Aplikace EP2W. Uživatelská příručka pro externího uživatele

Veřejné. Aplikace EP2W. Uživatelská příručka pro externího uživatele Aplikace EP2W Uživatelská příručka pro externího uživatele Verze: 1.04 Datum: 14.8.2012 Upozornění V dokumentu bylo použito názvů firem a produktů, které mohou být chráněny patentovými a autorskými právy

Více

Semestrální práce do předmětu Principy tvorby mobilních aplikací

Semestrální práce do předmětu Principy tvorby mobilních aplikací Ondřej Šatera, saterond@fel.cvut.cz, zimní semestr 2011/2012 Semestrální práce do předmětu Principy tvorby mobilních aplikací D1: Project description Aplikace INFORMAČNÍ SERVIS Jednalo by se o aplikaci,

Více

Statistica, kdo je kdo?

Statistica, kdo je kdo? Statistica, kdo je kdo? Newsletter Statistica ACADEMY Téma: Typy instalací Typ článku: Teorie Někteří z vás používají univerzitní licence, někteří síťové, podnikové atd. V tomto článku Vám představíme,

Více

INTEGRACE IS DO STÁVAJÍCÍ HW A SW ARCHITEKTURY

INTEGRACE IS DO STÁVAJÍCÍ HW A SW ARCHITEKTURY INTEGRACE IS DO STÁVAJÍCÍ HW A SW ARCHITEKTURY Dušan Kajzar Slezská univerzita v Opavě, Filozoficko-přírodovědecká fakulta, Bezručovo nám. 13, 746 00 Opava, e-mail: d.kajzar@c-box.cz Česká pošta, s.p.,

Více

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 12.2.2015 Webové aplikace Úvod strana 2 Vyučující Ing. Jiří Lýsek, Ph.D. Ing. Oldřich Faldík https://akela.mendelu.cz/~lysek/ https://akela.mendelu.cz/~xfaldik/wa/

Více

QuarkXPress 9.2 - soubor ReadMe

QuarkXPress 9.2 - soubor ReadMe QuarkXPress 9.2 - soubor ReadMe OBSAH Obsah QuarkXPress 9.2 - soubor ReadMe...4 Požadavky na systém...5 Požadavky na systém: Mac OS...5 Požadavky na systém: Windows...5 Instalování: Mac OS...6 Provedení

Více

Manuál administrátora FMS...2

Manuál administrátora FMS...2 Manuál administrátora Manuál administrátora FMS...2 Úvod... 2 Schéma aplikace Form Management System... 2 Úvod do správy FMS... 3 Správa uživatelů... 3 Práva uživatelů a skupin... 3 Zástupci... 4 Avíza

Více

Uživatelská příručka ClinkMe

Uživatelská příručka ClinkMe Uživatelská příručka ClinkMe OBSAH DIALER 1 ZÁKLADNÍ OVLÁDÁNÍ APLIKACE... 1 KONTAKTY... 2 POČET TELEFONNÍCH ČÍSEL KONTAKTU... 4 ZÁLOŽKY PRO FILTROVÁNÍ KONTAKTŮ... 5 PANEL PRO ZADÁVÁNÍ VYHLEDÁVACÍCH KRITÉRIÍ...

Více

Tvorba informačních systémů

Tvorba informačních systémů 9. Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba

Více

OBSAH AHOJ, JSEM KUKI. Bav se se mnou První pomoc 02/03

OBSAH AHOJ, JSEM KUKI. Bav se se mnou První pomoc 02/03 jak mě používat OBSAH AHOJ, JSEM KUKI. 6 10 22 Bav se se mnou První pomoc 02/03 Děkuji ti, že ses rozhodl pro naši společnou cestu. Od teď ti budu dělat jen radost. Přečti si o mně vše důležité, ať víš,

Více

Metodika. Oznámení o vykonávání působností v agendě ve smyslu zákona č. 111/2009. Sb., o základních registrech. Verze 1.6

Metodika. Oznámení o vykonávání působností v agendě ve smyslu zákona č. 111/2009. Sb., o základních registrech. Verze 1.6 Metodika Oznámení o vykonávání působností v agendě ve smyslu zákona č. 111/2009 Sb., o základních registrech Verze 1.6 AIS RPP Působnostní určeno pro oznamovatele Oznámení o vykonávání působností č. 111/2009

Více

Požadavky pro výběrová řízení TerraBus ESB/G2x

Požadavky pro výběrová řízení TerraBus ESB/G2x Dokument: Převod dat TerraBus ESB/G2x Požadavky pro výběrová řízení TerraBus ESB/G2x Obsah 1. Účel dokumentu... 2 2. Použité termíny a zkratky... 2 3. Požadavky... 3 Účel dokumentu Účelem tohoto dokumentu

Více

Zrakové postižení a mobilní telefony (smartphony)

Zrakové postižení a mobilní telefony (smartphony) České vysoké učení technické v Praze Fakulta elektrotechnická Katedra Kybernetiky Biomedicínské inženýrství Zrakové postižení a mobilní telefony (smartphony) Semestrální úloha - A6M33AST Jarolímek Tomáš

Více

Elektronická Kniha jízd. www.knihajizd.info

Elektronická Kniha jízd. www.knihajizd.info Elektronická Kniha jízd www.knihajizd.info Jak to funguje O produktu Aplikace elektronické Knihy jízd Patriot Vám s využitím systému GPS (Global Positioning System) umožní jednoduše a spolehlivě sledovat

Více

Instalační manuál. 1. Instalace hardwaru

Instalační manuál. 1. Instalace hardwaru Instalační manuál Tipy: Pokud je to nezbytné, resetujte kameru. Najděte na spodní nebo zadní straně tlačítko "RESET" a přidržte jej na 10 sekund, zatímco je zapnuté napájení. 1. Instalace hardwaru 1.1

Více

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro administrátora krizového řízení

Provozní dokumentace. Seznam orgánů veřejné moci. Příručka pro administrátora krizového řízení Provozní dokumentace Seznam orgánů veřejné moci Příručka pro administrátora krizového řízení Vytvořeno dne: 15. 6. 2011 Aktualizováno: 22. 10. 2014 Verze: 2.2 2014 MVČR Obsah Příručka pro administrátora

Více

Ostatní portálové aplikace

Ostatní portálové aplikace Akademický informační systém ŠKODA AUTO VYSOKÁ ŠKOLA o.p.s. Ostatní portálové aplikace Svazek 9 Verze: 1.20 Datum: 10. března 2016 Autor: Jitka Šedá, Martin Tyllich Obsah Seznam obrázků 5 1 Absolventi

Více

Mobilní aplikace Průvodce po MENDELU

Mobilní aplikace Průvodce po MENDELU Mendelova univerzita v Brně Provozně ekonomická fakulta Mobilní aplikace Průvodce po MENDELU Bakalářská práce Vedoucí práce: Ing. Dita Dlabolová Ondřej Charvát Kurdějov 2015 Poděkování Tímto bych chtěl

Více

Generování žádostí o kvalifikovaný certifikát a instalace certifikátu Uživatelská příručka pro prohlížeč Internet Explorer

Generování žádostí o kvalifikovaný certifikát a instalace certifikátu Uživatelská příručka pro prohlížeč Internet Explorer Generování žádostí o kvalifikovaný certifikát a instalace certifikátu Uživatelská příručka pro prohlížeč Internet Explorer 1 První certifikační autorita, a.s. 8.9.2011 Obsah 1. Úvod... 3 2. Požadavky na

Více

Komponentový návrh SW

Komponentový návrh SW Komponentový návrh SW Komponentový návrh SW Komponenty jsou kompletně specifikované pomocí interface Jejich funkčnost je nezávislá na programovacím jazyku a mohou být integrované do toho samého systému

Více

ČVUT FAKULTA ELEKTROTECHNICKÁ, TECHNICKÁ 2, 166 27 PRAHA, ČESKÁ REPUBLIKA. Semestrální projekt. Systém speech2text (pracovní název)

ČVUT FAKULTA ELEKTROTECHNICKÁ, TECHNICKÁ 2, 166 27 PRAHA, ČESKÁ REPUBLIKA. Semestrální projekt. Systém speech2text (pracovní název) ČVUT FAKULTA ELEKTROTECHNICKÁ, TECHNICKÁ 2, 166 27 PRAHA, ČESKÁ REPUBLIKA Semestrální projekt Systém speech2text (pracovní název) Jiří Fric, Tomáš Plecháč 16.2.2009 Obsah 1. Zadání a cíle... 3 2. Teorie...

Více

ESET Mobile Antivirus

ESET Mobile Antivirus ESET Mobile Antivirus Uživatelská příručka chráníme vaše digitální světy ESET Mobile Antivirus Copyright ESET, spol. s r. o. ESET software spol. s r. o. Meteor Centre Office Park Sokolovská 100/94 180

Více

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o.

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o. X33EJA Web Services Martin Ptáček, KOMIX s.r.o. ptacek@komix.cz Copyright 2007 KOMIX Copyright s.r.o. 2007 KOMIX s.r.o. 1. Obsah Historie Co jsou Web Services? Co je to SOA? JAX-WS (Java API for XML Web

Více

Studentská tvůrčí a odborná činnost STOČ 2015

Studentská tvůrčí a odborná činnost STOČ 2015 Studentská tvůrčí a odborná činnost STOČ 2015 PROGRAMOVATELNÝ PRVEK SYSTÉMU INTELIGENTNÍ DOMÁCNOSTI Lukáš SMOLKA Vysoká škola báňská Technická univerzita Ostrava 17. listopadu 15/2172 708 33 Ostrava-Poruba

Více

ÚVOD 3 SEZNÁMENÍ SE SYSTÉMEM 4

ÚVOD 3 SEZNÁMENÍ SE SYSTÉMEM 4 ÚVOD 3 SEZNÁMENÍ SE SYSTÉMEM 4 JEDNODUCHÉ PŘIHLÁŠENÍ 4 ADMINISTRAČNÍ PROSTŘEDÍ 5 PŘEPÍNÁNÍ JAZYKOVÉ VERZE 5 POLOŽKY HORNÍHO MENU 5 DOPLŇKOVÉ POLOŽKY MENU: 6 STROM SE STRÁNKAMI, RUBRIKAMI A ČLÁNKY 7 TITULNÍ

Více

Mobilní malware na platformě Android Přednáška 2. Ing. Milan Oulehla

Mobilní malware na platformě Android Přednáška 2. Ing. Milan Oulehla Mobilní malware na platformě Android Přednáška 2 Ing. Milan Oulehla Úvod Informace o technikách, které používají tvůrci mobilního malware: Bezpečnostní chyby se mění v čase Vytvoření vlastních zdrojových

Více

ZÁVĚREČNÁ STUDIJNÍ PRÁCE dokumentace

ZÁVĚREČNÁ STUDIJNÍ PRÁCE dokumentace ZÁVĚREČNÁ STUDIJNÍ PRÁCE dokumentace Dokumentační systém pro Android Marek Kovalčík Obor: Třída: Školní rok: 18-20-M/01 INFORMAČNÍ TECHNOLOGIE se zaměřením na počítačové sítě a programování IT4 2015/2016

Více

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk Anotace: Příspěvek se zabývá rozvojem informačních a komunikačních technologií se zaměřením na trendy technického a programového

Více

INTERNET SERVIS MANUÁL

INTERNET SERVIS MANUÁL INTERNET SERVIS MANUÁL VÍTÁME VÁS! Právě jste otevřeli manuál Raiffeisen stavební spořitelny a.s. (dále jen RSTS ) pro práci s první aplikací internetového servisu s aktivními operacemi pro stavební spoření

Více

Servisně orientovaná architektura a její aplikace v systémech sledování a řízení výroby

Servisně orientovaná architektura a její aplikace v systémech sledování a řízení výroby Servisně orientovaná architektura a její aplikace v systémech sledování a řízení výroby Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů VII. ročník

Více

Systém integrované péče. Návod online aplikace SIP ČPZP

Systém integrované péče. Návod online aplikace SIP ČPZP Systém integrované péče Návod online aplikace SIP ČPZP aktualizace: 31. leden 2014 OBSAH 1. Úvod... 3 2. Registrace do projektu SIP... 4 3. Práce s online aplikací SIP ČPZP... 6 3.1 Přihlášení do aplikace...6

Více

VAR-NET INTEGRAL Manuál správce VNI 5.1 VAR-NET INTEGRAL. verze 0.2. Manuál správce VNI 5.1

VAR-NET INTEGRAL Manuál správce VNI 5.1 VAR-NET INTEGRAL. verze 0.2. Manuál správce VNI 5.1 Manuál správce VNI 5.1 verze 0.2 Manuál správce VNI 5.1 VARIANT plus, spol. s.r.o., U Obůrky 5, 674 01 TŘEBÍČ, tel.: 565 659 600 technická linka 565 659 655 (pracovní doba 7:30 15:00) www.variant.cz isb@variant.cz

Více

Route 66 podrobný manuál

Route 66 podrobný manuál Route 66 podrobný manuál Co je ROUTE 66? ROUTE 66 je špičkový program pro vyhledávání a plánování cest, který najde své uplatnění jak mezi profesionálními, tak domácími uživateli. ROUTE 66 je první plánovač

Více

V této kapitole se naučíte základnímu ovládání programu ZoomText, totiž:

V této kapitole se naučíte základnímu ovládání programu ZoomText, totiž: KAPITOLA 2 Začínáme V této kapitole se naučíte základnímu ovládání programu ZoomText, totiž: Jak ZoomText instalujete a aktivujete. Jak ZoomText spustíte a ukončíte. Jak ZoomText zapnete a vypnete. Jak

Více

Určeno k použití s aplikacemi podporujícími skener / čtečku kódů QR.

Určeno k použití s aplikacemi podporujícími skener / čtečku kódů QR. Aplikace Xerox QR Code Příručka pro rychlé spuštění 702P03999 Určeno k použití s aplikacemi podporujícími skener / čtečku kódů QR. Aplikaci QR (Quick Response) Code můžete použít s těmito aplikacemi: aplikace

Více

Vývoj mobilních aplikací trochu jinak

Vývoj mobilních aplikací trochu jinak Protokol o konání semináře Vývoj mobilních aplikací trochu jinak Registrační číslo projektu CZ.1.07/2.4.00/31.0162 * Název projektu Místo konání NA2, areál VŠB TU Ostrava Zvyšování praktických kompetencí

Více

BlackBerry Torch 9810 Smartphone

BlackBerry Torch 9810 Smartphone BlackBerry Torch 9810 Smartphone Uživatelská příručka Verze: 7.0 Nejnovější uživatelské příručky naleznete na adrese www.blackberry.com/docs/smartphones. MAT-40531-010 PRINTSPEC-021 SWD-1735726-0731051610-010

Více

SEZNÁMENÍ S PROGRAMEM

SEZNÁMENÍ S PROGRAMEM SEZNÁMENÍ S PROGRAMEM Základní informace pro každého Následující popis je určen pro stručné a rychlé seznámení s programem a jeho ovládáním. Detailnější vysvětlení funkcí programu naleznete v českém i

Více

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné Analyzujte, navrhněte a implementujte aplikaci pro sledování spánku dětí Chůvička pro telefony na platformě Android. Od existujících aplikací se bude aplikace odlišovat tímto: funkční na dual-sim telefonech

Více

Vysoká škola ekonomická v Praze

Vysoká škola ekonomická v Praze Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky obor informatika 2007 Srovnání portálů zdravotních pojišťoven z pohledu malého a středního podniku jako zaměstnavatele (bakalářská práce)

Více

UŽIVATELSKÁ PŘÍRUČKA

UŽIVATELSKÁ PŘÍRUČKA UŽIVATELSKÁ PŘÍRUČKA OBSAH BALENÍ Poznámka: Některé modely nemají samostatnou anténu POSTUP INSTALACE Poznámka: Před prvním použitím IP kamery postupujte podle výše uvedeného schématu. Připojte kameru

Více

Rezervační systém TROJHŘIŠTĚ hriste.pist.cz

Rezervační systém TROJHŘIŠTĚ hriste.pist.cz Rezervační systém TROJHŘIŠTĚ hriste.pist.cz Základní uživatelský manuál OBSAH 1. Úvod 2. Základní nastavení 3. Administrátorské nastavení 4. Rezervace 4.1 Registrace do rezervačního systému 4.2 Přihlášení

Více

RESTful web service v Javě

RESTful web service v Javě Mendelova univerzita v Brně Provozně ekonomická fakulta RESTful web service v Javě Literární rešerše práce Vedoucí práce: Ing. Jan Turčínek, Ph.D. Pavel Savrov Brno 2016 OBSAH 2 Obsah 1 Protokoly implementaci

Více

českém Úvod Obsah balení Technické údaje pro BT100 Doplňkové technické údaje pro BT100 S W E E X. C O M BT110 Sweex Bluetooth Class I Adapter USB

českém Úvod Obsah balení Technické údaje pro BT100 Doplňkové technické údaje pro BT100 S W E E X. C O M BT110 Sweex Bluetooth Class I Adapter USB BT100 Sweex Bluetooth Class II Adapter USB BT110 Sweex Bluetooth Class I Adapter USB Úvod Především bychom vám chtěli poděkovat za zakoupení zařízení Sweex Bluetooth Adapter. Pomocí tohoto adaptéru můžete

Více

Databázový systém Matylda

Databázový systém Matylda Databázový systém Matylda Návrh softwarového projektu Vývojový tým Předpokládaný počet řešitelů: 5 Vedoucí: Mgr. Martin Nečaský Ph.D. Motivace V současné době se mnoho nákupů odehrává v internetových obchodech.

Více

Jak to funguje. O produktu. Jak to funguje

Jak to funguje. O produktu. Jak to funguje www.auto-gps.eu Jak to funguje O produktu Aplikace elektronické knihy jízd AutoGPS Vám s využitím systému GPS (Global Positioning System) umožní jednoduše a spolehlivě sledovat pohyb všech Vašich vozidel,

Více

XAMARIN 10 PRAKTICKÝCH ZKUŠENOSTÍ. Roman Fischer fischer@skeleton.cz

XAMARIN 10 PRAKTICKÝCH ZKUŠENOSTÍ. Roman Fischer fischer@skeleton.cz XAMARIN 10 PRAKTICKÝCH ZKUŠENOSTÍ Roman Fischer fischer@skeleton.cz AGENDA KDO JSME PROČ JSME ZVOLILI XAMARIN 10 PRAKTICKÝCH ZKUŠENOSTÍ DISKUZE Softwarová řešení a mobilní aplikace na míru 2 SOFTWAROVÁ

Více

5.1 Vyhledávací portál uživatelské rozhraní

5.1 Vyhledávací portál uživatelské rozhraní Uživatelská příručka Uživatelské rozhraní aplikace DoserFindIT se dělí na dvě části vyhledávací portál a administrační rozhraní. Vyhledávácí portál umožňuje základní a rozšířené vyhledávání článků a vyhledávání

Více

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,

Více

O aplikaci Parallels Desktop 7 for Mac

O aplikaci Parallels Desktop 7 for Mac O aplikaci Parallels Desktop 7 for Mac Parallels Desktop 7 for Mac představuje zásadní upgrade softwaru Parallels pro používání Windows na Macu. O této aktualizaci Parallels Desktop 7 for Mac (sestavení

Více

CZ Manuál. Zařízení s OS Android. Import a distribuce: RECALL s.r.o.

CZ Manuál. Zařízení s OS Android. Import a distribuce: RECALL s.r.o. CZ Manuál Zařízení s OS Android Import a distribuce: RECALL s.r.o. Obsah 1. Představení... 4 2. Instalace a nastavení... 5 2.1. Stažení obslužné aplikace... 5 2.2. Připojení telefonu/tabletu k Wi-Fi HDD...

Více

Seznamte se se zařízením Mobile WiFi

Seznamte se se zařízením Mobile WiFi Začínáme Děkujeme za zakoupení zařízení Mobile WiFi. Zařízení Mobile WiFi vám umožní vysokorychlostní bezdrátové síťové připojení. Tento dokument slouží k tomu, abyste zařízení Mobile WiFi pochopili a

Více