Univerzita Karlova v Praze. Matematicko-fyzikální fakulta. Diplomová práce. Ondřej Kunc. Multiplatformní mobilní aplikace databázového systému Matylda

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

Download "Univerzita Karlova v Praze. Matematicko-fyzikální fakulta. Diplomová práce. Ondřej Kunc. Multiplatformní mobilní aplikace databázového systému Matylda"

Transkript

1 Univerzita Karlova v Praze Matematicko-fyzikální fakulta Diplomová práce Ondřej Kunc Multiplatformní mobilní aplikace databázového systému Matylda Katedra distribuovaných a spolehlivých systémů Vedoucí diplomové práce: RNDr. Jan Kofroň, Ph.D. Studijní program: Informatika Studijní obor: Softwarové systémy Praha rok 2015

2 Na tomto místě bych rád poděkoval mému vedoucímu práce RNDr. Janu Kofroňovi, Ph.D., který mi byl vždy k dispozici a poskytnul velmi cenné rady a zkušenosti. Dále bych chtěl poděkovat své rodině a přítelkyni za podporu a všem členům týmu Matylda za skvělou spolupráci na projektu.

3 Prohlašuji, že jsem tuto diplomovou práci vypracoval samostatně a výhradně s použitím citovaných pramenů, literatury a dalších odborných zdrojů. Beru na vědomí, že se na moji práci vztahují práva a povinnost vyplývající ze zákona č. 121/2000 Sb., autorského zákona v platném znění, zejména skutečnost, že Univerzita Karlova 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.. dne.. podpis

4 Název práce: Multiplatformní mobilní aplikace databázového systému Matylda Autor: Ondřej Kunc Katedra / Ústav: Katedra distribuovaných a spolehlivých systémů Vedoucí diplomové práce: RNDr. Jan Kofroň, Ph.D. Abstrakt: Systém Matylda vznikl za účelem poskytnutí detailní databáze a webového rozhraní pro vyhledávání, filtrování a porovnávání zboží zoblasti potravin a drogerie. Cílem práce je k tomuto systému vytvořit uživatelsky přívětivou mobilní aplikaci, která bude dostupná na všech hlavních mobilních platformách dneška. Výsledná mobilní aplikace zpřístupňuje hlavní funkcionality již existující webové aplikace a využívá předností mobilních zařízení, jako je použití map nebo zjišťování polohy uživatele. Mezi hlavní funkcionality patří vyhledání detailní informace o produktech, procházení slevových letáků, porovnávání slev, vytváření nákupních seznamů, přihlašování a další. Aplikace tedy může být využita jako chytrý pomocník při nákupu potravin a drogerie, který ušetří uživatelům čas i peníze. Klíčová slova: vývoj mobilní aplikace, Android, ios, Windows Phone, webové služby Title: Multi-platform mobile application of database system Matylda Author: Ondřej Kunc Department / Institute: Department of Distributed and Dependable Systems Supervisor of the master thesis: RNDr. Jan Kofroň, Ph.D. Abstract: System Matylda was created in order to provide a database and web interface which allows sorting, filtering and comparing of products from food and drugstore industry. The goal of this thesis is to create a user friendly mobile application for this system. The application will be available for all today s major mobile platforms. The final application uses main features of the existing web application and also takes advantage of capabilities of modern mobile devices such as maps and user location. Some of the main features are searching for detailed product information, browsing discount leaflets, comparing discounts, creating shopping lists, authentication and more. The application can be used as a smart assistant which helps with shopping for food and drugstore products and can also save both time and money.

5 Keywords: mobile application development, Android, ios, Windows Phone, web services

6 Obsah 1 Úvod O projektu Matylda Požadované cíle Struktura diplomové práce Analýza Popis existujícího systému Specifikace Popis jednotlivých platforem Android ios Windows Srovnání technologií pro vývoj mobilní aplikace Nativní vývoj PhoneGap Appcelerator Titanium Xamarin Celkové srovnání Xamarin technologie Návrhový vzor MVVM a MvvmCross Framework Podpora různých verzí cílových platforem Volba lokálního úložiště Možnosti zobrazení map Návrh implementace serverové části Začlenění do projektu Matylda Volba technologie Implementace Základní architektura Vrstvy webového klienta Databázová vrstva Vrstva služeb...37

7 3.1.4 ViewModely Android projekt ios projekt Windows projekt Platformě specifické UI komponenty Navigace aplikací Procházení letáků Geolokace Implementace map Nákupní seznamy a jejich synchronizace Chybové stavy Přihlašování Serverová část Klientská část Testování Uživatelská dokumentace Instalace Průchod aplikací Rozbor případů užití Podobné aplikace Závěr Zdroje Seznam obrázků Seznam zkratek Přílohy...87

8 1 Úvod 1.1 O projektu Matylda Projekt Matylda vznikl v rámci předmětu Softwarový projekt na MFF UK. Hlavním cílem projektu bylo vytvořit univerzální databázový systém pro ukládání produktů z oblasti potravin a drogerie prodávaných na území ČR. K tomuto účelu byla vyvinuta webová aplikace, která uživateli poskytuje široké možnosti filtrování, třídění a preferencí, se zachováním maximální jednoduchosti. Projekt byl v prosinci 2014 úspěšně obhájen a všichni autoři se rozhodli na projektu dále pokračovat a uvést ho do ostrého provozu. Další práce přinesla požadavky na nové funkcionality a vylepšení. Aby bylo dosaženo co největšího počtu uživatelů, byl jeden z těchto požadavků zpřístupnit funkce Matyldy na tzv. chytrých mobilních telefonech, které používá stále více lidí. 1.2 Požadované cíle Hlavním cílem této práce je vyvinout mobilní aplikaci, která zpřístupní funkce webové aplikace a bude maximálně uživatelsky přívětivá. Aplikace bude využívat předností chytrých telefonů, jako jsou mapy, zjišťování polohy uživatele a dotykového ovládání. Bude analyzován trh s chytrými telefony, jejich operačními systémy a podíly jednotlivých platforem na trhu. Výstupem této analýzy bude seznam platforem, pro které se vyplatí vyvinout mobilní aplikaci pro projekt Matylda. Proběhne analýza technologií pro vývoj mobilních aplikací. Dá se očekávat, že cílových platforem bude více, proto je třeba zvážit i různá multiplatformní řešení, kdy lze sdílet kód mezi jednotlivými platformami a tím ušetřit čas při vývoji. Bude navržen a implementován způsob jakým bude komunikovat mobilní aplikace se systémem Matylda včetně popisu napojení do existující architektury systému. 1

9 1.3 Struktura diplomové práce Diplomová práce začíná popisem již vyvinutého systému a specifikací samotné aplikace. Poté následuje analýza platforem a srovnání technologií pro jejich vývoj. Součástí analýzy je také popis vybrané technologie a analýza řešení samotné aplikace. V kapitole 3, která se zabývá implementací, bude nejprve popsána základní architektura aplikace a poté bude následovat popis řešení jednotlivých problémů jako je např. navigace aplikací, implementace map nebo realizace přihlašování. Součásti kapitoly je i popis způsobu testování aplikace. Kapitola 4 obsahuje uživatelskou dokumentaci, kde je popsán průchod aplikací, realizace různých případů užití a popis instalace. Další kapitola srovná podobné aplikace na trhu a v závěru budou popsána možná rozšíření aplikace a zhodnocení celého řešení. 2

10 2 Analýza 2.1 Popis existujícího systému Nejprve stručně popíšeme softwarové dílo, které bylo vyvinuto v rámci softwarového projektu, na který tato práce navazuje. Detailní popis tohoto díla byl přiložen ve formě dokumentace při obhajobě projektu a zde bude následovat jen krátký popis pro uvedení čtenáře do problematiky. Systém Matylda je webový projekt založený na technologii ASP.NET MVC, který používá relační databázi MSSQL a NoSQL databázi Apache Solr pro ukládání dat. Hlavním účelem projektu je poskytnout uživatelům detailní databázi potravinářských a drogistických výrobků prodávaných v ČR. Důraz je kladen na ceny produktů a produkty ve slevě, které mohou zajímat velký počet lidí. Pro náročnější uživatele systém navíc umožňuje široké možnosti filtrování produktů. Je možné např. hledat pečivo prodávané v Bille a Albertu v Praze, které neobsahuje lepek a výsledky seřadit podle ceny. Mezi další funkcionality patří procházení slevových letáků, přihlašování, vytváření nákupních košíků, procházení obchodních řetězců, jejich prodejen a další. Web je rozdělen na veřejnou část obsahující výše popsanou funkcionalitu a administrativní část. V této části je možno spravovat téměř veškerá data pomocí webového rozhraní, přičemž největší důraz je kladen na manuální zadávání produktů z letáků. Z každého letáku se získávají údaje o produktech, jejich cenách, hmotnosti a další. Zpracování letáků je časově náročná operace, proto byly implementovány funkcionality, které tento proces urychlí. Jedná se např. o analýzu stránek metodou digitálního zpracování obrazu, které na základě heuristik zkusí rozpoznat opakující se prvky na stránce, jako je název produktu, stará cena a cena ve slevě. Tyto údaje jsou poté předvyplněné a zadávající je pouze kontroluje a upravuje. Databáze produktů v současné době obsahuje přes unikátních položek a je plněna ručním zpracováním slevových letáků a také importem produktů ze serveru se kterým máme smlouvu. Zároveň probíhají 3

11 jednání se samotnými řetězci o poskytování dat ve strojově čitelné formě. Projekt běží v testovacím režimu na adrese Specifikace Hlavním požadavkem na mobilní aplikaci je zpřístupnit funkce webového portálu s využitím výhod mobilních zařízení. Protože se na vývoji webové části pracuje paralelně s mobilní, mohou vznikat požadavky na nové funkce či změnu stávající funkcionality i v průběhu vývoje, avšak všechny důležité funkcionality jsou definovány již před začátkem implementace. Nyní bude následovat jejich výčet: Prohlížení nejzajímavějších nabídek Uživatel si bude moci zobrazit seznam populárních produktů, které jsou aktuálně ve slevě, seřazené podle velikosti slevy. Tyto produkty by měly být zobrazeny na úvodní stránce. Procházení aktuálních letáků Uživatel bude mít možnost listovat aktuálními slevovými letáky řetězců. Zobrazení informací o produktu U každého produktu bude zobrazena informace o aktuální, průměrné a minimální ceně, složení, ingredience, seznam prodejen kde lze produkt koupit řazeno od nejbližší a poloha těchto prodejen na mapě. Procházení produktů podle kategorií Produkty jsou zařazeny do stromu kategorií a aplikace umožní průchod tímto stromem. Procházení obchodníků Aplikace umožní průchod přes jednotlivé prodejce. U každého prodejce se eviduje seznam jeho produktů, aktuálních letáků, nejbližších prodejen a jejich podčástí (např. Tesco Express je podčástí Tesco). U jednotlivých prodejen bude zobrazena adresa, poloha na mapě a možnost spuštění navigace k dané prodejně. Vyhledávání Uživatel bude moci vyhledávat produkty, kategorie a obchodníky. Volba polohy Aplikace bude používat aktuální polohu telefonu a navíc umožní nastavit aktuální polohu na libovolné město v ČR. 4

12 Přihlašování Aby mohl uživatel používat nákupní seznamy, musí se nejprve přihlásit. Bude umožněno stejné přihlašování jako ve webové verzi, tedy jménem a heslem nebo přes služby externího poskytovatele, což bude Facebook a Google. Nákupní seznamy Přihlášený uživatel bude mít možnost zakládat nákupní seznamy, přidávat produkty a kategorie do seznamu, editovat seznamy a sdílet seznamy pomocí u s jinými uživateli. Seznamy budou synchronizovány s jeho Matylda účtem a musí částečně fungovat i bez připojení k internetu. Tutoriál Při prvním spuštění bude uživatel seznámen s hlavními funkcemi aplikace formou jednoduchého tutoriálu. 2.3 Popis jednotlivých platforem Před vývojem aplikace běžících na chytrých mobilních zařízeních je nejprve nutné zvážit, pro které zařízení je aplikace určená. Dnešní chytré telefony jsou vybaveny různými operačními systémy, které se od sebe můžou poměrně lišit, a pokud se rozhodneme podporovat jeden z těchto systémů, pak port na jiný systém může obnášet vývoj celé aplikace znovu od začátku. Pokud se podíváme na podíly různých operačních systémů na trhu, nejčastěji zde figurují tyto systémy: Android, ios, Windows Phone, Symbian a BlackBerry OS. Celosvětové podíly systémů ve druhém čtvrtletí 2015 srovnává například server IDC [1]. Tabulka 1: Celosvětové podíly - druhé čtvrtletí 2015 [1] Android ios Windows Phone BlackBerry OS Ostatní 82.8 % 13.9 % 2.6 % 0.3 % 0.4 % Server mobilenet.cz [2] přidává srovnání z českého trhu, kde srovnává data od tuzemských operátorů, konkrétně T-Mobile, O2 a Vodafone. Data jsou z ledna 2015 a vypadají následovně: 5

13 Tabulka 2: Podíly na českém trhu - leden 2015 [2] Android ios Symbian Windows Phone BlackBerry OS Ostatní 71.7 % % 9.32 % 6.16 % 1.2 % 0.99 % Kromě procentuálního podílu operačních systémů tu jsou i další faktory pro komerční úspěch aplikace. Např. na Androidu může být těžší zviditelnit aplikaci než např. na Windows Phone. Jiné průzkumy zase ukázaly, že ios uživatelé utratí za aplikace nejvíce peněz. Jenom z tržních podílů můžeme však bezpečně říci, že pokud chceme dosáhnout co největšího počtu uživatelů, měli bychom cílit naši aplikaci minimálně na platformu Android a ios. Protože cílíme na české uživatele, mohl by připadat v úvahu i systém Symbian, avšak telefony s tímto systémem se již nevyrábějí a jejich podíl tedy bude postupně klesat. Posledním systémem, který má nezanedbatelný podíl a vyplatí se pro něj vyvíjet, je systém Windows Phone. Nyní bude následovat stručný popis vybraných systémů Android Operační systém Android je založený na jádře Linuxu. Původně byl vyvíjen společností Android Inc., kterou v roce 2005 koupil Google. V roce 2007 bylo vytvořeno uskupení konsorcium Open Handset Alliance, která měla za cíl vytvořit otevřený standard pro mobilní zařízení a jejíž první produkt byl právě Android [3]. Od vydání první verze vychází aktualizace systému, které přidávají do systému nové funkce. Např. verze 3.0 přinesla optimalizaci pro obrazovky tabletů. Poslední vydaná verze 5.1 (Lollipop) vyšla v březnu Architektura systému se skládá z několika vrstev. Kromě jádra systému a knihoven jádra je zde vrstva Android Runtime. Ta obsahuje virtuální stroj Dalvik, který vytváří běhové prostředí pro Java aplikace. Aplikace se překládá ze zdrojových souborů napsaných v Jave do Java byte kódu. Ten je pomocí Dalvik kompilátoru překompilován do výsledného Dalvik byte kódu, který běží na virtuálním stroji Dalvik. Od verze Androidu 4.4 se ke kompilaci používá mechanismus ART Android Runtime. Jedná se o princip dopředné kompilace a funguje tak, že byte kód 6

14 Dalviku se při instalaci aplikace přeloží přímo do nativního kódu zařízení. To má za důsledek rychlejší běh aplikací a delší výdrž telefonu. Nejdůležitější vrstvou pro vývojáře aplikací je vrstva Application Framework. Ta zpřístupňuje velké množství služeb, které mohou být použité v samotné aplikaci. Jedná se např. o: View komponenty - Tlačítka, textové pole, atd. Activity manager Stará se o životní cyklus aplikace. Location manager Umožní aplikaci získávat informaci o poloze. Notification manager Umožňuje zobrazit upozornění. Obrázek 1: Architektura Androidu [4] Oficiální vývojové prostředí pro Android je Eclipse, avšak Google prosazuje i Android studio, které koupil v roce Hlavním aplikačním obchodem je Google Play, ale aplikace mohou být nainstalovány i z jiných zdrojů. Dnes běží Android na více než zařízeních od 1300 různých značek. 7

15 2.3.2 ios Systém ios je odlehčenou verzí systému Mac OS X, kterou používá Apple ve svých počítačích. Je to tedy systém UNIXového typu. Hlavní odlišnosti ios oproti Mac OS X je podpora dotykového ovládání. První verze systému vyšla v roce 2007 spolu s vydáním prvního iphonu. Systém byl nejprve znám pod jménem iphone OS. Až roku 2010 byl systém přejmenován na dnešní ios. Aktuální verze je ios 8. Podobně jako Android i ios se dělí na několik vrstev, které poskytují vývojářům základní API a funkcionality. Nejnižší vrstva, na které jsou postaveny ostatní technologie se nazývá Core OS vrstva. Nad touto vrstvou je postavena vrstva Core Services. Ta poskytuje přístup ke službám jako je ochrana dat, SQLite databáze, úložiště icloud a další. Pro vytváření grafických a zvukově propracovaných aplikací slouží vrstva Media. Tu vývojář typicky použije, pokud mu nestačí standartní komponenty systému, které jsou součástí nejvyšší vrstvy a to vrstvy Cocoa Touch [5]. Vrstva Cocoa Touch obsahuje většinu funkcionality, kterou vývojář potřebuje pro vývoj klasické aplikace pro ios. Zahrnuje například: UIKit framework Framework poskytující infrastrukturu pro vývoj standartní grafické aplikace. Obsahuje např. View Controllery (spravují obsah uživatelského rozhraní) nebo standartní UI komponenty. Notifiaction center Framework Umožní přidat notifikace do notifikačního centra. MapKit Poskytuje přístup k mapovým komponentám, které mohou být součástí aplikace. 8

16 Obrázek 2: Architektura ios [5] Vývoj pro platformu ios probíhá v aplikaci XCode, která je ale dostupná pouze na Mac OS X. Aplikace jsou psané v jazyce C, pokročilejším Objective C nebo nejnovějším jazyku Swift. Kód na ios je překládán do nativního kódu zařízení a není interpretovaný, jako např. bytecode Dalviku na Androidu. Systém ios běží na 12 různých modelech iphonů a 6 modelech tabletů ipadů (novější verze systému nejsou podporovány na starších zařízeních). Výrobce telefonů je jediný a to firma Apple. Aplikace jsou distribuovány pomocí obchodu App Store Windows Windows Phone je systém vyvíjený společností Microsoft a je nástupcem systému Windows Mobile. Systém vyšel v roce 2010 a nesl označení Windows Phone 7. Později v roce 2012 vyšel systém Windows Phone 8 založený na architektuře Windows NT, který ale není zpětně kompatibilní s Windows Phone 7 a který používal architekturu Windows CE. Aktuální verze je Windows Phone 8.1 na jejíž popis se zaměříme. Architektura Windows Phone 8.1 se skládá z několika částí. Obsahuje sdílené jádro dělící se na Windows Core a Mobile Core. Nad jádrem je postavené WinRT rozhraní poskytující běhové prostředí Windows Runtime XAML Framework, grafické knihovny, rozhraní pro živé dlaždice, mapy, geolokace a další. 9

17 Až do verze Windows Phone 8.0 se aplikace pro telefon psaly v tzv. Silverlight API. S verzí 8.1 Microsoft představil rozhraní WinRT, které bylo dříve používáno pro psaní tabletových aplikací ve Windows 8, dříve známé jako metro aplikace. Nad rozhraním WinRT lze psát aplikace v jazyce C# nebo VB.NET s použitím jazyka XAML. Grafické aplikace je možné psát pomocí DirectX v C++. Stejně je možné pro vývoj používat HTML/Javascript [6]. Aplikace pro WinRT lze téměř s minimem změn pustit i na platformě Windows 8.1. Hlavní vývojové prostředí je Visual Studio. Obrázek 3: Windows Runtime Execution model [6] Hlavním dodavatelem telefonů pro systém Windows Phone byla firma Nokia, kterou Microsoft v roce 2013 koupil a nově již telefony s tímto systémem vychází pod značkou Microsoft. Z dalších výrobců je to např. HTC, Samsung, LG a další. Aplikace jsou distribuovány do obchodu Windows Phone Store. 2.4 Srovnání technologií pro vývoj mobilní aplikace V této podkapitole srovnáme technologie, pomocí kterých lze vyvíjet aplikace pro výše uvedené platformy. První z možností je pouze optimalizovat webovou aplikaci pro mobilní zařízení s využitím responsivního designu nebo specializovaného mobilní webu, ke kterému by se přistupovalo na telefonu pomocí webového prohlížeče. Toto řešení má však hned několik nedostatků, jsou jimi například tyto: 10

18 Aplikace nebude mít platformně specifický vzhled. Aplikace nebude fungovat bez připojení k internetu. Máme přístup jen k těm funkcím telefonu, které zpřístupňuje prohlížeč. Z těchto důvodů nám toto řešení nevyhovuje. Navíc aplikace Matylda již částečně responsivní design používá, a proto se s ním v této práci nebudeme dále zabývat. V úvahu tedy přicházejí dva hlavní způsoby vývoje nativní a multiplatformní. Nativní vývoj zahrnuje použití platformě specifických nástrojů a jazyků pro každý systém. Výsledkem je aplikace, která využívá nativních komponent a tedy má na každé platformě jiný vzhled. Pro lepší názornost platformě specifického vzhledu jsme srovnali oficiální náhledy obrázků z aplikačních obchodů všech uvažovaných systémů aplikace Facebook Messenger. Obrázek 4: Aplikace Facebook Messenger (zleva Android, ios, Windows Phone) Hlavní myšlenkou multiplatformních technologií je to, že většinu nebo celý kód napíšeme jednou a poběží na všech platformách. Podle četnosti výskytu různých technologií jsme vybrali tři nejpopulárnější - Xamarin, PhoneGap, Appcelerator Titanium. Nyní podrobněji o jednotlivých technologiích. 11

19 2.4.1 Nativní vývoj Pokud bychom se rozhodli použít nativní vývoj, museli bychom pro každou platformu vyvinout aplikaci zvlášť pomocí nativních prostředků. Následující tabulka shrnuje hlavní jazyky a vývojová prostředí: Tabulka 3: Srovnání platforem a prostředí Platforma Jazyky Vývojová prostředí ios Swift, Objective-C Xcode Android Java Android Studio, Eclipse WP8 C# Visual Studio Výhody: Jednoduché využití platformně specifických funkcionalit (GPS, telefonní seznam, atd.). Jednoduché dosažení platformně specifického vzhledu. Nevýhody: Pro každý systém potřebujeme jednu aplikaci. Horší údržba a implementace nových požadavků. Vývojář musí mít znalosti všech platforem, jazyků, prostředí PhoneGap PhoneGap umožňuje psát aplikace založené na HTML technologiích, které jsou nasazeny a nainstalovány jako nativní aplikace. Celý kód je tedy psán v HTML + JavaScript + CSS a na každé platformě běží ve webové komponentě, která je zabalena do nativní aplikace. PhoneGap zároveň poskytuje společné API, přes které lze přistupovat k mobilním funkcionalitám jako je kamera, adresář atd. [7] PhoneGap aplikace tedy nemají defaultně platformně specifický vzhled a na každé platformě vypadají stejně. 12

20 Pro vývoj si stačí zvolit jedno prostředí (např. Visual Studio, Eclipse, Xcode) a poté použít online nástroj Adobe PhoneGap Build, kam se pouze nahraje kód, a pro každou platformu dostaneme zkompilovaný balíček. Abychom se zaregistrovali a nastavili certifikát pro vývoj na ios, potřebujeme MAC. Nástroj Adobe PhoneGap Build je zpoplatně částkou $9,99 / měsíc. Pro jednu aplikaci do 50 MB je však zdarma. Výhody: Sdílení až 100 % kódu. Jednoduché nasazení přes PhoneGap Build. Podpora dalších platforem Blackberry, Firefox OS. Teoretické znovupoužití stylů z původního webového projektu. Nevýhody: Ne všechny funkcionality jsou stejně podporovány na všech platformách. Veškerá logika aplikace psaná v JavaScriptu, což se nemusí hodit na větší projekty. Aplikace mají jednotný, ale ne nativní vzhled. Aplikace jsou pomalejší ve srovnání s nativními (běží v prohlížeči). Horší dokumentace Appcelerator Titanium Appcelerator Titanium poskytuje multiplatformní JavaScriptové prostředí a rozhraní pro mobilní zařízení. Vzniklý kód využívající rozhraní mobilního zařízení je poté přeložen do nativního kódu platformy a business logika zůstane jako JavaScript a za běhu je interpretována platformě specifickým JavaScript enginem. Výsledkem je aplikace, která je hybridem nativní a JavaScriptové aplikace [8]. 13

21 Aplikace je tedy rychlejší než PhoneGap a má nativní vzhled. Existují však nativní komponenty, které jsou specifické pro systém a nelze je jednoduše sdílet mezi platformami. Nelze tedy sdílet celých 100 % kódu. Aplikace lze vyvíjet v nástroji Titanium Studio, které je založené na prostředí Eclipse, nebo přes nástroje příkazové řádky. Titanium Studio bohužel nemá podporu pro vývoj Windows Phone 8, ale k vývoji lze využít Visual Studio. Pro systém ios je možné v Titanium Studiu vyvíjet pouze na přístrojích s Mac OS od Applu. Základní nástroje jsou zdarma, platí se pouze dodatečné cloudové služby. Výhody: Běží rychle díky částečnému překladu do nativní aplikace. Nativní vzhled. Sdílení velké části kódu. Nevýhody: Řešení platformě specifických komponent. Nelze pro všechny platformy psát v jednom IDE. Slabší dokumentace. Veškerá logika psaná v JavaScriptu, což se nemusí hodit na větší projekty Xamarin Xamarin [9] je placený nástroj, který umožňuje psát aplikace pro Android, ios a Mac v C# a překládá je do nativního kódu pro danou platformu (aplikace platforem Windows a Windows Phone jsou sami o sobě psané v C#, proto je Xamarin neobsahuje). Udává se, že při použití tohoto nástroje lze bez velkého snažení sdílet % kódu mezi platformami. Nadstavbou nad technologií Xamarin je technologie Xamarin.Forms. Jedná se o poměrně nový nástroj, kde se i UI kód napíše v C# a přeloží se do platformě specifických komponent. 14

22 Xamarin aplikace lze psát v nástroji Xamarin Studio nebo přímo ve Visual Studiu za použití Xamarin pluginu. Pro nasazení aplikace na iphone je třeba mít připojený MAC, sloužící jako build host. Pro vývoj je potřeba jedna licence Xamarin.Android a jedna licence Xamarin.iOS, dohromady za $1998 / rok. Výhody: Sdílení velkého množství kódu mezi platformami, což vede k velké udržovatelnosti projektu. Výsledkem jsou plně nativní aplikace, které běží téměř stejně rychle jako nativní. Výborná podpora a dokumentace. Lze psát ve Visual Studiu jako původní webový projekt a částečně sdílet kód mezi webovým a mobilním projektem. Nevýhody: Cena. Podobně jako u nativního vývoje musí vývojář znát nástroje pro vytváření UI na každé platformě Celkové srovnání Následující tabulka shrnuje některé ze základních aspektů: 15

23 Technologie Nativní aplikace Tabulka 4: Srovnání multiplatformních technologií % sdílení kódu mezi platformami Cena navíc Dokumen tace Prog. jazyk Nativní Ano 0 Zdarma N/A Závisí na plat. Phonegap Ne 100 Zdarma vs. $120 / rok Horší HTML + CSS + Javascript Xamarin Ano 90 $1998 / rok Výborná C# Appcelerator Napůl 90 Zdarma Horší JavaScript Titanium Na základě analýzy těchto technologií a práci na základní úrovni s každou z nich, jsme dospěli k závěru, že jednoznačně nejvhodnější technologií pro naše účely je Xamarin. Zde jsou hlavní důvody pro tuto volbu: Nativní vývoj nepřichází v úvahu, protože nemáme znalosti všech platforem a ukazuje se drahý. PhoneGap může být pomalý a nedosáhneme nativního vzhledu a Appcelerator Titanium je psán v JavasSriptu, což může být časově náročné. Ze všech technologií se při osobním vyzkoušení Xamarin jevil nejjednodušší, s nejlepší dokumentací, podporou a s nejkratším časem potřebného k rozběhnutí jednoduché aplikace. Tím, že většina aplikace je psaná v C#, bude potencionálně jednoduché zapojit i ostatní členy týmu na dílčí úkoly, aniž by museli vědět něco o mobilním vývoji. 2.5 Xamarin technologie Současně s volbou Xamarinu jako hlavního nástroje pro vývoj aplikace musíme zvolit vhodné technologie související s Xamarin vývojem. Xamarin sám o sobě umožňuje psát aplikace pro Android a ios v jazyce C#. Nyní stručně popíšeme, jak je tohoto dosaženo na každé z těchto platforem. Xamarin.Android aplikace běží uvnitř prostředí Mono. To je postaveno nad Linuxovým jádrem a zpřístupňuje implementaci standartních.net knihoven jako je 16

24 System, System.IO nebo System.Net. Naproti tomu Android knihovny jako Graphics, Audio nebo Telephony jsou přístupné pouze přes prostředí ART. Výsledná aplikace tedy používá obě běhová prostředí a Xamarin poskytuje engine na jejich propojení. Výsledkem překladu je balíček s příponou.apk, který má stejnou strukturu jako balíček přeložený z Javy. Pouze má navíc assembly knihovny aplikace a nativní knihovny obsahující prostředí Mono. Obrázek 5: Xamarin.Android architektura Oproti tomu Xamarin.iOS aplikace je kompilována pomocí dopředné kompilace, která je jednou z funkcionalit prostředí Mono a výsledkem je nativní kód cílového procesoru. Během překladu je použit nástroj zvaný Linker, který má za úkol odstranit nepoužívané části kódu. Samotný.NET Framework je součástí této aplikace, avšak nepoužívaný kód je během kompilace díky nástroji Linker odstraněn. Protože výsledný kód již není interpretovaný, přináší to s sebou několik omezení, např. nemožnost generování kódu za běhu. Všechny limitace lze najít na stránkách Xamarinu [10]. Obě technologie zpřístupňují kompletní rozhraní dané platformy a díky způsobu jejich fungování umožňují, aby výsledná aplikace běžela zhruba stejně rychle jako aplikace napsaná nativně. Např. přeložená Xamarin.iOS aplikace je nerozeznatelná od nativní napsané v Objective C, protože používá stejné nativní rozhraní, ale může mít větší velikost. Zajímavé srovnání můžeme najít např. na serveru magenic.com 17

25 [11], kde testovaná Xamarin aplikace běžela dokonce rychleji na ios i na Androidu než nativní aplikace. Samotné použití Xamarinu pro vývoj aplikace na Android a ios implicitně nezaručuje, že mezi platformami budeme sdílet nějaký kód. K tomu však slouží další dva koncepty a to Shared Project a Portable Class Library (PCL): Shared Project Umožňuje psát kód, na který se odkazují aplikační projekty. Tento kód je při překladu aplikačního projektu pouze přikompilován ktomuto projektu. Sám o sobě tedy Shared Project nemá žádný výstup ve formě DLL souboru, ale stane se součástí projektu, který se na něj odkazuje. Tím může být např. Xamarin.Android, Xamarin.iOS nebo Windows projekt. Pokud potřebujeme použít kód, který je dostupný jen na jedné z platforem, použijeme direktivy kompilátoru. Např. pokud část kódu je dostupná jen na Androidu, můžeme to vyjádřit takto: #if ANDROID //Android code #endif Obrázek 6: Shared project a dirketivy kompilátoru Portable Class Library Na rozdíl od Shared Project je výstupem přeložený DLL soubor. Problém ale je ten, že různé platformy používají různou podmnožinu.net Base Class Library (BCL). Při vytváření tohoto projektu je proto nutné vybrat platformy, které chceme podporovat. Tato volba se poté přeloží do tzv. identifikátoru profilu, který popisuje, jaké platformy podporujeme. V tomto projektu pak lze používat největší podmnožinu BCL, která je dostupná na všech zvolených platformách. Pro použití platformě specifické funkcionality je zapotřebí jistá míra abstrakce. Např. v PCL projektu definujeme interface, s kterým tu dále pracujeme, a jeho implementace bude definována v aplikačních projektech. 18

26 Obrázek 7: PCL a výběr platforem Použití těchto konceptů může zaručit, aby velká část kódu byla sdílená. Minimálně však UI kód musíme napsat pro každou platformu zvlášť. Proto Xamarin přišel s další technologií zvanou Xamarin.Forms, která poskytuje abstrakci nad UI komponentami. Vzhled aplikace se tedy definuje pouze jednou a to pomocí předpřipravených komponent a píše se buďto přímo v C# kódu nebo pomocí jazyka XAML. Komponenty jsou poté při překladu namapovány na komponenty cílové platformy a tím je zaručen nativní vzhled i výkon. Hlavní otázka nyní je, zda pro naši aplikaci použít Xamarin.Forms. Na stránkách Xamarinu o Xamarin.Forms [12] se uvádí, kdy je vhodné tuto technologii použít. Podle těchto doporučení jsou Xamarin.Forms vhodné na jednoduché, případně prototypové aplikace, kdy není dáván důraz na platformě specifickou funkcionalitu. Naše aplikace však může být komplexnější a potenciálně může velmi využívat nativní rozhraní, proto se jako bezpečnější volba jeví Xamarin.Forms nepoužívat. Dalším argumentem může být např. fakt, že se jedná o poměrně novou technologii, která není zatím tolik rozšířená. Rozhodnutí tedy je, že Xamarin.Forms nepoužijeme. Přestože nebudeme sdílet UI kód pomocí Xamarin.Forms, stále můžeme sdílet velké množství kódu. K tomu by se nám hodila abstrakce nad rozhraními jednotlivých platforem. Jako příklad uvedeme získávání aktuální pozice uživatele, s kterou chceme dále pracovat (např. spočítat vzdálenost k obchodu). Na každé platformě se tento úkol řeší jinak. Na androidu používáme k získání lokace 19

27 LocationClient, který udržuje souřadnice v objektu CustomLocation. Na ios je CLLocationManager se souřadnicemi uložených v CLLocation a podobně na Windows najdeme Geolocator s Geocoordinate. Nám by se však hodilo pracovat jen s jedním typem objektů, který by tyto zastřešoval. Toho můžeme docílit tak, že si nad těmito objekty vytvoříme interface, jehož implementace bude v aplikačních projektech. Protože tato funkcionalita je poměrně častá, můžeme využít již existující řešení. Nejrozšířenější knihovnou je open source framework MvvmCross [13]. Ten nejenže zastřešuje funkcionality jako geolokace, práce s obrázky nebo s barvami, ale i navigaci mezi obrazovkami. Je založen na návrhovém vzoru MVVM, umožňující oddělit business logiku aplikace od vzhledu. Rozhodli jsme se tedy použít MvvmCross Framework využívající návrhový vzor MVVM, který bude popsán v následující kapitole. 2.6 Návrhový vzor MVVM a MvvmCross Framework MVVM (Model View ViewModel) [14] je návrhorvý vzor pocházející od firmy Microsoft. Má za cíl lépe oddělit vzhled aplikace od ostatních vrstev. Vznikl jako variace na vzor Presentation Model [15] od Martina Fowlera a je inspirován vzorem MVC (Model View Controller) [16]. Vzor MVVM rozděluje architekturu aplikace na tyto části: Model Označuje doménový model, který obsahuje data i tzv. business logiku aplikace. View Odpovídá uživatelskému rozhraní. ViewModel Vrstva abstrahující uživatelské rozhraní pomocí výčtu vlastností a akcí. Poskytuje přístup k datům z modelu a zajišťuje interakční logiku aplikace. Binder Spojuje data a akce z View s ViewModelem pomocí tzv. Data Bindingu. V kontextu Microsoft technologií tomu odpovídá jazyk XAML a je tedy implicitní součástí aplikace. 20

28 Obrázek 8: Návrhový vzor MVVM Pokud bychom srovnávali tento vzor se vzorem MVC, pak vrstvy View a Model jsou totožné. Místo kontroleru, který řídí komunikaci mezi View a Modelem, je zde ViewModel a Data Binding. Hlavním přínosem MVVM je způsob oddělení UI kódu takovým způsobem, že není třeba psát explicitní kód na propojení View s daty ve ViewModelu o to se stará Data Binding. ViewModel tedy neví nic o View který ho používá, ale změny v něm jsou propagovány pomocí bindingu do View. Stejně jsou změny ve View přeneseny do ViewModelu. Původně byl tento návrhový vzor využíván pouze v technologii WPF, později se začal používat v dalších technologiích od Microsoftu využívajících XAML jako např. Silverlight nebo WinRT (včetně vývoje pro Windows Phone). Nyní se používá např. i v JavaScript frameworku KnockoutJS. Na ios je doporučeno vyvíjet aplikace pomocí vzoru MVC, který má širokou podporu v systému a jeho komponentách. Na Androidu není přesně dané, o jaký návrhový vzor se jedná a záleží, jak budeme chápat koncept tzv. aktivity, který má odpovídat jedné aktivitě uživatele. Z návrhového vzoru MVVM vychází i námi zvolený MvvmCross Framework [13]. Cílem tohoto frameworku je umožnit psát pomocí MVVM i na platformách Xamarin.Android a Xamarin.iOS, které MVVM standardně nepodporují. Jedná se o open source Framework vyvíjený především vývojářem jménem Stuart Lodge. Využívá techniku sdílených PCL projektů a umožňuje strukturovat aplikaci takovým způsobem, aby velká část logiky aplikace byla v tomto projektu. Hlavní myšlenka je taková, že obrazovky jednotlivých platforem si víceméně odpovídají obsahem a logikou, která je s nimi spojená a liší se hlavně ve vzhledu. Budeme mít tedy pro každou obrazovku jeden ViewModel, který může být součástí PCL. Na každé plaformě pak pouze naimplementujeme odpovídající View a 21

29 pomocí bindingu, který taktéž implementuje MvvmCross, napojíme tyto View do ViewModelu. Sám autor MvvmCross o tomto konceptu mluví jako o vylepšeném vzoru MVVM a pojmenovává ho zkratkou MVX Mvvm Cross Platform. Obrázek 9: Vzor MVX MvvmCross tedy nabízí nástroje pro psaní multiplatformních ViewModelů. Dále poskytuje nástroje pro vytvoření základní infrastruktury aplikace jako je společná inicializace při startu aplikace nebo možnost používat princip tzv. Dependency Injection. Jedná se o způsob programování, kdy si objekty sami nevytvářejí závislosti mezi sebou, ale předávají si je (např. pomocí konstruktoru). S tím souvisí pojem IoC Container, což je objekt, který se stará právě o vytváření objektů a jehož vlastní implementaci MvvmCross poskytuje. Důležitou součástí MvvmCross je mechanismus pluginů. Myšlenka je taková, že uživatel nemusí v každé aplikaci chtít pracovat např. s geolokací nebo obrázky. Proto jsou tyto jednotlivé funkcionality oddělené od hlavního projektu pomocí pluginové architektury. Tato architektura je podobná jako architektura samotného projektu a skládá se ze sdílených PCL projektů obsahující abstrakce a knihoven implementující tyto abstrakce na jednotlivých platformách. Pokud bychom chtěli naimplementovat vlastní plugin, musíme dodat PCL, která abstrahuje funkcionalitu tohoto pluginu pomocí interfaců a abstraktních tříd a pro každou platformu musíme dodat jednu knihovnu implementující tuto funkcionalitu na dané platformě. Uživatelova aplikace 22

30 se typicky bude skládat také z jednoho PCL projektu a několika projektů cílových platforem odkazujících se na jeho PCL. Použití je pak takové, že uživatel si přidá odkaz na PCL pluginu obsahující abstrakce do svého PCL projektu a navíc si přidá odkaz z každého projektu platformy na platformě specifickou knihovnu pluginu. Výhodou je, že uživatel pak s touto funkcionalitou pracuje ve formě abstrakce již jen ve svém PCL projektu a dosáhne většího množství sdílení kódu. Kromě Xamarin.Android a Xamarin.iOS podporuje MvvmCross i platformu Mac, Windows Phone, Windows a částečně i WPF. Framework není přímo závislý na technologii Xamarin, která je potřeba, jen pokud chceme podporovat Android nebo ios. 2.7 Podpora různých verzí cílových platforem Dalším faktorem ovlivňující vývoj aplikace je volba verzí operačních systémů, které budeme podporovat. Novější verze operačních systémů přinášejí nová rozhraní, která nemusí být podporovaná na starých verzích. Další problém, který je třeba vzít v úvahu, je podpora tabletů. Naše aplikace je primárně určena pro chytré telefony, ale rozdíly mezi tablety a telefony se postupně smazávají a jediným rozdílem může být velikost displeje. Naše rozhodnutí je podporovat aplikaci i na tabletových zařízeních, ale nebudeme věnovat větší snahu jejich optimalizaci. Co se týče verzí, nejhorší je situace na Androidu. Různí výrobci telefonů používají vlastní upravené verze Androidu, a pokud vyjde nový Android, jsou uživatelé závislí na výrobci, zda jim doručí update s touto verzí, což může být se zpožděním nebo vůbec. Na stránkách developer.android.com [17] je tabulka ukazující rozložení verzí v dubnu 2015 z dat získaných z obchodu Google Play. 23

31 Obrázek 10: Rozložení Android verzí (duben 2015) [17] Z těchto dat je patrné, že nejnižší verze, kterou má smysl podporovat je Gingerbread. Avšak i podíl této verze každým měsícem klesá. Proto jsme se rozhodli podporovat primárně verzi IceCream a výše, přičemž po uvedení aplikace do obchodu Google Play můžeme znovu zvážit pracnost podpory verze Gingerbread a případně ji doplnit. Android má podporu tabletů již od API level 11, tudíž naše aplikace by měla běžet i na všech tabletech. Na Androidu je zpětná kompatibilita řešena především pomocí tzv. Support Libraries. Ty umožňují používat funkcionalitu dostupnou v novějších verzích Androidu i ve starších verzích. Navíc se můžeme za běhu zeptat na aktuální verzi Androidu a podle toho volat kód specifický pro danou verzi. Na ios je situace jednodušší. Apple umožňuje většině svých modelů přechod na nejnovější verzi. Nejnižší iphone podporující nejnovější verzi 8 je iphone 4S a co se týče tabletů, podporu nejnovější verze dostaly všechny tablety ipad 2 a výše. Přikládáme graf opět z dubna znázorňující rozložení verzí ios z dat v App Store na stránkách Applu [18]. 24

32 Obrázek 11 - Rozložení ios verzí (duben 2015) [18] Z grafu nám vyplývá, že má smysl podporovat verzi ios 7 a výše. Opět máme možnost v kódu kontrolovat aktuální verzi. Při vývoji aplikace navíc máme možnost určit, zda je aplikace určená i pro tablety. My tuto možnost povolíme. Na Windows je díky volbě WinRT rozhraní volba jednoduchá. Jediná verze mobilního systému, který běží na tomto rozhraní je Windows Phone 8.1. Ten díky automatickému upgradu z Windows Phone 8.0 běží na většině telefonů. Komplikovanější je situace s tablety. Tabletům odpovídají zařízení běžící na Windows 8.1, aplikace tedy půjde pustit i na desktopových Windows. Tam ale nemusí být podpora pro dotykové ovládání, avšak většina komponent umí fungovat i bez toho. Pokud chceme vyvíjet i pro Windows 8.1, Visual Studio nabízí způsob, jak jednoduše sdílet většinu kódu aplikace. Jedná se o použití sdíleného projektu popsaném v kapitole 2.5. Ten umožňuje sdílet i View ve formě XAML kódu. Bohužel ne všechny komponenty existují na obou platformách. Protože na tablety je kladen menší důraz, budeme kód psát do sdíleného projektu, ale View s platformě specifickými komponentami budeme definovat jenom ve Windows Phone 8.1. Takto bez jakékoliv námahy získáme projekt spustitelný i na klasickém PC, který ale nebude kompletní a může sloužit k rychlému testování aplikace. Dalším důvodem, proč neudržovat kompletní Windows 8.1 aplikaci, je způsob, jakým bude řešen přechod na budoucí Windows 10. Tam bude celá aplikace jen v jednom projektu, jehož rozhraní má být více podobné současnému Windows Phone 8.1 a tedy bychom stejně komponenty z Windows 8.1 projektu nepoužili. 25

33 Rozhodnutí tedy je podporovat primárně Windows Phone 8.1, udržovat projekt Windows 8.1 jen pro testování a v budoucnu podporovat tablety až s příchodem Windows Volba lokálního úložiště Jedním z typických požadavků na aplikaci je persistence lokálních dat při vypnutí aplikace. Tento problém se týká i naší aplikace a přímo ze specifikace vyplývá, že budeme muset uchovávat alespoň tyto data: Nákupní seznamy Musí fungovat částečně bez připojení, tedy musíme si ukládat celé seznamy se všemi položkami včetně informací jako je počet kusů, zda je položka koupená atd. Zobrazení tutoriálu Tutoriál se má ukázat při prvním spuštění, proto si musíme někde pamatovat, zda již uživateli tutoriál příště neukazovat. Přihlašovací údaje Pokud bychom nutili uživatele přihlašovat se při každém spuštění aplikace, pak by používání aplikace bylo značně nepohodlné. Lokace a filtry Uživatel si může zvolit, kde nakupuje a jaké položky ho zajímají (např. jen ve slevě). Toto nastavení musí být také uloženo lokálně na telefonu. Každá z platforem má přístup k lokálnímu souborovému systému, který přidělí aplikaci místo, kam může číst a zapisovat. Protože ukládání dat je častá operace, poskytuje každá platforma vestavěný mechanismus na ukládání dat ve formě klíč-hodnota. Konkrétně na Androidu jsou k dispozici tzv. SharedPreferences, na ios existuje NSUserDefaults a na Windows je to ApplicationDataContainer. Druhou možností jak ukládat data je použít lokální SQLite databázi [19]. Jedná se o minimalistickou knihovnu ukládající data do jednoho souboru. Vyžaduje nulovou kofiguraci, implementuje téměř celý standard SQL-92 a je implementovaná na všech platformách. 26

34 Další možností je ukládat si data přímo do souboru a spravovat je ručně. To se může hodit např. pro ukládání strukturovaných dat ve formě XML nebo JSON nebo pro ukládání obrázků. Při volbě první varianty bychom se nechtěli zabývat implementačními detaily vyjmenovaných úložišť a můžeme například použít Settings Plugin pro Xamarin [20] zastřešující implementace na všech platformách pod jedním rozhraním. Při použití SQLite můžeme použít knihovnu sqlite-net [21], která taktéž poskytuje multiplatformní rozhraní. Pro jednotnou práci se se soubory můžeme použít File Plugin pro MvvmCross nad kterým je postaven DownloadCache plugin, který poskytuje logiku cachování stažených dat, hlavně obrázků. Ke každé volbě úložiště tedy existuje multiplatformní řešení, a proto by mělo být jejich použití jednoduché. Otázkou zůstává, který typ úložiště je nejvhodnější pro naši aplikaci. Pro jednoduchá data, jako právě informace, zda uživateli ukazovat tutoriál, by bylo nejvhodnější vestavěné úložiště. Na druhou stranu potřebujeme ukládat nákupní seznamy spolu sjejich položkami a na to nám struktura klíč-hodnota nestačí a pro tento účel by byla nejvhodnější SQLite databáze. Ukládání do souboru se jeví jako velmi pracné, může být však vhodné pro cachování obrázků. Bylo by však nepraktické, ukládat část informací do databáze a část do nastavení, proto jsme se rozhodli, ukládat veškerá data kromě obrázků do SQLite databáze a tedy spravovat pouze jedno úložiště. Pro cachování obrázků použijeme DownloadCache MvvmCross plugin, které používá ukládání do souborů, avšak správa těchto souborů je součástí implementace pluginu, proto nebudeme muset se soubory explicitně pracovat. 2.9 Možnosti zobrazení map Další z požadavků je dát uživateli možnost zobrazit si nejbližší prodejny na mapě a spustit navigaci k dané prodejně. Právě použití map je jednou z klíčových funkcionalit, které odlišují mobilní zařízení od desktopových počítačů, kde není 27

35 kladen takový důraz na aktuální polohu uživatele. Z tohoto důvodu má každý ze systémů v sobě zabudovaný mechanismus pro práci s mapami. V případě map musíme také učinit několik rozhodnutí. První otázkou je, zda pro zobrazení prodejen na mapě použijeme externí aplikaci nebo přidáme mapy přímo do aplikace. Na každé platformě však nemusí být dostupné jenom jedny mapy, např na ios můžeme použít vestavěné mapy od Applu nebo použít Google mapy. Druhou otázkou tedy je, jaké mapy použijeme na konkrétních systémech. Nyní podrobněji probereme jednotlivé možnosti. Pokud bychom chtěli mapy zobrazit v externí aplikaci, pak všechny tři systémy tuto funkcionalitu poskytují. Typicky stačí zavolat systémovou metodu se specifickým URL obsahující informace, které chceme zobrazit v mapové aplikaci. Tento přístup má však několik nevýhod. Jedním problémem je malá možnost konfigurace map. Externí aplikace umí často zobrazit jen jeden bod nebo naplánovat cestu mezi dvěma body. Dalším problémem je samotný fakt, že uživatel je přesměrován do externí aplikace a to může odvést jeho pozornost od naší aplikace. Naopak vestavěné mapy můžeme umístit přímo do naší aplikace a pomocí mapových rozhraní máme možnost jejich široké konfigurace. Můžeme např. přepínat mezi nočním a denním režimem, přepnout na satelitní mapu a především můžeme vykreslit libovolný počet bodů na mapě. Pro naši aplikaci je tedy výhodné, pokud zobrazíme obchody spolu s naší pozicí na mapě, která bude uvnitř naší aplikace. Samotnou navigaci k prodejně ovšem provedeme pomocí externí aplikace, která má již navigaci mezi dvěma body implementovanou. Co se týče dostupnosti jednotlivých mapových technologií na jednotlivých platformách, situace je následující. Na Androidu se nejčastěji používají Google Maps. Ty jsou předinstalované jako aplikace na téměř všech Android zařízeních. Mapy můžeme používat pomocí rozhraní, které je dostupné pomocí platformy Google Play Services. Tato platforma je také dostupná na téměř všech telefonech a stačí ji přilinkovat do naší aplikace. Poté máme Google Mapy dostupné jako komponentu v naší aplikaci. Na stránkách 28

36 s dokumentací k Xamarinu [22] je detailně popsané, jak používat Google Maps na platformě Xamarin.Android. Popis zahrnuje například získání unikátního klíče pro fungování map, který se získá registrací na Googlu. Na serveru Android Central [23] jsou vypsané alternativy ke Google Maps, mezi něž patří např. HERE mapy s vlastním SDK pro Android. Avšak uživatelé Androidu jsou nejvíce zvyklí na Google Maps a díky jejich velké integraci do systému nemá smysl uvažovat nad alternativou. Na ios se až do roku 2012 používaly výhradně Google Maps. S příchodem ios 6 ovšem Apple představil vlastní technologii Apple Maps. Na tu se zpočátku snesla vlna kritiky kvůli nepřesnostem, pomalé odezvě nebo špatné navigaci. Tyto problémy však již nejsou v novějších verzích tak časté a Apple Maps jsou plnohodnotnou alternativou k mapám od Googlu. Výhodou Apple Maps je především fakt, jsou dostupné pomocí knihovny Map Kit, která je přímo součástí systému. Navíc Apple mapy jsou předinstalované na nových zařízeních a uživatelé jsou na ně více zvyklí. Z tohoto důvodu a kvůli lepší integraci do systému jsme se rozhodli na ios použít mapy přímo od Applu. Při použití map na Windows Phone 8.1 jsou mapy dostupné pomocí komponenty Map Control, která odpovídá Bing mapám. Ty jsou zabudované v samotném SDK pro Windows Phone 8.1. Je zde i možnost použít např. Google mapy, které se ovšem musí používat přes komponentu prohlížeče a kód na konfiguraci map psát v JavaScriptu. Větší smysl dává tedy použít nativní komponentu Map Control. Tato komponenta je jednou z komponent, které nejsou dostupné na desktopových Windows 8.1, proto je budeme implementovat pouze ve verzi pro Windows Phone 8.1. Na každé platformě jsme tedy zvolili nativní mapy. Problém je, že rozhraní těchto map jsou tak rozdílné, že nelze jednoduše vytvořit abstrakci, která zastřeší celkovou práci smapami. Pokud budeme chtít tedy na mapě zobrazit kolekci několika obchodů, pak si budeme muset napsat vlastní mechanismus, který se bude starat o zobrazování těchto bodů na každé platformě. To bude odpovídat implementaci Binderu popsaném v kapitole 2.6 o MVVM. 29

37 2.10 Návrh implementace serverové části Stěžejní funkcionalitou aplikace je komunikace se serverovou částí. Musíme vymyslet a naimplementovat způsob, jakým bude serverová část předávat data mobilnímu klientu. V této kapitole bude nejprve popsána architektura existujícího webového projektu a bude popsán způsob, jakým začleníme tuto část do existující architektury projektu. Následně vybereme technologii, pomocí které budeme novou část projektu implementovat. Samotná implementace většiny serverové části však bude ponechána na jiného člena týmu a nebude součástí odevzdaného řešení Začlenění do projektu Matylda Nejprve stručně popíšeme architekturu původního webového projektu, která se od odevzdání projektu téměř nezměnila a je zobrazena na následujícím diagramu. Obrázek 12: Architektura systému Matylda Architektura se dělí na několik vrstev, přičemž každá vrstva může komunikovat s vrstvami pod sebou, jak znázorňují šipky. Nejnižší vrstva obsahuje relační databázi MS SQL a NoSQL databázi Solr. Nad databází je vrstva Domain zajišťující mapování databázových entit z relační databáze do doménových modelů. Podobně SolrLib zajišťuje komunikaci s databázi Solr. Nad těmito vrstvami je postavená 30

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

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

29 Evidence smluv. Popis modulu. Záložka Evidence smluv 29 Evidence smluv Uživatelský modul Evidence smluv slouží ke správě a evidenci smluv organizace s možností připojení vlastní smlouvy v elektronické podobě včetně přidělování závazků ze smluv jednotlivým

Více

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4. MOJESODEXO.CZ Poukázky v obálkách Verze aplikace: 1.4.0 Aktualizováno: 22. 9. 2014 17:44 Strana 1 / 1 OBSAH DOKUMENTU 1. ÚVOD... 2 1.1. CO JSOU TO POUKÁZKY V OBÁLKÁCH?... 2 1.2. JAKÉ POUKÁZKY MOHOU BÝT

Více

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE

WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE WEBDISPEČINK NA MOBILNÍCH ZAŘÍZENÍCH PŘÍRUČKA PRO WD MOBILE Úvodem WD je mobilní verze klasického WEBDISPEČINKU, která je určena pro chytré telefony a tablety. Je k dispozici pro platformy ios a Android,

Více

PV239/WP. Vývoj univerzálních Windows Store aplikací. Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP gesvindr@mail.muni.

PV239/WP. Vývoj univerzálních Windows Store aplikací. Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP gesvindr@mail.muni. PV239/WP Vývoj univerzálních Windows Store aplikací Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP gesvindr@mail.muni.cz Cíle kurzu Osnova kurzu 1. Seznámení s platformou a nástroji

Více

Vodafone promo kit uživatelský manuál http://promo.vodafone.cz/ Uživatelský manuál pro aplikaci. Vodafone promo kit. Verze dokumentu: 2.

Vodafone promo kit uživatelský manuál http://promo.vodafone.cz/ Uživatelský manuál pro aplikaci. Vodafone promo kit. Verze dokumentu: 2. Uživatelský manuál pro aplikaci Vodafone promo kit Verze dokumentu: 2.1 Vytvořeno: V Praze dne 8. 9. 2011 1 Obsah Vodafone promo kit uživatelský manuál Webové rozhraní aplikace Vodafone promo kit... 4

Více

Jízdní řády ČD v mobilním telefonu

Jízdní řády ČD v mobilním telefonu David Švingr 1 Jízdní řády ČD v mobilním telefonu Klíčová slova: dopravní spojení, vyhledávač, jízdní řády Webový vyhledávač statistiky provozu V roce 2009 umožňovaly online vyhledávání v jízdních řádech

Více

WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE. 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu

WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE. 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE 2005-2008 Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6 www.hydrosoft.eu Obsah Obsah 1 1.1 3 Internetový... prohlížeč map 4 Rozložení ovládacích... prvků

Více

Android Elizabeth. Verze: 1.3

Android Elizabeth. Verze: 1.3 Android Elizabeth Program pro měření mezičasů na zařízeních s OS Android Verze: 1.3 Naposledy upraveno: 12. března 2014 alesrazym.cz Aleš Razým fb.com/androidelizabeth Historie verzí Verze Datum Popis

Více

DODATEČNÉ INFORMACE K ZADÁVACÍM PODMÍNKÁM

DODATEČNÉ INFORMACE K ZADÁVACÍM PODMÍNKÁM Zadavatel: Moravskoslezský kraj se sídlem Ostrava, 28. října 117, PSČ 702 18 IČ: 70890692 Veřejná zakázka: Datové sklady - SW Technologie a metadatový systém, Datová tržiště ekonomiky, Školství, statistiky,

Více

Manuál Kentico CMSDesk pro KDU-ČSL

Manuál Kentico CMSDesk pro KDU-ČSL Manuál Kentico CMSDesk pro KDU-ČSL 2011 KDU-ČSL Obsah 1 Obecně... 3 1.1 Přihlašování... 3 1.2 Uživatelské prostředí... 4 2 Stránky... 4 2.1 Vytvoření nové stránky... 4 2.1.1 Texty... 7 2.1.2 Styly textu...

Více

Bezdrátové připojení (pouze u vybraných modelů) Uživatelská příručka

Bezdrátové připojení (pouze u vybraných modelů) Uživatelská příručka Bezdrátové připojení (pouze u vybraných modelů) Uživatelská příručka Copyright 2007 Hewlett-Packard Development Company, L.P. Windows je registrovaná ochranná známka Microsoft Corporation v USA. Bluetooth

Více

Úvodní příručka k aplikaci Novell Messenger 3.0.1 Mobile

Úvodní příručka k aplikaci Novell Messenger 3.0.1 Mobile Úvodní příručka k aplikaci Novell Messenger 3.0.1 Mobile Květen 2015 Program Novell Messenger 3.0.1 a novější je k dispozici pro podporovaná mobilní zařízení ios, Android BlackBerry. Protože k systému

Více

Server. Software serveru. Služby serveru

Server. Software serveru. Služby serveru Server Server je v informatice obecné označení pro počítač či skupinu počítačů, kteří poskytují nějaké služby. Rovněž pojmem server můžeme označit počítačový program, který tyto služby realizuje. Služby

Více

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP gesvindr@mail.muni.cz

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP gesvindr@mail.muni.cz Efektivní vývoj mobilních aplikací na více platforem současně Mgr. David Gešvindr MCT MSP MCPD MCITP gesvindr@mail.muni.cz Osnova 1. Kam míří platforma Windows Phone 2. Seznámení s univerzálními Windows

Více

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ Pozemkem se podle 2 písm. a) katastrálního zákona rozumí část zemského povrchu, a to část taková, která je od sousedních částí zemského povrchu (sousedních pozemků)

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

Všeobecné obchodní podmínky

Všeobecné obchodní podmínky Všeobecné obchodní podmínky dle 1751 an. zákona č. 89/2012 Sb., občanský zákoník (dále jen občanský zákoník ) vydané společností DETOXme s.r.o., IČ: 04736931, se sídlem Elišky Junkové 312/47, Droždín,

Více

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS Název projektu: Redesign Statistického informačního systému v návaznosti na zavádění egovernmentu v ČR Příjemce: Česká republika Český statistický úřad Registrační číslo projektu: CZ.1.06/1.1.00/07.06396

Více

MĚSTO BENEŠOV. Rada města Benešov. Vnitřní předpis č. 16/2016. Směrnice k zadávání veřejných zakázek malého rozsahu. Čl. 1. Předmět úpravy a působnost

MĚSTO BENEŠOV. Rada města Benešov. Vnitřní předpis č. 16/2016. Směrnice k zadávání veřejných zakázek malého rozsahu. Čl. 1. Předmět úpravy a působnost MĚSTO BENEŠOV Rada města Benešov Vnitřní předpis č. 16/2016 Směrnice k zadávání veřejných zakázek malého rozsahu I. Obecná ustanovení Čl. 1 Předmět úpravy a působnost 1) Tato směrnice upravuje závazná

Více

Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014

Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014 Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014 Schváleno Radou pro koordinaci Polytematického strukturovaného hesláře (PSH) dne: 12. 12. 2011 ÚVOD V době svého vzniku (90. léta

Více

DATABÁZE 2007. DŮLEŽITÉ: Před načtením nové databáze do vaší databáze si prosím přečtěte následující informace, které vám umožní:

DATABÁZE 2007. DŮLEŽITÉ: Před načtením nové databáze do vaší databáze si prosím přečtěte následující informace, které vám umožní: DATABÁZE 2007 DŮLEŽITÉ: Před načtením nové databáze do vaší databáze si prosím přečtěte následující informace, které vám umožní: - jednoduše a rychle provést úpravy ve struktuře vaší databáze podle potřeby

Více

Inovace výuky prostřednictvím šablon pro SŠ

Inovace výuky prostřednictvím šablon pro SŠ Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748

Více

ZADÁVACÍ DOKUMENTACE PRO ZAKÁZKU MALÉHO ROZSAHU MOBILNÍ PRŮVODCE - DUCHOVNÍ DĚDICTVÍ MORAVY A SLEZSKA"

ZADÁVACÍ DOKUMENTACE PRO ZAKÁZKU MALÉHO ROZSAHU MOBILNÍ PRŮVODCE - DUCHOVNÍ DĚDICTVÍ MORAVY A SLEZSKA ZADÁVACÍ DOKUMENTACE PRO ZAKÁZKU MALÉHO ROZSAHU MOBILNÍ PRŮVODCE - DUCHOVNÍ DĚDICTVÍ MORAVY A SLEZSKA" 1. Předmět zakázky 1.1. Úvod V roce 2012 spolupracují 4 moravské kraje (Olomoucký kraj, Jihomoravský

Více

Praktické úlohy- zaměření specializace

Praktické úlohy- zaměření specializace Praktické úlohy- zaměření specializace Realizace praktických úloh zaměřených na dovednosti v oblastech specializace POS: Síťový OS, instalace, konfigurace a optimalizace podle zamýšleného použití; Inicializace

Více

Ing. Jiří Fůsek. Základní informace. Pracovní zkušenosti. Vzdělání. 09/2015 - nyní Freelancer. 09/2008-06/2010 Univerzita Tomáše Bati ve Zlíně

Ing. Jiří Fůsek. Základní informace. Pracovní zkušenosti. Vzdělání. 09/2015 - nyní Freelancer. 09/2008-06/2010 Univerzita Tomáše Bati ve Zlíně Základní informace Pracovní zkušenosti Ing. Jiří Fůsek Mikulova 1573/11, 149 00 Praha +420 774 331 232 fusek.jiri@gmail.com http://www.jirifusek.net/ 09/2015 - nyní Freelancer Senior C#.NET vývojář - SW

Více

Rozšířená nastavení. Kapitola 4

Rozšířená nastavení. Kapitola 4 Kapitola 4 Rozšířená nastavení 4 Nástroje databáze Jak již bylo zmíněno, BCM používá jako úložiště veškerých informací databázi SQL, která běží na všech lokálních počítačích s BCM. Jeden z počítačů nebo

Více

Zadávací dokumentace k veřejné zakázce zadané podle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů

Zadávací dokumentace k veřejné zakázce zadané podle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů Zadávací dokumentace k veřejné zakázce zadané podle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů Zadavatel Kontaktní osoba zadavatele Název zakázky Ev. č. dle Věstníku veřejných

Více

Manuál uživatele čipové karty s certifikátem

Manuál uživatele čipové karty s certifikátem Manuál uživatele čipové karty s certifikátem Obsah 1 Úvod... 3 2 Instalace čipové karty s certifikátem... 5 3 Instalace čtečky čipových karet... 10 3.1 Instalace z Windows Update... 10 3.2 Manuální instalace

Více

Inteligentní zastávky Ústí nad Labem

Inteligentní zastávky Ústí nad Labem Příloha č. 7 Technická specifikace pro veřejnou zakázku Inteligentní zastávky Ústí nad Labem nadlimitní veřejná zakázka na realizaci inteligentních zastávek zadávaná v otevřeném řízení, dle zákona o veřejných

Více

Bezdrátové připojení (pouze u vybraných modelů)

Bezdrátové připojení (pouze u vybraných modelů) Bezdrátové připojení (pouze u vybraných modelů) Uživatelská příručka Copyright 2007 Hewlett-Packard Development Company, L.P. Windows je registrovaná ochranná známka Microsoft Corporation v USA. Bluetooth

Více

Nastavení telefonu T-Mobile MDA Touch

Nastavení telefonu T-Mobile MDA Touch Nastavení telefonu T-Mobile MDA Touch Telefon s integrovaným kapesním počítačem T-Mobile MDA Touch, zakoupený v prodejní síti společnosti T-Mobile Czech Republic a.s., má potřebné parametry pro použití

Více

MATURITNÍ PRÁCE dokumentace

MATURITNÍ PRÁCE dokumentace MATURITNÍ PRÁCE dokumentace 3D hra pro Android Petr Dobeš školní rok: 2012/2013 obor: třída: Elektronické počítačové systémy PS4B ABSTRAKT Tato maturitní práce se zabývá tvorbou hry Akarun, která je

Více

PŘÍLOHA 10 SMLOUVY O PŘÍSTUPU KE KONCOVÝM ÚSEKŮM. Pravidla a postupy

PŘÍLOHA 10 SMLOUVY O PŘÍSTUPU KE KONCOVÝM ÚSEKŮM. Pravidla a postupy PŘÍLOHA 10 SMLOUVY O PŘÍSTUPU KE KONCOVÝM ÚSEKŮM Pravidla a postupy OBSAH Rozsah dokumentu... 3 1 Implementace Smlouvy... 3 2 Popisy metod komunikace... 4 2.1 B2B GW (SI)... 4 2.2 WEB Interface (WI)...

Více

Zákaznická linka: +420 585 496 211. Uživatelský manuál mobilní aplikace. Patriot EU

Zákaznická linka: +420 585 496 211. Uživatelský manuál mobilní aplikace. Patriot EU Zákaznická linka: +420 585 496 211 Uživatelský manuál mobilní aplikace Patriot EU 1.4.2016 1. OBSAH 1. OBSAH... 2 2. APLIKACE PATRIOT EU... 3 2.1 Stažení a instalaci aplikace... 3 2.2 Přidání vozidel do

Více

ICT plán školy 2015/2016

ICT plán školy 2015/2016 Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky ICT plán školy 2015/2016 1. Základní údaje o škole Název školy: Základní škola s rozšířeným vyučováním informatiky a výpočetní techniky

Více

Programs and Updates Desktop. Verze 2016.04 (16.04.19.1) Insider Preview Uživatelská příručka

Programs and Updates Desktop. Verze 2016.04 (16.04.19.1) Insider Preview Uživatelská příručka Programs and Updates Desktop Verze 2016.04 (16.04.19.1) Insider Preview KONTAKT ZOBEC Consulting, Renneská třída 393/12, 63900 Brno, Česká Republika www.zobecconsulting.cz obchod@zobec.net Facebook Twitter

Více

Operace nad celými tabulkami

Operace nad celými tabulkami 10 Operace nad celými tabulkami V předchozích kapitolách jsme se převážně zabývali sloupci tabulek. V této kapitole se naučíme provádět některé operace, které ovlivňují tabulky jako celek. Probereme vlastnosti

Více

Průzkum veřejného mínění věcné hodnocení

Průzkum veřejného mínění věcné hodnocení Příloha č. 2 ke Zprávě o posouzení a hodnocení nabídek Průzkum veřejného mínění věcné hodnocení 1. FACTUM INVENIO ad 2. Popis metodiky průzkumu 80 bodů Hodnotící komise posoudila nabídku uchazeče v tomto

Více

Windows 7 kompletní příručka. Bohdan Cafourek. Vydala Grada Publishing a.s. U Průhonu 22, Praha 7 jako svou 4211. publikaci

Windows 7 kompletní příručka. Bohdan Cafourek. Vydala Grada Publishing a.s. U Průhonu 22, Praha 7 jako svou 4211. publikaci Windows 7 kompletní příručka Bohdan Cafourek Vydala Grada Publishing a.s. U Průhonu 22, Praha 7 jako svou 4211. publikaci Odpovědný redaktor Petr Somogyi Sazba Petr Somogyi Počet stran 336 První vydání,

Více

S_5_Spisový a skartační řád

S_5_Spisový a skartační řád Základní škola a mateřská škola Staré Město, okres Frýdek-Místek, příspěvková organizace S_5_Spisový a skartační řád Č.j.:ZS6/2006-3 Účinnost od: 1. 5. 2011 Spisový znak: C19 Skartační znak: S10 Změny:

Více

Koncepce hospodaření s bytovým fondem Městské části Praha 5

Koncepce hospodaření s bytovým fondem Městské části Praha 5 Koncepce hospodaření s bytovým fondem Městské části Praha 5 Záměrem této koncepce je co nejefektivněji a nejúčelněji využít nemovitý majetek MČ P5 (byty a nebyty) a to cestou komplexního přístupu k tomuto

Více

M. Balíková, R. Záhořík, NK ČR 1

M. Balíková, R. Záhořík, NK ČR 1 M. Balíková, R. Záhořík, NK ČR 1 Geolink.nkp.cz Prototyp aplikace obohacení geografických autorit o údaje souřadnic s následným zobrazením dané lokality na mapě - kartografické matematické údaje v záznamech

Více

Podrobný postup pro vygenerování a zaslání Žádosti o podporu a příloh OPR přes Portál farmáře

Podrobný postup pro vygenerování a zaslání Žádosti o podporu a příloh OPR přes Portál farmáře Podrobný postup pro vygenerování a zaslání Žádosti o podporu a příloh OPR přes Portál farmáře 3. a 4. výzva příjmu žádostí Operačního programu Rybářství (2014 2020) V následujícím dokumentu je uveden podrobný

Více

Podrobný postup pro doplnění Žádosti o dotaci prostřednictvím Portálu Farmáře. 1. kolo příjmu žádostí Programu rozvoje venkova (2014 2020)

Podrobný postup pro doplnění Žádosti o dotaci prostřednictvím Portálu Farmáře. 1. kolo příjmu žádostí Programu rozvoje venkova (2014 2020) Podrobný postup pro doplnění Žádosti o dotaci prostřednictvím Portálu Farmáře 1. kolo příjmu žádostí Programu rozvoje venkova (2014 2020) V tomto dokumentu je uveden podrobný postup doplnění Žádosti o

Více

ZADÁVACÍ DOKUMENTACE

ZADÁVACÍ DOKUMENTACE ZADÁVACÍ DOKUMENTACE veřejné zakázky malého rozsahu DODÁVKA TRANSPORTNÍCH VENTILÁTORŮ zadávané mimo režim zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů (dále jen ZVZ ) Zadavatel:

Více

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze.

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze. oolczechguide Mobilní aplikace! O dokumentu Tento dokument popisuje uživatelské rozhraní nativní mobilní aplikace CoolCzechGuide pro operační systémy Android (verze 4 a výše) a ios (verze 7 a výše). Popisuje

Více

Budování aplikačních rozhraní pro obousměrnou komunikaci mezi ERMS a jejich vztah k Národnímu standardu pro komunikaci mezi ERMS.

Budování aplikačních rozhraní pro obousměrnou komunikaci mezi ERMS a jejich vztah k Národnímu standardu pro komunikaci mezi ERMS. Budování aplikačních rozhraní pro obousměrnou komunikaci mezi ERMS a jejich vztah k Národnímu standardu pro komunikaci mezi ERMS. Použité zkratky ERMS ESS i AIS ESS elektronická spisová služba AIS agendový

Více

Tisíce uživatelů v bance pracují lépe díky využití okamžitých informací o stavu kritických systémů

Tisíce uživatelů v bance pracují lépe díky využití okamžitých informací o stavu kritických systémů Tisíce uživatelů v bance pracují lépe díky využití okamžitých informací o stavu kritických systémů Cleverlance dodala Komerční bance systém, který za pomoci nejmodernějších technologií proaktivně pomáhá

Více

Pokyn D - 293. Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

Pokyn D - 293. Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami PŘEVZATO Z MINISTERSTVA FINANCÍ ČESKÉ REPUBLIKY Ministerstvo financí Odbor 39 Č.j.: 39/116 682/2005-393 Referent: Mgr. Lucie Vojáčková, tel. 257 044 157 Ing. Michal Roháček, tel. 257 044 162 Pokyn D -

Více

Informační systém pro rezervaci pokojů hotelu SPORT

Informační systém pro rezervaci pokojů hotelu SPORT VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Informační systém pro rezervaci pokojů hotelu SPORT Programátorská příručka systému Příloha bakalářské práce 2006

Více

Článek 1 Identifikační údaje zadavatele a organizátora. Povodí Odry, státní podnik CZ27149862. www.ecentre.cz

Článek 1 Identifikační údaje zadavatele a organizátora. Povodí Odry, státní podnik CZ27149862. www.ecentre.cz Zadávací dokumentace Povodí Odry, státní podnik Výzva k podání nabídek obsahující současně ZADÁVACÍ DOKUMENTACI k veřejné zakázce zadávané druhem zjednodušeného podlimitního řízení podle zákona č. 137/2006

Více

Online travel solutions s.r.o. YONAD.CZ. Uživatelská příručka. Verze červen 2009

Online travel solutions s.r.o. YONAD.CZ. Uživatelská příručka. Verze červen 2009 Online travel solutions s.r.o. YONAD.CZ Uživatelská příručka Verze červen 2009 OBSAH 1. Úvod 2. Zprávy 3. Nastavení 3.1. Přidat nový typ pokoje 3.2. Editovat či smazat již stávající typ pokoje 3.3. Sezóny

Více

Inovované řešení VDT/VT

Inovované řešení VDT/VT Inovované řešení VDT/VT Spojujeme trhy a příležitosti Inovované řešení pro obchodování na vnitrodenním a vyrovnávacím trhu v ČR, vyvinuté společností OTE, a.s., umožní uživatelům rychlou reakci na aktuální

Více

Registr UJO. Příručka pro uživatele. Institut biostatistiky a analýz. Lékařské a Přírodovědecké fakulty Masarykovy univerzity.

Registr UJO. Příručka pro uživatele. Institut biostatistiky a analýz. Lékařské a Přírodovědecké fakulty Masarykovy univerzity. Registr UJO Příručka pro uživatele Vytvořil: Lékařské a Přírodovědecké fakulty Masarykovy univerzity Obsah Projekt UJO...... 3 On-line klinický registr obecná charakteristika. 4 On-line Registr UJO - základní

Více

Záloha a obnovení Uživatelská příručka

Záloha a obnovení Uživatelská příručka Záloha a obnovení Uživatelská příručka Copyright 2009 Hewlett-Packard Development Company, L.P. Windows je ochranná známka společnosti Microsoft Corporation registrovaná v USA. Informace uvedené v této

Více

Modul Řízení objednávek. www.money.cz

Modul Řízení objednávek. www.money.cz Modul Řízení objednávek www.money.cz 2 Money S5 Řízení objednávek Funkce modulu Obchodní modul Money S5 Řízení objednávek slouží k uskutečnění hromadných akcí s objednávkami, které zajistí dostatečné množství

Více

V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému.

V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému. V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému. MENU Tvorba základního menu Ikona Menu umožňuje vytvořit

Více

Smluvní podmínky (KTv)

Smluvní podmínky (KTv) Smluvní podmínky (KTv) Čl. 1 - Předmět smlouvy 1.1. Dodavatel se zavazuje poskytovat Uživateli časově a datově neomezený přístup k síti Internet a jejím službám (dále jen Služby) prostřednictvím pevného

Více

Pokladní systém pro Tablety a zařízení s OS Android. Analytická dokumentace

Pokladní systém pro Tablety a zařízení s OS Android. Analytická dokumentace Pokladní systém pro Tablety a zařízení s OS Android Analytická dokumentace Vypracoval: Jakub Jenča Ladislav Tyč Jiří Bok Michal Řapek Thai Hai Hoa Jan Maršoun - 1 - Obsah Analytická dokumentace... 1 Procesy

Více

Zabezpečení. Uživatelská příručka

Zabezpečení. Uživatelská příručka Zabezpečení Uživatelská příručka 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íce

PRAVIDLA soutěže COOP DOBRÉ RECEPTY Jarní probuzení

PRAVIDLA soutěže COOP DOBRÉ RECEPTY Jarní probuzení PRAVIDLA soutěže COOP DOBRÉ RECEPTY Jarní probuzení s konáním 1. 4. 2016 30. 6. 2016 v ČR (www.coopdobrerecepty.cz) 1. Organizátor soutěže a soutěžní období Organizátor soutěže, společnost CCV, s.r.o.,

Více

Programový komplet pro evidence provozu jídelny v. 2.55. modul Sklad. 2001 Sviták Bechyně Ladislav Sviták hotline: 608/253 642

Programový komplet pro evidence provozu jídelny v. 2.55. modul Sklad. 2001 Sviták Bechyně Ladislav Sviták hotline: 608/253 642 Programový komplet pro evidence provozu jídelny v. 2.55 modul Sklad 2001 Sviták Bechyně Ladislav Sviták hotline: 608/253 642 Obsah 1 Programový komplet pro evidenci provozu jídelny modul SKLAD...3 1.1

Více

Všeobecné obchodní podmínky Simply Events s.r.o.

Všeobecné obchodní podmínky Simply Events s.r.o. Všeobecné obchodní podmínky Simply Events s.r.o. 1. Vymezení základních pojmů 1.1. Pojmy používané v těchto všeobecných obchodních podmínkách s velkým počátečním písmenem budou mít pro účely těchto všeobecných

Více

DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ

DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ DOTWALKER NAVIGACE PRO NEVIDOMÉ A SLABOZRAKÉ Libor DOUŠEK, Marek SUSČÍK ACE Design, s.r.o., Drážní 7, Brno, oko@acedesign.cz Anotace: DotWalker je aplikace pro usnadnění cestování zrakově hendikepovaných

Více

SMLOUVA O PLNĚNÍ ZÁVAZKU VEŘEJNÉ SLUŽBY OBECNÉHO HOSPODÁŘSKÉHO ZÁJMU

SMLOUVA O PLNĚNÍ ZÁVAZKU VEŘEJNÉ SLUŽBY OBECNÉHO HOSPODÁŘSKÉHO ZÁJMU SMLOUVA O PLNĚNÍ ZÁVAZKU VEŘEJNÉ SLUŽBY OBECNÉHO HOSPODÁŘSKÉHO ZÁJMU Smlouva č.: SMF/3/2016 kterou v souladu s ustanovením 159 a násl. zákona č. 500/2004 Sb., správní řád, ve znění pozdějších předpisů

Více

Přednáška Tablety a chytré telefony. Ing. Michaela Mudrochová Algoritmus individuálního vzdělávání CZ.1.07/3.1.00/50.0078

Přednáška Tablety a chytré telefony. Ing. Michaela Mudrochová Algoritmus individuálního vzdělávání CZ.1.07/3.1.00/50.0078 Přednáška Tablety a chytré telefony Ing. Michaela Mudrochová Algoritmus individuálního vzdělávání CZ.1.07/3.1.00/50.0078 1 Tablety a chytré telefony o o o Nové operační systémy Historie Vývoj současnost

Více

INFORMATIKA pro LÁZEŇSTVÍ. Ing. Petr Janík

INFORMATIKA pro LÁZEŇSTVÍ. Ing. Petr Janík ULGAT/L0015 přednáška č.3 1 1 janik@vosahs.cz konzultační hodiny: středa od 9:45-11:15 (předem napsat email o konkrétním problému, který chcete konzultovat) 24. března 2010 Obsah přednášky 1 Mefisto -

Více

SMLOUVA O POSKYTNUTÍ DOTACE Z ROZPOČTU MĚSTA NÁCHODA

SMLOUVA O POSKYTNUTÍ DOTACE Z ROZPOČTU MĚSTA NÁCHODA SMLOUVA O POSKYTNUTÍ DOTACE Z ROZPOČTU MĚSTA NÁCHODA Smlouva č.: SMF/94/2016 kterou v souladu s ustanovením 159 a násl. zákona č. 500/2004 Sb., správní řád, v platném znění, s ustanovením 10a zákona č.

Více

DOCEAR: POPIS A POROVNÁNÍ SE SYSTÉMY ZOTERO A MENDELEY Jan Hendl

DOCEAR: POPIS A POROVNÁNÍ SE SYSTÉMY ZOTERO A MENDELEY Jan Hendl 16 DOCEAR: POPIS A POROVNÁNÍ SE SYSTÉMY ZOTERO A MENDELEY Jan Hendl Anotace Výzkumník se v mnoha fázích práce neobejde bez důkladné rešerše příslušné literatury. V dnešní době seznam článků na dané téma

Více

modul Jízdy a Kniha jízd uživatelská příručka

modul Jízdy a Kniha jízd uživatelská příručka modul Jízdy a Kniha jízd uživatelská příručka 2 UŽIVATELSKÁ PŘÍRUČKA MODULY JÍZDY A KNIHA JÍZD Moduly Jízdy a Kniha jízd Jak to funguje Jízdy jsou části trasy. Vypočítávají se na základě dat přijatých

Více

Využití mobilních dotykových zařízení (tabletů)

Využití mobilních dotykových zařízení (tabletů) Název projektu: ICT jako nástroj inovace výuky Reg. č. projetku: CZ.1.07/1.3.00/51.0040 Využití mobilních dotykových zařízení (tabletů) ve výuce na SŠ, včetně praktického výcviku Autor: Mgr. Libor Klubal

Více

Zadávací dokumentace pro podlimitní veřejnou zakázku na dodávky

Zadávací dokumentace pro podlimitní veřejnou zakázku na dodávky Zadávací dokumentace pro podlimitní veřejnou zakázku na dodávky Zjednodušené podlimitní řízení Název zakázky: Pořízení úklidového stroje na snížení prašnosti v obci Hvozdná Zadavatel zakázky: Obec Hvozdná

Více

verze 12.2 - Uživatel akceptuje návrh Smlouvy zaslané mu Poskytovatelem, anebo

verze 12.2 - Uživatel akceptuje návrh Smlouvy zaslané mu Poskytovatelem, anebo Všeobecné obchodní podmínky dodávky a užívání ekonomického systému PREMIER system společnosti PREMIER system a.s. sídlem Praha, Uhříněves, Saturnova 1197/1, PSČ 10400 IČ 25820516 zapsané v obchodním rejstříku

Více

Seriál: Management projektů 7. rámcového programu

Seriál: Management projektů 7. rámcového programu Seriál: Management projektů 7. rámcového programu Část 4 Podpis Konsorciální smlouvy V předchozím čísle seriálu o Managementu projektů 7. rámcového programu pro výzkum, vývoj a demonstrace (7.RP) byl popsán

Více

PŘÍLOHA Č. 8A PŘÍLOHA OBLAST INTERVENCE 3.1 A 3.3 K METODICE ZADÁVÁNÍ ZAKÁZEK INTEGROVANÝ OPERAČNÍ PROGRAM,

PŘÍLOHA Č. 8A PŘÍLOHA OBLAST INTERVENCE 3.1 A 3.3 K METODICE ZADÁVÁNÍ ZAKÁZEK INTEGROVANÝ OPERAČNÍ PROGRAM, PŘÍLOHA Č. 8A PŘÍLOHA K METODICE ZADÁVÁNÍ ZAKÁZEK INTEGROVANÝ OPERAČNÍ PROGRAM, OBLAST INTERVENCE 3.1 A 3.3 NÁRODNÍ ORGÁN PRO KOORDINACI ZÁVAZNÉ POSTUPY PRO ZADÁVÁNÍ ZAKÁZEK SPOLUFINANCOVANÝCH ZE ZDROJŮ

Více

Problém obchodního cestujícího s variabilními místy a časy [TMB-TSP]

Problém obchodního cestujícího s variabilními místy a časy [TMB-TSP] Problém obchodního cestujícího s variabilními místy a časy [TMB-TSP] Semestrální práce z předmětu A4M39NUR, semestr 2012/2013 Otakar Chasák (chasaota), Petr Šibík (sibikpet), Martin Svoboda (svobom39)

Více

Obecná ustanovení Rozsah a obsah předmětu plnění

Obecná ustanovení Rozsah a obsah předmětu plnění Smluvní podmínky Obecná ustanovení 1. Společnost Pronajmiauto.cz (Blueway s.r.o.), se sídlem na adrese Praha Staré Město, V Kolkovně 920/5, PSČ 110 00, Praha 1, IČO: 014 17 151, zapsaná v obchodním rejstříku

Více

INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka

INTERNETOVÝ TRH S POHLEDÁVKAMI. Uživatelská příručka INTERNETOVÝ TRH S POHLEDÁVKAMI Uživatelská příručka 1. března 2013 Obsah Registrace... 3 Registrace fyzické osoby... 3 Registrace právnické osoby... 6 Uživatelské role v systému... 8 Přihlášení do systému...

Více

Návod k používání registračního systému ČSLH www.hokejovaregistrace.cz

Návod k používání registračního systému ČSLH www.hokejovaregistrace.cz Návod k používání registračního systému ČSLH www.hokejovaregistrace.cz Osnova Přihlášení do systému Základní obrazovka Správa hráčů Přihlášky hráčů k registraci Žádosti o prodloužení registrace Žádosti

Více

UŽIVATELSKÁ PŘÍRUČKA PRO WEBOVOU KAMERU HP WEBCAM HD

UŽIVATELSKÁ PŘÍRUČKA PRO WEBOVOU KAMERU HP WEBCAM HD UŽIVATELSKÁ PŘÍRUČKA PRO WEBOVOU KAMERU HP WEBCAM HD Copyright 2012 Hewlett-Packard Development Company, L.P. Microsoft, Windows a Windows Vista jsou registrovanými ochrannými známkami společnosti Microsoft

Více

Microsoft Office Project 2003 Úkoly projektu 1. Začátek práce na projektu 1.1 Nastavení data projektu Plánovat od Datum zahájení Datum dokončení

Microsoft Office Project 2003 Úkoly projektu 1. Začátek práce na projektu 1.1 Nastavení data projektu Plánovat od Datum zahájení Datum dokončení 1. Začátek práce na projektu Nejprve je třeba pečlivě promyslet všechny detaily projektu. Pouze bezchybné zadání úkolů a ovládání aplikace nezaručuje úspěch projektu jako takového, proto je přípravná fáze,

Více

IP kamerový systém - uživatelský návod k obsluze

IP kamerový systém - uživatelský návod k obsluze IP kamerový systém - uživatelský návod k obsluze _ Připoj se k nám! Obsah Úvod 2 Přístup do systému 2 Počítač s Windows 2 Prvotní instalace 2 Ovládání kamerového systému na počítači 3 Živý náhled...................................................

Více

Systém elektronického zpracování údajů o výzkumných projektech a jejich hodnocení v GA AV

Systém elektronického zpracování údajů o výzkumných projektech a jejich hodnocení v GA AV Systém elektronického zpracování údajů o výzkumných projektech a jejich hodnocení v GA AV Leoš HORNÍČEK Kancelář AV ČR, Praha hornicek@kav.cas.cz INFORUM 2008: 14. konference o profesionálních informačních

Více

Mobilní reklama ve vyhledávání

Mobilní reklama ve vyhledávání Mobilní reklama ve vyhledávání Mobilní vyhledávání ve světě roste a s ním i možnosti, které poskytují jednotlivé PPC systémy. Co všechno je tedy s mobilní reklamou ve vyhledávání možné? Má pro nás smysl

Více

Všeobecné obchodní podmínky

Všeobecné obchodní podmínky Všeobecné obchodní podmínky dle 1751 an. zákona č. 89/2012 Sb., občanský zákoník (dále jen občanský zákoník ) vydané soukromým podnikatelem Filipem Podstavcem, IČ: 76206611, se sídlem Padolí 171, 549 31

Více

Navigace po budovách FEL (NaFEL)

Navigace po budovách FEL (NaFEL) Abstrakt Navigace po budovách FEL (NaFEL) Aplikace bude sloužit pro navigaci uživatelů po budovách Elektrotechnické fakulty (Dejvice, Karlovo náměstí). Uživatel zadá aktuální polohu v budově (označení

Více

PŘÍLOHA 1.6 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI LOGISTIKA KONCOVÝCH ZAŘÍZENÍ

PŘÍLOHA 1.6 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI LOGISTIKA KONCOVÝCH ZAŘÍZENÍ PŘÍLOHA 1.6 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI LOGISTIKA KONCOVÝCH ZAŘÍZENÍ Obsah 1 Koncová zařízení... 3 2 Charakteristika typů služeb logistika KZ Dodání KZ, Instalace KZ... 3 3 Další

Více

DVR Uživatelský manuál. Uživatelský manuál DVR

DVR Uživatelský manuál. Uživatelský manuál DVR Uživatelský manuál DVR Obsah 1. Obsah balení a instalace pevného disku... 1 1.1 Obsah balení... 1 1.2 Instalace pevného disku (HDD)... 1 1.2.1 Otevření skříně... 1 1.2.2 Demontáž krytu DVR... 2 1.2.3 Upevnění

Více

Výzva k podání nabídek (zadávací dokumentace)

Výzva k podání nabídek (zadávací dokumentace) Výzva k podání nabídek (zadávací dokumentace) 1.Číslo zakázky 2.Název programu: 3.Registrační číslo projektu 4.Název projektu: 5.Název zakázky: Operační program Vzdělání pro konkurenceschopnost CZ.1.07/1.1.07/02.0129

Více

170/2010 Sb. VYHLÁŠKA. ze dne 21. května 2010

170/2010 Sb. VYHLÁŠKA. ze dne 21. května 2010 170/2010 Sb. VYHLÁŠKA ze dne 21. května 2010 o bateriích a akumulátorech a o změně vyhlášky č. 383/2001 Sb., o podrobnostech nakládání s odpady, ve znění pozdějších předpisů Ministerstvo životního prostředí

Více

Obchodní podmínky pro spolupráci se společností Iweol EU s.r.o.

Obchodní podmínky pro spolupráci se společností Iweol EU s.r.o. Obchodní podmínky pro spolupráci se společností Iweol EU s.r.o. 1. ÚVODNÍ USTANOVENÍ 1.1. Tyto obchodní podmínky (dále jen obchodní podmínky ) obchodní společnosti Iweol EU s.r.o., se sídlem Kovářská 140/10,

Více

Úprava notifikací současného školního informačního systému

Úprava notifikací současného školního informačního systému Úprava notifikací současného školního informačního systému Návrh uživatelského rozhranní 2015/2016 Darja Pátková Obsah Úprava notifikací současného školního informačního systému...1 1.Úvod...2 1.1.Dosavadní

Více

K 95-1/2011 V Ostravě dne 30.11.2011 Výtisk č. 1 Počet listů: 2 Přílohy: 2/3. Výzva k podání nabídky veřejná zakázka malého rozsahu

K 95-1/2011 V Ostravě dne 30.11.2011 Výtisk č. 1 Počet listů: 2 Přílohy: 2/3. Výzva k podání nabídky veřejná zakázka malého rozsahu K 95-1/2011 V Ostravě dne 30.11.2011 Výtisk č. 1 Počet listů: 2 Přílohy: 2/3 Výzva k podání nabídky veřejná zakázka malého rozsahu Název veřejné zakázky: Integrace 5 ks vozidlových terminálů do IS HZS

Více

Aplikace počítačů v provozu vozidel 9

Aplikace počítačů v provozu vozidel 9 Aplikace počítačů v provozu vozidel 9 2 Databázové systémy Rozvoj IS je spjatý s rozvojem výpočetní techniky, především počítačů. V počátcích se zpracovávaly velké objemy informací na jednom počítači,

Více

statutární město Děčín podlimitní veřejná zakázka na služby: Tlumočení a překlady dokumentů

statutární město Děčín podlimitní veřejná zakázka na služby: Tlumočení a překlady dokumentů statutární město Děčín Zadávací dokumentace podlimitní veřejná zakázka na služby: Tlumočení a překlady dokumentů vyhlášená v otevřeném řízení dle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění

Více

PŘÍLOHA 1.7 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI PROGRAM ZVYŠOVÁNÍ KVALITY

PŘÍLOHA 1.7 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI PROGRAM ZVYŠOVÁNÍ KVALITY PŘÍLOHA 1.7 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI PROGRAM ZVYŠOVÁNÍ KVALITY (PŘÍSTUP K ŠIROKOPÁSMOVÝM SLUŽBÁM) Obsah 1. ÚČEL PROGRAMU 3 2. UZAVŘENÍ DOHODY O PROGRAMU 3 3. DÍLČÍ ZÁVAZKY V

Více

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java 3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java Studijní cíl V tomto bloku navážeme na konec předchozího bloku a seznámíme se s vývojovými prostředími, které se nejčastěji používají

Více

2N NetSpeaker. IP Audio Systém. Manuál 1.4

2N NetSpeaker. IP Audio Systém. Manuál 1.4 2N NetSpeaker IP Audio Systém Manuál Verze 1.4 www.2n.cz Společnost 2N TELEKOMUNIKACE a.s. je českým výrobcem a dodavatelem telekomunikační techniky. K produktovým řadám, které společnost vyvíjí, patří

Více