Analýza systému Android ve vztahu ke klientské části informačních systémů

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

Download "Analýza systému Android ve vztahu ke klientské části informačních systémů"

Transkript

1 Analýza systému Android ve vztahu ke klientské části informačních systémů Ondřej Berger Univerzita Hradec Králové Fakulta informatiky a managementu KIKM Hradecká 1249/6, Hradec Králové ondrej.berger@uhk.cz Abstrakt: V oblasti mobilních technologií dochází v posledních měsících k poměrně bouřlivému rozvoji. Adaptabilita systému Android na různé druhy zařízení od mobilních telefonů, přes tablety až po subnotebooky mu dává zajímavou možnost ve využití jako platformy pro vývoj mobilního klienta informačních systémů. Tento článek se zabývá analýzou částí, ze kterých lze vytvořit aplikaci pro Android a významu těchto aplikačních komponent ve vztahu pro serverového klienta. Shrnuje jednotlivé části aplikace Android včetně technologií pro řešení výměny dat mezi systémem a klientem, a dává je do vztahu s požadavky na mobilního klienta. Mimo jiné se zabývá i aplikací kontextových informací a jejich využívání klientem. S ohledem na fakt, že Android využívá programovací jazyk Java, je provedeno i srovnání technologických možností s platformou J2ME. Klíčová slova: Android, architektura androidu, klient-server, REST, kontextové informace Abstract: There is a quite massive development in mobile technologies. Relatively new platform Android is becoming an interesting alternative for developing a client application for information systems because of its adaptability to various devices from cell phones to netbooks. Following text targets to analysis how to create a mobile client on Android and Android based application components. Android application parts and other important aspects (like context awarennes) are analysed in way how to use them as parts of mobile client. There is also a small development comparsion with Java Micro Edition because Android uses Java as its programming language. Keywords: Android, android architecture, client-server, REST, context-awarennes 1. Úvod Mobilní technologie v současnosti nabývají na významu. Dostupnost a možnosti mobilních zařízení se rozšiřuj a zároveň se jedná o rychle se rozvíjející prostředí. Jedním z takových mobilních prostředí je i operační systém Android. Právě možnosti této platformy, a její nasazení v různých druzích mobilních zařízení naznačuje, že by mohla být vhodnou alternativou k již zavedeným řešením pro tvorbu klientů informačních systémů. Jedná se tak o možné využití operačního systém Android jako prostředí, ve kterém budou spouštěny aplikace vystupující v roli klientů informačních systémů. Následující text stručně představí platformu Android a její komponenty, které lze použít k tvorbě aplikace. V souvislosti s těmito komponentami budou zároveň nastíněny možnosti těchto komponent k tvorbě aplikace, která bude sloužit jako klient SYSTÉMOVÁ INTEGRACE 4/

2 Ondřej Berger informačního systému. Z tohoto vývojářského pohledu bude provedeno i srovnání s jednou z rozšířených mobilních platforem J2ME. Kromě toho budou představeny i způsoby řešení vzdálené komunikace a také využitelnost kontextu zařízení a jeho aplikace při tvorbě klienta IS. Zjištěné poznatky také budou dány do vztahu při zhodnocení vhodnosti celé platformy jak z hlediska ekonomického, tak zejména technologického. Tento text by měl pomoci při rozhodování, zda o využití systému Android jako prostředí pro realizaci klienta IS vůbec uvažovat a jaké jsou technologické možnosti, které Android jako systém nabízí. 2. Představení systému Android Operační systém Android, někdy nazývaný Google Android (ačkoliv za vývojem stojí celá skupina firem a uskupení, nikoliv pouze Google), je v současnosti jednou z nejdynamičtěji rozvíjejících se platforem oblastí v mobilních technologiích. Tento systém lze nalézt v široké škále zařízení, což dává možnost znovuvyužívat znalosti použité k vývoji klienta v různých situacích a projektech. Klient proto může být nasazen v mobilních telefonech, tabletech, ale též subnoteboocícch či netboocích. Cílové zařízení díky tomu může být zvoleno ideálně ve vztahu k řešené problémové doméně. Možnosti platformy totiž umožňují jednu aplikaci přizpůsobovat jak staticky tak dynamicky různým prostředím. Jednotlivá zařízení lze rozlišovat na základě například velikosti a rozlišení displeje, přítomnosti HW klávesnice apod. Dále se text bude věnovat těmto schopnostem a jejich možnou aplikací při realizaci klienta systému. 2.1 OHA Sdružení Open Handset Aliance sdružuje aktuálně kolem osmi desítek společností a firem, které zaštiťují a podílejí se na vývoji platformy Android. Mezi tyto společnosti patří jak mobilní operátoři (např. Telefónica, T-Mobile), tak softwarové společnosti (Google, ebay), ale i velké množství výrobců polovodičů a čipů (HTC, LG, Broadcom). Kromě těchto spoleností lze v OHA nalézt i společnosti s různými zaměřeními jako ARM či Atheros, kteří kupříkladu vyrábějí procesory nebo síťové karty. 2.2 Historie a verze Dnešní platforma Android začala být vyvíjena již před rokem 2005 ve společnosti Android Inc. V červenci roku 2005 přichází společnosti Google a kupuje celou společnost. V prosinci 2007 vzniká uskupení OHA (Open Handset Aliace), které sdružuje přes 80 společností výrobců hardware, software, mobilních operátorů atd. a zaštiťuje vývoj platfromy. V září 2008 je uvolněn do prodeje první telefon s označením T-Mobile G1 a zároveň je uvolněn Source Development Kit (SDK) - nástroj umožňující vývojářům psát a ladit aplikace pro konkrétní prostředí. Z posledních aktuálních dat společnosti Canalys vyplývá, že podíl trhu, který obsazují chytrá mobilní zařízení se neustále zvětšuje. Android zde zabírá až 35% všech prodaných zařízení. 94 SYSTÉMOVÁ INTEGRACE 4/2011

3 Analýza systému Android ve vztahu ke klientské části informačních systémů Ilustrace 1: Nárust Adnroid zařízení ( V současnosti je systém Android zastoupen v několika verzích, kde majoritní podíly mají verze 2.1, 2.2 a 2.3 a jejich revize. Jedna z nevýhod tohoto systému je právě dynamičnost, která se projevuje relativně častým vydáváním nových verzí systému a tím i jiných API, které vývojáři používají. To je problém, který je třeba řešit zejména u aplikací, které jsou distribuovány pomocí Android Market a cílí na běžné uživatele. Pro účely tohoto textu a řešenou problematiku je cílení platformy v podstatě dáno již při návrhu systému a volbou cílových hardwarových zařízení se tak zjednodušuje. 3. Zařízení se systémem Android Jak bylo zmíněno Android je jako systém koncipován pro širokou skupinu zařízení. Díky své architektuře je možné jej portovat do různých zařízení, která jsou více či méně vhodná pro tvorbu klienta informačních systémů. Jedním ze základních kritériem, které je nutné brát v úvahu je vstup dat a jejich zobrazení. Realizace je sice možná v zásadě ve všech případech, ovšem ergonomie jednotlivých řešení bude různá. Pokud má být klient koncipován nejen pro zobrazování dat, ale i pro zadávání delších vstupů textu, je vhodnější uvažovat zařízení, které disponuje buď hardwarovou klávesnicí, či má možnost ji připojit. Používání softwarových klávesnic je pro opakované vstupy delších textů nepraktické. Z hlediska zobrazování je problém poněkud jiný, uživatelské rozhraní lze do značné míry přizpůsobit (i dynamicky za běhu) pro různé velikosti displeje na různých zařízeních. Zásadní je pouze schopnost uživatele číst menší písmo na menším displeji, případně použít rolování apod. Důležitým kritériem je dále výdrž na baterie a celkové hw zpracování a odolnost zařízení. Pro případy systému, kde pracovník tráví většinu času v terénu je nutné se SYSTÉMOVÁ INTEGRACE 4/

4 Ondřej Berger zaměřit na zařízení, která možná nepřinášejí například extrémně vysoký výpočetní výkon, ale mají odolnější konstrukci a lepší kapacitu akumulátorů. 3.1 Android jako klient Vzhledem k cílení mobilních zařízení jako prostředků komunikace, které má uživatel neustále s sebou, bude následující analýza a představení systému Android zaměřena na využití v klientské části informačních systemů - při tvorbě klientů IS. Bude tak analyzován jako platforma pro mobilní aplikaci, která má za úkol fungovat jako klient IS a která vzdáleně komunikuje se svým serverem. Budou představeny jednotlivé prvky a komponenty, které lze v takové aplikaci použít a včetně toho jaký mají význam pro klienta (též klientskou část) IS. 3.2 Architektura systému Platforma Android staví nad upraveným operačním systémem Linux. Ve své podstatě lze Android označit za nadstavbu, která je přizpůsobena pro provoz v zařízeních, která disponují skromnějšími prostředky než běžné osobní počítače. Jádro operačního systému je odvozeno od verze 2.6. standardního Linuxového jádra. Změny, které v jádru byly vykonány vývojáři Androidu byly z běžné větve jádra odstraněny, a nyní jsou vyvíjeny nezávisle na původní linuxové větvi. Z pohledu architektonických vrstev je systém členěn do několika základních pater. Nad hardware je standardní vrstva HAL (Hardware Abstraction Layer), která sjednocuje rozhraní k různým hardwarovým komponentám, tak aby další vrstvy architektury mohly využívat jednotné API bez nutnosti specializace podle výrobců. HAL je tak velice úzce integrován přímo s jádrem operačního systému. Vyššími vrstvami nad jádrem jsou jednak nativní systémové knihovny, napsané v jazyce C, které řeší výkonostně náročnější činnosti (typicky grafika, databázová vrstva, šifrování) a dále pak Dalvik Virtual Machine (Dalvik VM) běhové prostředí pro aplikace. Dalvik VM je obdobou Javovského virtuální stroje. Poskytuje prostředí pro běh aplikací, které jsou interpretovány ze svého bytecode. Aplikace jsou obdobně jako Java programy spouštěny z balíčků obsahujících aplikační třídy a další zdroje. Ve své podstatě tento bytecode vychází z běžných Java class souborů, ovšem s ohledem na odlišné řešení virtual machine a menší výkonnostní možnosti, prochází úpravami a optimalizacemi ještě před vytvořením aplikačního balíčku. Samotná VM je poté navržena tak, aby zároveň mohlo běžet více jejích instancí, které sdílejí určité prostředky. 3.3 Aplikace v systému Aplikace vytvořená pro Android má poněkud odlišný koncept od běžných stolních Java aplikací, dokonce i aplikací pro mobilní verzi Javy v mobilních prostředích J2ME. Každá aplikace, instalovaná do operačního systému získává v Linuxovém prostředí svého unikátního uživatele (unix user) a unikátní skupinu (user group). Tento princip lze přirovnat k víceuživatelskému prostředí osobních počítačů, kdy se k jednomu 96 SYSTÉMOVÁ INTEGRACE 4/2011

5 Analýza systému Android ve vztahu ke klientské části informačních systémů systému může přihlašovat a pracovat s ním různé množství uživatelů, kteří mají různá práva ke složkám, datům a zařízením. Koncept v Androidu připomíná z tohoto pohledu sandboxovaný model spouštění aplikací. Zde je díky unikátnosti uživatele a skupiny aplikace omezen přístup aplikací do souborového systému (s vyjímkou paměťové karty) pouze do adresáře vyhrazeného příslušné aplikaci. Tohoto je docíleno nastavením unixových práv k adresáři aplikace pouze pro konkrétního uživatele/skupinu. Ostatní uživatelé (=aplikace), do adresáře aplikace přístup nemají a zároveň aplikace nemá přístup nikam jinam. Pouze superuživatel (root), který je v systému díky linuxovému původu také přítomen má práva přistupovat na libovolná místa filesystému a prohlížet/měnit libovolné soubory. Standardně je root přístup povolen pouze v emulátorech, používaných pro vývoj aplikací. K emulátoru je možné se připojit pomocí jednoduchého shellu a pracovat s nimi prakticky stejně jako s jiným linuxovým systémem. Takovýto shell je možné otevřít i do reálného zařízení (například mobilního telefonu), ovšem zde uživatel standardně nemá rootovská práva. (Ta je možné získat pomocí tzv. procesu rootování telefonu, ovšem to je nestandardní zásah do zařízení, který v případě poškození telefonu může být důvodem pro odmítnutí reklamace či opravy. Proto jej dále nebudeme v tomto přehledu uvažovat.) Každá spuštěná aplikace dostane standardně přidělen jeden systémový proces, kterému pak dále odpovídá i jedna instance Dalvik VM. Tedy počet spuštěných aplikací odpovídá počtu běžících VM, které jsou po ukončení procesu aplikace znovupoužity pro nově spouštěné aplikace Skladba aplikace Každá aplikace systému Android se může skládat ze čtyř základních komponent, propojených obecným komunikačním prvkem pro zasílání zpráv. V aplikaci se tak mohou nacházet jednotlivé obrazovky zobrazované uživateli, déleběžící procesy obvykle na pozadí systému, posluchače událostí (zpráv) a také poskytovatelé dat pro okolní aplikace. Následně budou představeny stručně tyto komponenty ve vztahu k funkci, kterou mohou zastávat v klientské aplikaci informačního systému. Tedy jakou úlohu mohou sehrát při tvorbě klienta IS. Mimo vlastních komponent a tříd může aplikace samozřejmě využívat i systémové komponenty například mechanismus pro plánované spouštění činnosti (třída AlarmManager), často využívanou lištu pro zobrazování upozornění (NotificationManager) a mnohé další, jejichž přehled lze nalézt v dokumentaci. 3.4 Komunikace komponent Intent Výše zmíněný prostředek platformy pro zasílání zpráv reprezentuje tzv. záměr třída Intent. Tento záměr reprezentuje obecnou akci, která má být vykonána. Pomocí intentů se jednak spouštějí nové obrazovky aktivity (viz dále), služby, ale i kupříkladu volají externí aplikace. Součástí každého intentu je akce tedy označení toho co se má provést (zobrazení dat, výběr položky, úprava atp.) a data nad kterými má být akce provedena. Data jsou reprezentována pomocí URI jedinečného identifikátoru, který má podobný formát jako webová adresa. SYSTÉMOVÁ INTEGRACE 4/

6 Ondřej Berger Tedy například zobrazení seznamu kontaktů v telefonu reprezentuje intent s akcí view a daty content://people. Zde se projevuje i jeden klíčových prvků platformy a to využívání již existujících komponent bez nutnosti psaní vlastních. Pro výše uvedený příklad výběru kontaktu tak není třeba tvořit kód, který načte kontakty z úložiště, zobrazí je a zpracuje výběr. Na základě do systému odeslaného intentu systém sám vybere komponentu, která činnost zrealizuje (včetně případného navrácení výsledku). Tím se značně zjednodušuje návrh aplikace protože je možné využívat již vytvořené komponenty. Takto fungují všechny nepřímé záměry například k prohlížení webu Univerzity Hradec Králové bude třeba vytvořit intent view s daty Systém vybere všechny komponenty, které jsou registrovány na obsluhu daného intentu na základě jak kombinace akce a dat. Pokud je nalezeno více možných obsluh, je uživateli dáno na výběr, kterou chce použít (například výběr z více webových prohlížečů). Kromě nepřímých intentů, existují i intenty přímé. Ty se využívají zejména uvnitř aplikace samotné například pro spouštění obrazovek či služeb. Zde je intent vytvořen nikoliv na základě akce a dat, ale na základě jména Java třídy, která má být spuštěna. Protože intenty představují komunikační prvek, je nezbytné, aby přenášely i data. Na vždy je ovšem pro vyjádření dat dostačující URI, proto každý intent může nést tzv. extra hodnoty, které dále upřesňují povahu záměru a doplňují informace. Tyto extra hodnoty jsou reprezentovány pomocí hodnotové mapy, tedy dvojic klíč-hodnota. Třída Bundle (hodnotová mapa) umožňuje přenášet v zásadě pouze primitivní datové typy (čísla, řetězce,logické hodnoty). Je sice možné přenášet i hodnoty, které jsou serializovatelné (Java třídy implementující rozhraní Serializable), ovšem není vhodné pomocí intentů přenášet větší objemy dat zejména kvůli rychlosti zpracování. [1] 3.5 Aktivity Aktivita je v pojetí Androidu jedna aplikační obrazovka zobrazená uživateli. Je tedy jedním z klíčových prvků klientské části, protože uživatel se systémem potřebuje komunikovat, číst a zadávat data. Jednotlivé aktivity aplikace jsou na sobě do značné míry nezávislé, ačkoliv se samozřejmě v aplikaci řadí do určitého toku a pořadí, když uživatel mezi nimi přechází. Ovšem je třeba počítat i s možností vyvolání aktivity bez návazností. Například uživatel opustí aplikaci a vrátí se na domovskou obrazovku. Pokud se pak zase navrátí do aplikace, je v případě že nebyla uvolněna z paměti, spuštěna aktivita, kterou měl zobrazenu jako poslední. S tímto je třeba počítat a celý návrh uzpůsobit řešení obrazovek, které fungují v maximální míře samostatně, bez závislosti na ostatních obrazovkách. Řešení při vracení do aplikace je již systémem nastaveno tak, aby si aktivita pamatovala poslední stav (pokud nebyla uvolněna z paměti). Samozřejmě nelze realizovat úplnou nezávislost aktivit často závisejí například na datech z jiné aktivity, ovšem minimalizací předávaných dat mezi aktivitami a zapouzdřeností lze vytvořit robustní a stabilní aplikaci. Pokud se týká grafických komponent, které lze umístit do aktivit, pak zahrnují v zásadě všechny prvky známé z webu či desktopových aplikací. Lze tedy zobrazovat textové popisky, vstupní pole, výběrové seznamy, seznamy prvků, různé dialogy pro upozornění, či například čekání pro dokončení operace), obrázky a fotografie atp. Z tohoto pohledu je tedy Android standardní prostředí, které má všechny nezbytné 98 SYSTÉMOVÁ INTEGRACE 4/2011

7 Analýza systému Android ve vztahu ke klientské části informačních systémů součásti. Jediným limitujícím faktorem je velikost a rozlišení displeje, kdy je třeba design aplikace přizpůsobit menšímu rozlišení a velikosti. V případě, že je nezbytné provozovat jednu aplikaci na různých zařízeních, například s různými rozlišeními obrazovky či orientacemi, je možné toho snadno docílit pomocí striktní separace vzhledu od chování. Vzhledy obrazovek jsou obvykle popsány v externích XML souborech. Tyto definice jsou umístěny v adresářích, které pokud dodržují jmenné konvence systému jsou automaticky vybrány na základě hardwarové konfigurace zařízení. Vzhledy je možné odladit přesně pro dané zařízení a jeho obrazovku. Stejně tak funguje i systém při například otočení zařízení na šířku. 3.6 Služby Mimo obrazovky jsou jedněmi z důležitých částí aplikací komponenty pro vykonávání práce na pozadí. V Androidu jsou to komponenty služeb. Zde je třeba zmínit, že služby ačkoliv nemají viditelné GUI, běží ve stejném procesu a také stejném vlákně jako aktivity a zbytek aplikace. Standardně tak nevytvářejí nové vlákno a jejich volání (kupříkladu dlouhotrvající stahování dat či náročný výpočet) blokuje i uživatelské rozhraní pokud není nové vlákno explicitně vytvořeno. Služby mohou být použity k tomu, aby byly například periodicky spouštěny jednou za daný čas a prováděly synchronizace, stahování apod. v časech kdy aplikace není v popředí. Samozřejmě nelze vyloučit, že služba poběží zároveň s GUI aplikace, a proto by pro veškeré blokující operace měla služba vytvářet nové vlákno (například běžný javovský Thread) a synchronizační třídu Handler. Ta slouží k synchronizovanému informování vláken o událostech a výměně menších datových objemů a zpráv mezi vlákny. Jeden typický scénář použití služeb je kontrola nových ových zpráv jednou za 30minut. Pomocí systémové komponenty AlarmManager lze vyžádat zaslání intentu za daný časový interval. Na tento intent lze registrovat službu. Ta vytvoří nové vlákno a předá mu synchronizační handler. Vlákno stáhne nové zprávy a pošle data handlerem službě. Služba zkontroluje nové zprávy a kupříkladu zobrazí notifikaci do systémové lišty pro uživatele. Z tohoto pohledu je tedy služba ideální pro činnosti, které nevyžadují zásah uživatele (synchronizace dat) a mohou probíhat bez jeho vědomí. Zároveň je umožněno aby uživatel byl informován například o nových událostech, problémech které nastaly atd. pomocí standardního notifikačního mechanismu. 3.7 Příjemci událostí V některých případech je třeba vhodné klientem pouze reagovat na určité události. K tomuto slouží příjemci událostí (broadcast receivers). Jedná se o jednoduché, úzce specializované komponenty, které jsou zcela pasivní než dojde k události - intentu, na který čekaji. Možnosti těchto posluchačů jsou v porovnání s ostatními komponentami omezené. Obdobně jako služby nemají žádné GUI, a nemohou například vytvořit nové vlákno. Ovšem není problém z nich spustit novou službu, či dokonce aktivitu, které již mají možnosti daleko širší. SYSTÉMOVÁ INTEGRACE 4/

8 Ondřej Berger 3.8 Poskytovatelé obsahu Poslední systémovou komponentou jsou tzv. poskytovatelé obsahu (content croviders). Ti jsou určeni ke sdílení dat mezi jednotlivými aplikacemi v celém systému. Poskytují standardizované rozhraní pro přístup k různým zdrojům. Ve zjednodušené podobě se dá říci, že je takto možné sdílet různé entity zpracované pomocí obdobných nástrojů jako nabízí relační databáze. Jak tvorba, tak využívání content providers se v mnoha ohledech (viz [2] třída ContentProvider) podobá práci s relační databází. Proto jsou často poskytovatelé obsahu tvořeni jako další vrstva přímo nad SQLite relační databází. Při návrhu klienta informačního systému mohou tyto komponenty sloužit k vytvoření datové vrstvy v aplikaci (například pro lokální ukládání dat), případně lze pomocí nich realizovat připojování do zbytku systému. Míra abstrakce je zde poměrně vysoko, a vytvoření content provider se v zásadě omezuje na implementaci příslušného rozhraní. Toto rozhraní umožňuje vkládat data, načítat mazat a dotazovat se na ně. Implementační záležitosti zda se například ukládaná data serializují do souboru, či ukládají do databáze, nebo dokonce odesílají přes síť na server zde z hlediska použití nejsou až tak podstatné. Kromě využívání poskytovatelů ve vlastní aplikaci je také možné je nabízet i ostatním aplikacím. Poskytovatel se do systému registruje pomocí unikátní URI, pod kterou je dostupný a poté je možné jej využívat jak z aplikace vlastní, tak cizí. Samozřejmě je možné nastavovat různé úrovně přístupu a oprávnění k provádění operací. Tento mechanismus je použitelný k vytvoření modulárního klienta, který se skládá z více samostatných aplikací, které sdílejí společný datový zdroj content provider. Správa dat tak může být centralizována a nezasahuje do jiných aplikací, což umožňuje jednodušší vývoj a údržbu takovéto sady aplikací. 4. Srovnání s J2ME Vzhledem k faktu, že syntaxe programovacího jazyka Android vychází z Javy, nabízí se zde srovnání této platformy z pohledu možností a syntaxe, kterou se Android od Javy liší. Protože se pohybujeme v oblasti mobilních technologií, je vhodné toto srovnání provést nad mobilní verzí Javy, tzv. Java Micro Edition (J2ME). Java Micro Edition, jak již její název napovídá, je určena pro vývoj aplikací do miniaturních zařízení, kterými jsou například čipové karty, mobilní telefony či přenosné digitální asistenty PDA. Na základě cílového zařízení (karta, telefon, PDA), se J2ME člení na tzv. konfigurace. Pokud pomineme oblast čipových karet zůstávají dvě základní konfigurace. První z nich Connection Limited Device Configuration (CLDC), je určena do zařízení, která obvykle nedisponují trvalým přístupem k datové síti. V současné době se jedná o velice rozšířené prostředí, které lze nalézt ve většině běžných mobilních telefonů. V závislosti na konkrétním modelu se tato konfigurace vyskytuje doplněná o svůj profil MIDP (nejčastěji ve verzi 2.0 či 2.1) a různé konfigurace volitelných balíčků, které možnosti platformy dále rozšiřují. Tato rozšíření se týkají jak podpory hardware (Bluetooth, GPS apod.), tak i různých technologií (SOAP webové služby, multimédia, šifrování). 100 SYSTÉMOVÁ INTEGRACE 4/2011

9 Analýza systému Android ve vztahu ke klientské části informačních systémů Druhá konfigurace - Conected Device Configuration (CDC) se nachází povětšinou v zabudovaných zařízeních, jako síťové tiskárny, routery apod., a dále pak ve výkonných mobilních zařízeních PDA či Smartphones. Obecně je tato konfigurace charakteristická trvalým připojením do datové sítě a vyšším výkonem. Svými možnostmi se již blíží standardní Javě v edici SE verze Vzhledem k faktu, že častěji dostupná je konfigurace CLDC, bude srovnání s Androidem provedeno právě proti CLDC verzi 1.1 a profilu MIDP Primitivní datové typy Z pohledu možností a primitivních datových typů v obou systémech není v podstatě žádný rozdíl a nabízejí stejnou množinu datových typů, která vychází z platformy Java. Jediný rozdíl byl existoval v konfiguraci J2ME CLDC 1.0, kde není k dispozici číselný typ s plovoucí desetinnou čárkou float Kolekce a mapy Z hlediska vývoje (ať už klienta IS či libovolné jiné aplikace) je velice často používaným prvkem jazyka kolekce. Tedy soubor prvků či objektů sdružovaných v rámci jiného objektu. V prostředí J2ME jsou kolekce značně ochuzeny, zastoupena je zde pouze jediná třída z Collection frameworku (CF) a to Vector, který představuje řazený seznam prvků, interně ukládaných v poli. V případě Androidu je již od prvních verzí zastoupena daleko větší část CF a k dispozici jsou jednak obecná rozhraní pro kolekce (java.util.collection), množiny (Set) či seznamy (List), tak jejich různé implementace (HashSet, ArrayList, LinkedList atd). Z tohoto pohledu je na tom tedy Android lépe, je možné využít konkrétní vhodnou implementaci pro různé potřeby práce s kolekcí. Někdy je vhodné používat například ArrayList pro pouze vkládání a čtení prvků, na druhou stranu, je-li třeba například měnit pořadí prvků, bude efektivnější LinkedList. Ten není backendován polem, ale mezi prvky jsou udržovány reference na další a předchozí prvek. Obdobná je situace i u asociativní polí map. V případě J2ME je k dispozici pouze třída Hashtable, která je v podstatě mapou. U Androidu je opět celá škála různých implementací rozhraní java.util.map, které mají různá specializovaná využití opět dle interního řešení dané třídy Generické datové typy a syntaxe S ohledem na to, že Android využívá syntaxi jazyka od verze 1.5 (5.0), je zde možné využívat tzv. generické datové typy. Typickým případem využití generik je typizování hodnot v kolekci. Pokud uvážíme prostředí Javy 1.4 a nižší, je možné do kolekce (v případě J2ME tedy do třídy Vector) vkládat libovolné objekty. Ovšem nejčastěji kolecke obsahuje pouze objekty jedné třídy (případně objekty tříd dědících od společného předka). Lze tedy takto deklarovat typovost: List<User> userlist = userservice.getallusers(); SYSTÉMOVÁ INTEGRACE 4/

10 Ondřej Berger Tím je již při překladu zajištěna typovost objektů kolekce a v případě nekompatibility návratové hodnoty a typu proměnné dojde k chybě již při překladu. Zatímco v J2ME je povolená konstrukce pouze: Vector userlist = userservice.getallusers(); Je tak možné, že například chybou budou metoda vracet objekty jiné třídy než očekáváme dále v kódu. Z tohoto pohledu je tedy přítomnost generických typů v Androidu výhodou i z hlediska tvorby API komunikujícího s nějakým systémem. Je možné jasně definovat jak na serveru, tak v klientu přesné rozhraní a eliminovat tak část možných chyb Bytecode V souvislosti se syntaktickými rozdíly mezi verzemi Javy 1.4 a 5.0 se samozřejmě liší i verze překládaných souborů obsahujících bytecode pro VM. Ovšem v případě Androidu slouží tyto class soubory pouze jako mezistupeň, protože jsou dále překládány do formátu dex, který využívá Dalvik VM. Tyto dex soubory oproti původním Java class souborům procházejí procesem optimalizací a úprav pro virtuální stroj Dalvik. 4.2 Konektivita Důležitým prvkem pro spojení mobilního klienta se zbytkem systému je přítomnost řešení pro komunikaci. Jedná se nejprve o řešení na fyzické úrovni, tedy vhodná, nejčastěji bezdrátová komunikace s datovou sítí. Pokud uvažujeme rozšíření systému Android v různých zařízeních, je často přítomno připojení přes mobilní sítě (GSM/EDGE, 3G), které má v závislosti na operátorovi různé úrovně pokrytí a kvality služeb, tak i připojení přes poměrně rozšířené bezdrátové sítě Wi-Fi. Ty sice zdaleka nemají pokrytí jako mobilní sítě, ovšem i tak lze nalézt širokou řadu bezplatných přípojných míst (hotspotů). Pro zhodnocení systému Android ovšem není třeba zabývat se technologickým řešením komunikace v zásadě stačí rozlišovat pouze stavy připojen a odpojen od datové sítě bez ohledu na technologii připojení. V bližším pohledu je třeba samozřejmě druh připojení uvažovat a to zejména z hlediska přenosové rychlosti. Při návrhu je třeba vždy počítat s horším scénářem v podobě pomalého připojení a eventuelně i ztráty připojení v průběhu komunikace. Hledisko rychlosti lze řešit zejména pomocí minimalizace přenášených dat (pouze nezbytná data, komprese, postupné přenášení až v případě potřeby atp.) a volbou vhodného formátu. Je vhodnější zde upřednostnit binární protokoly, které minimalizují přenášená režijní data. Naproti tomu XML-based formáty bývají obecně náročnější na přenášená data a také i rychlost zpracování. Zajímavou alternativou komunikace může být architektonický návrh REST. Representational State Transfer je řešení založené ve většině případů na již existujících technologiích. Tato architektura obecně pracuje se zdroji, a 4 základními operacemi. Pojem zdroje je velice obecný, v zásadě jím může být cokoliv, od entity (kniha v knihovně) až po stav systému (například teplota v místnosti). Každý zdroj má svoji adresu, a lze s ním provést pouze 4 základní operace v podobě vytvoření, změny, získání a smazání (viz kap.5 v [3]). Pro tyto operace je třeba zdroj vyjádřit ve formě vhodné reprezentace, což je poslední základní pojem z REST architektury. 102 SYSTÉMOVÁ INTEGRACE 4/2011

11 Analýza systému Android ve vztahu ke klientské části informačních systémů Reprezentace je vyjádření zdroje, například entita knihy popsaná pomocí informací ve formátu XML. Ovšem jeden zdroj může mít více reprezentací, takže u zmíněné knihy může být dále i obrázková reprezentace představující obálku ve formátu JPG. Z detailního pohledu na REST architekturu vyplývá, že nabízí vhodné řešení pro tvorbu komunikačního rozhraní pro mobilní klienty. Architektura se velice často zakládá na http protokolu, který nabízí řešení pro všechny základní pojmy adresaci z zdroje v podobě URL, operace se zdrojem v podobě metod http (GET, POST, PUT, DELETE) a přenos různých reprezentací. Přínosnější tuto architekturu dělá skutečnost, že REST rozhraní nemusí být nutně orientováno pouze na mobilní klienty, ale lze je využít jako obecné rozhraní pro komunikaci dalších (i nemobilních) klientů a systémů. Při zachování stejných operací a zdrojů, lze například pro klienty v podobě PC přinášet XML reprezentaci, pro mobilní klienty například úspornější Hessian či JSON. Pokud jde o podporu protokolu http, je z hlediska realizace možné využívat podmnožinu API, kterou poskytuje knihovna Apache Http Client a která je částí API platformy Androd. Toto API umožňuje práci s http protokolem a spojeními Datové formáty Nad vrstvou spojení http je možné realizovat různé metody dotazů a předávání dat. V případě metod posílajících data (PUT, POST) jsou data i v odchozím požadavku zasílaném na server. Příchozí data jsou potom obvykle součástí příchozí zprávy, odkud se dají získat obdržet jako stream. Formát, ve kterém jsou data v entitě zapouzdřena může být v zásadě libovolný a je nutné jej správně zpracovat. XML Častý datový formát využívaný v prostředí sítí a Internetu je XML. Tento značkovací jazyk má široké možnosti v oblasti vyjádření různých dat. V systému Android jsou k dispozici různé způsoby zpracování XML souborů: SAX Simple API for XML, je založeno na sekvenčním procházení dokumentu a zpracování událostí na jednotlivých elementech. Pull XML parser obdobné předchozímu SAXu, ovšem události jsou vyvolávány parsovacím mechanismem. DOM Document Object Model je založen na načtení celého XML do paměti a vytvoření objektové reprezentace celého stromu. Jednotlivé přístupy pro parsování XML mají své výhody a nevýhody. První dva jsou poněkud náročnější na algoritmizaci, ovšem mají daleko nižší paměťové nároky a jsou v porovnání s DOM modelem rychlejší. Na druhou stranu DOM má přímočařejší API a snažší zpracování, ovšem daní za to je velikost zabrané paměti. To v prostředí mobilních zařízení představuje zásadní nevýhodu. JSON Oproti XML existuje jednoduchý formát JSON Java Script Object Notation, který má široké využití v oblasti webových technologií. Jedná se o textový formát, který umožňuje přenášet i komplexní datové struktury obdobně jako XML, ovšem s nižšími nároky jak na velikost přenášených dat, tak i paměťového zpracování. Jeho nevýhodou je nemožnost serializovat grafy, tj. cyklické závislosti mezi objekty, kdy se SYSTÉMOVÁ INTEGRACE 4/

12 Ondřej Berger objekty navzájem odkazují. Lze serializovat pouze strom, tedy závislost ve smyslu kdy objekt obsahuje jiné objekty. [4] V systému Android je přítomen port referenční knihovny JSON, který umožňuje zpracovávat příchozí data i data do formátu JSON naopak serializovat (například pro odchozí zprávy do systému). S ohledem na svoje vlastnosti představuje JSON vhodný transportní formát pro přenos dat mezi klientem a systémem. Hessian Protokol Hessian od společnosti Caucho je binární alternativou k výše uvedeným protokolům. Hessian lze použít pro serializaci dat, ovšem primárně je navržen jako kompletní protokol pro RPC volání mezi různými platformami. Nabízí řešení vystavení metod na serveru a jejich volání klientem. Ovšem kupříkladu pro REST architektury jej lze použít čistě pro binární serializaci, kdy se nevyužívá část pro řízení RPC, ale pouze binární datová reprezentace Webové služby Komplexní řešení komunikace představují webové služby. V prostředí systému Android neexistuje standardně dostupná implementace tohoto standardu, jak ji definuje například JSR-172 pro Java Micro Edition. Používaný je proto neoficiální port knihovny ksoap2 [5] do prostředí Android. Portování této knihovny bylo dle dokumentace v zásadě vytvořením implementace transportní třídy ostatní třídy jsou díky značné kompatibilitě mezi prostředím J2ME a Androidu pouze minimálně upraveny. Proto princip práce s touto knihovnou zůstává stejný a relativně složitý, a je nastíněn například v [6]. 5. Využívání kontextu Kromě jednotlivých komunikačních řešení, je v současnosti aktuální využívání tzv. kontextových informací. Následující část text přiblíží tyto údaje a způsob jejich zpracování na platformě Android. 5.1 Kontext Žádná akce v našem prostředí se neodehrává ve vzduchoprázdnu, vždy se vyskytují okolnosti, které se na průběhu činnosti mohou podílet. Díky tomu se kolem každé akce vyskytuje velké možství dat a údajů, které mohou být využity nejen k zaznamenání či zobrazení, ale i k hlubší podpoře aktérů. Tyto okolní skutečnosti lze popsat pojmem kontext. Kontext tak můžeme definovat jako množinu faktů a okolností, které obklopují událost či situaci (z [7]). Z této definice mj. vyplývá i to, že pojem kontext je velice obecná záležitost, kterou lze vztáhnout na mnoho oblastí lidské činnosti včetně lingvistiky, historie ale také třeba medicíny. Pojem kontextu v IT definuje již několik autorů, např. Dey a Abowd ([8]) kontext popisují jako informaci použitelnou k charakterizaci situace entity (místa, osoby), jež je považována za důležitou ve vztahu mezi uživatelem a aplikací. Pro potřeby dalšího textu tato definice poskytuje podstatnou myšlenku a to je vztah mezi informací a 104 SYSTÉMOVÁ INTEGRACE 4/2011

13 Analýza systému Android ve vztahu ke klientské části informačních systémů činností. Podobně pak kontext definují i další autoři, Chen a Kotz kontext popisují jako množinu stavů prostředí, které podmiňují chování aplikace nebo ve kterém se odehrává aplikační událost, a jenž jsou zajímavé pro uživatele ([9]). Shrnutím předchozích definic a aplikací do mobilních technologií dostáváme stav, kdy aplikace využívá senzory zařízení, na kterém je spuštěna a zaznamenává a využívá tyto údaje ke své činnosti. Tento způsob ovlivnění aplikace v závislosti na údajích okolí se v angličtině nazývá context-awarennes - povědomí o kontextu Poloha Bezesporu jedním z kontextových údajů, který nachází široké využití je poloha. Aplikace využívající polohu klienta se zahrnují do skupiny tzv. Location Based Services - služby založené na poloze. Toho se nechá využívat například při navigování uživatele k cíli cesty nebo pro informování o blízkých zájmových objektech u klienta IS pro obchodního cestujícího to mohou být zákazníci, které má navštívit apod. Ve většině zařízení platformy Android je možné polohu ze senzoru obdržet. V praxi se využívají dvě metody - zaměření podle GSM sítě a zaměření podle signálu GPS.Obecně platí, že si aplikace od systému vyžádá poskytovatele polohy (službou LocationManager) a tohoto poskytovatele pak požádá o polohu, která je reprezentována třídou Location. Podle poskytovatele polohy se samozřejmě liší i přesnost poskytované polohy a tím i využití pro různé aplikace. V případě signálu GPS lze dosáhnout přesnosti řádově jednotek metrů, zatímco zaměření přes GSM sítě může mít chybu v řádech kilometrů. U získávání polohy lze postupovat několika způsoby lze vyžádat poslední známou polohu od příslušného poskytovatele, případně požádat poskytovatele aby v určitých definovaných podmínkách informoval aplikaci o změně polohy. Tato notifikace může být založena buď na změně o určitou vzdálenost v metrech, případně po uplynutí časového intervalu. K tomuto účelu slouží rozhraní LocationListener, které umožňuje obsluhu změn polohy. Případně lze využívat tzv. ProximityAlert, který slouží k upozornění v případě přiblížení se k definovaným souřadnicím. Výše uvedené způsoby využití polohy mohou najít uplatnění v aplikacích, které vyžadují práci v terénu. Například servisní technici, kteří vyjíždějí ze základny k zásahu mohou mít klientskou aplikaci, která z informačního systému obdrží kromě informací o zásahu (druh práce, priorita apod.) i polohu, kterou spolu může klient IS využít k navigování na místo zásahu Orientace zařízení v prostoru Spolu s polohou je v některých aplikacích LBS například v tzv. augmented reality, nutné zjistit kromě polohy i orientaci zařízení v prostoru tedy náklon v prostorových osách a orientaci dle světových stran. V systému Android existuje obecná reprezentace senzorových dat, s obdobným způsobem jako u polohy je zde systémová služba SensorManager, která poskytuje přístup k různým senzorům, kterými zařízení disponuje. Je tedy možné pracovat jak s elektromagnetickým kompasem, který určuje orientaci dle světových stran, tak i gyroskop a akcelerometr, které poskytují informace SYSTÉMOVÁ INTEGRACE 4/

14 Ondřej Berger o náklonu, případně zrychlení v jednotlivých osách. Údaje přímo v surové podobě ze senzorů lze získat pomocí třídy Sensor, vyžádané ze SensorManageru Obraz kamery Jedním z důležitých okolních kontextů lze spatřit ve vizuálním obrazu okolí získaném prostřednictvím kamery/fotoaparátu. V současnosti je ovšem strojové zpracování obrazu ve smyslu rozpoznání a identifikování objektů stále v plenkách, jak v mobilních zařízeních tak i běžných počítačích. Mimo oblast rozpoznávání scény má obraz kamery v současnosti velice vhodné využití jako plátno do kterého se promítají dodatečné informace, tzv. augmented reality. V tomto využití je pouze snímán obraz kamery a před zobrazením uživateli na displeji je do obrazu na základě údajů z dalších senzorů (poloha a orientace) a vhodných databází zapracována vrstva dodatečných informací. Ve zmiňovaném případě servisního zásahu je tak možné do obrazu z kamery zakomponovat detaily o plánované činnosti a umožnit tak rychlou orientaci v terénu. 6. Zhodnocení Tento text byl zaměřen na rozebrání platformy na jednotlivé části a jejich zhodnocení a možné využití při vývoji mobilní klientské části IS. K tomu je třeba zhodnotit nejen technické, ale také ekonomické aspekty platformy a uvést je do souvislosti s požadavky na klienta. 6.1 Ekonomické aspekty Při ekonomickém hodnocení platformy je jedním z klíčových poznatků fakt, že celá platforma je postavená jako opensource. Tedy je k ní k dispozici zdrojový kód, a je možné jej využívat. Dále existuje referenční dokumentace ([2]) a poměrně bohaté materiály ve formě diskuzních fór a článků, které umožňují efektivní řešení problémů při vývoji. Dalším nezanedbatelným aspektem je fakt, že na rozdíl od jiných mobilních platforem není Android při vývoji vázán na konkrétní operační systém (vývojové prostředí je dostupné pro všechny majoritní platformy Linux, Mac i Windows) a nástroje spolu s SDK (Software Development Kit) jsou k dispozici zdarma a staví na zdarma dostupných a kvalitních produktech jako je například platforma Eclipse. 6.2 Technologické aspekty Platforma nabízí moderní API stavící na základu jazyka Java, včetně generických typů, známých od verze JSE 5.0. Z technologické hlediska řešení systému je pak neméně důležitá komunikace klienta a serveru, což je nutné pokládat za klíčovou funkcionalitu. V Androidu je zastoupena implementace protokolu HTTP, který je využíván jako časté transportní řešení, nad kterým je možné využívat různé datové formáty. S využitím vhodných knihoven je možné komunikovat se SOAP webovými službami, či využívat REST rozhraní, které umožňuje realizovat úspornější komunikaci například v datových formátech a protokolech Hessian či JSON. Kromě komunikace, která je sice důležitým prvkem,ale ne jediným, je dále možné navrhovat grafická rozhraní aplikace přesně na míru cílovým zařízením. Toho je 106 SYSTÉMOVÁ INTEGRACE 4/2011

15 Analýza systému Android ve vztahu ke klientské části informačních systémů možné docílit oddělením vzhledu aplikace od kódu a zároveň přitom zanechat přenositelnost mezi různým hardware. Knihovna rozhraní umožňuje používat širokou škálu prvků a komponent, které postačují k vytvoření funkční i přehledné aplikace pro různé účely. Po designu a komunikaci, jsou další systémové komponenty již volitelné ve smyslu, že záleží na konkrétní problematické doméně, zda budou využity, či nikoliv. Jedná se třídy a prvky, které umožňují klientské aplikaci reagovat na různé události a kontexty (přístup k síti, stav baterie, senzory, poloha) a zpracovávat jejich změny. Stejně tak další komponenty, služby, které umožňují provádět operace na pozadí, během jiné činnosti uživatele, mohou ale nemusí být využívány. S nimi je možné realizovat častou funkcionalitu automatických synchronizací dat, práce na pozadí aplikace/systému či automatických aktualizací bez nutnosti zásahu uživatele. Z pohledu technologií tak představuje Android v mobilní oblasti prostředí, ve kterém je možné realizovat v zásadě libovolný záměr při mobilním vývoji. 7. Závěr Článek představuje možnosti platformy Android a jednotlivé poznatky při využití této platformy pro vývoj klienta informačních systémů. Jedná se o jednu z rychle se vyvíjejících se platforem, která je cílena na různé druhy mobilních zařízení od mobilních telefonů a tabletů až po netbooky. Tato rozmanitost nabízí využít klientskou aplikaci v různých prostředích na základě požadavků a přitom využívat již jednou nabyté znalosti a zkušenosti při vývoji dalších aplikací. V textu je představena platforma a její jednotlivé možnosti ve vztahu při tvorbě informačního systému. Z jednotlivých komponent, které jsou použitelné v tvorbě klientských aplikací vyplývá, že pokrývají většinu požadavků, které jsou na aplikace kladeny. Od různých forem zobrazení, až po řešení periodicky volaných činností, zpracování úloh na pozadí či využívání senzorů a kontextových informací. Ze závěrečného srovnání vyplývá, že Android jako platforma je novou alternativou pro vývoj mobilního klienta. Nástroje a dokumentace jsou k dispozici zdarma a existuje poměrně široká, dále se rozrůstající vývojářská komunita. To z Androidu činí konkurenci k existujícím platformám a přináší i nezanedbatelnou výhodu při samotné realizaci aplikace. Zdroje [1] Android Developers [online] [cit ]. Intent's Extra transfer. Dostupné z WWW: < [2] Android [online] [cit ]. Android Reference Documentation. Dostupné z WWW: < [3] FIELDING, R.: Architectural Styles and the Design of Network-based Software Architectures. [s.l.], s. Dizertační práce. Dostupný z WWW: < [4] Caucho Technology [online] [cit ]. Metaprotocol Taxonomy. Dostupné z WWW: < SYSTÉMOVÁ INTEGRACE 4/

16 Ondřej Berger [5] KSOAP2 [online]. 2006, [cit ]. Dostupný z WWW: < [6] BERGER, O.:. Integrace mobilního klienta do IS přes webovou službu. Systémová integrace [online]. 2010, 4, Dostupný z WWW: < ISSN [7] WordNet [online]. 2011, 2011 [cit ]. WordNet Search. Dostupné z WWW: < [8] DEY, A.K.; ABOWD, G.D.: Towards a Better Understanding of context and contextawarennes. In. In HUC 99: Proceedings of the 1st international symposium on Handheld and Ubiquitous Computing : Springer-Verlag, s Dostupné z WWW: < pe=pdf>. [9] CHEN, G., KOTZ, D.: A Survey of Context-Aware Mobile Computing Research. In Technical Report: TR Hannover : Dartmouth College, s Dostupné z WWW: < =pdf>. 108 SYSTÉMOVÁ INTEGRACE 4/2011

Úvod. Klíčové vlastnosti. Jednoduchá obsluha

Úvod. Klíčové vlastnosti. Jednoduchá obsluha REQUESTOR DATASHEET Úvod Requestor Service Desk poskytuje kompletní řešení pro správu interních i externích požadavků, které přicházejí do organizace libovolnou cestou. Produkt je zaměřen na vytvoření

Více

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012 Vývoj SW pro mobilní zařízení s ios Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie, 6.12.2012 Perspektiva 3 roky zkušeností s vývojem aplikací pro ios 1 rok vývoj pro Android desítky aplikací Obsah

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

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

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek = Velmi malé jádro = implementuje jen vybrané základní mechanismy: = virtuální paměť; = plánování vláken; = obsluha výjimek; = zasílání

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 25. Otázka : Komponentní technologie - základní pojmy a principy, metody specifikace komponent. Obsah : 1. Základní pojmy 1.1 Komponenta Komponenta

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

Vzdálený přístup k počítačům

Vzdálený přístup k počítačům Vzdálený přístup k počítačům jedna z nejstarších služeb vzdálený přístup k sálovým počítačům nejprve vzdálené terminály později terminálová emulace jako jedna ze služeb počítačové sítě současnost využíváno

Více

Základní informace. Operační systém (OS)

Základní informace. Operační systém (OS) Základní informace Operační systém (OS) OS je základní program, který oživuje technické díly počítače (hardware) a poskytuje prostředí pro práci všech ostatních programů. Operační systém musí být naistalován

Více

Mobilní informační průvodce - RegTim

Mobilní informační průvodce - RegTim Mobilní informační průvodce - RegTim nabízí zpřístupnění kulturního a přírodního dědictví regionu s využitím moderních mobilních informačních technologií pro podporu cestovního ruchu a inovativní propagaci

Více

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

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

Procesy a vlákna (Processes and Threads)

Procesy a vlákna (Processes and Threads) ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna (Processes and Threads) Správa procesů a vláken České vysoké učení technické Fakulta elektrotechnická 2012 Použitá literatura [1] Stallings, W.: Operating

Více

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. 2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. GEOVAP, spol. s r. o. Čechovo nábřeží 1790 530 03 Pardubice Česká republika +420 466 024 618 http://www.geovap.cz V dokumentu použité názvy programových

Více

Analýza a Návrh. Analýza

Analýza a Návrh. Analýza Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

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

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale je serverová aplikace určená pro efektivní zpracování velkého objemu sdílených nestrukturovaných dat. Umožňuje automaticky indexovat data z různých informačních zdrojů, intuitivně vyhledávat informace,

Více

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Semináˇr Java X J2EE Semináˇr Java X p.1/23 Seminář Java X J2EE Seminář Java X p.1/23 J2EE Složitost obchodních aplikací robusní, distribuované, spolehlivé aplikace s transakcemi na straně serveru, klientské aplikace co nejjednodušší Snaha : Návrh,

Více

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ M. Sysel, I. Pomykacz Univerzita Tomáše Bati ve Zlíně, Fakulta aplikované informatiky Nad Stráněmi 4511, 760 05 Zlín, Česká republika

Více

Vzdělávací obsah vyučovacího předmětu

Vzdělávací obsah vyučovacího předmětu V.9.3. Vzdělávací obsah vyučovacího předmětu Vzdělávací oblast: Inormatika a informační a komunikační technologie Vyučovací předmět: Informatika Ročník: 1. ročník + kvinta chápe a používá základní termíny

Více

EXTRAKT z české technické normy

EXTRAKT z české technické normy EXTRAKT z české technické normy Extrakt nenahrazuje samotnou technickou normu, je pouze informativním 35.240.60 materiálem o normě. Komunikační infrastruktura pro pozemní mobilní zařízení (CALM) Architektura

Více

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb:

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb: Technologie Marushka Základním konceptem technologie Marushka je použití jádra, které poskytuje přístup a jednotnou grafickou prezentaci geografických dat. Jádro je vyvíjeno na komponentním objektovém

Více

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25 Programování v C# Úvodní slovo 1 / 25 Obsah přednášky Seznámení s předmětem Co je.net Vlastnosti.NET 2 / 25 Kdo je kdo Petr Vaněček vanecek@pf.jcu.cz J 502 Václav Novák vacnovak@pf.jcu.cz?? Při komunikaci

Více

Integrace mobilního klienta do IS přes webovou službu

Integrace mobilního klienta do IS přes webovou službu Integrace mobilního klienta do IS přes webovou službu Ondřej Berger Univerzita Hradec Králové Fakulta informatiky a managementu KIKM Hradecká 1249/6, Hradec Králové (ondrej.berger@uhk.cz) Abstrakt: Webové

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

Základní informace: vysoce komfortnímu prostředí je možné se systémem CP Recorder efektivně pracovat prakticky okamžitě po krátké zaškolení.

Základní informace: vysoce komfortnímu prostředí je možné se systémem CP Recorder efektivně pracovat prakticky okamžitě po krátké zaškolení. Základní informace: CP Recorder je v Čechách vyvíjený systém pro sofistikované zaznamenávání telefonních hovorů. V prvé řadě je určen pro optimalizaci služeb, které poskytují u nás stále více populární

Více

Publikování map na webu - WMS

Publikování map na webu - WMS Semestrální práce z předmětu Kartografická polygrafie a reprografie Publikování map na webu - WMS Autor: Ondřej Dohnal, Martina Černohorská Editor: Filip Dvořáček Praha, duben 2010 Katedra mapování a kartografie

Více

MST - sběr dat pomocí mobilních terminálů on-line/off-line

MST - sběr dat pomocí mobilních terminálů on-line/off-line MST - sběr dat pomocí mobilních terminálů on-line/off-line Stručný přehled název: MST, software pro sběr dat mobilními terminály ve skladu (příjem, výdej, inventura) autor aplikace: FASK, spol. s r.o.,

Více

EMBARCADERO TECHNOLOGIES. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů.

EMBARCADERO TECHNOLOGIES. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů. Jak na BYOD chytře? Možnosti zapojování různých mobilních zařízení do podnikových informačních systémů. Trendy a móda EMBARCADERO TECHNOLOGIES Popularita a prodej mobilních zařízení roste Skoro každý má

Více

Wonderware Information Server 4.0 Co je nového

Wonderware Information Server 4.0 Co je nového Wonderware Information Server 4.0 Co je nového Pavel Průša Pantek (CS) s.r.o. Strana 2 Úvod Wonderware Information Server je výrobní analytický a reportní informační portál pro publikaci výrobních dat

Více

java remote method invocation Kateřina Fricková, Matouš Jandek

java remote method invocation Kateřina Fricková, Matouš Jandek java remote method invocation Kateřina Fricková, Matouš Jandek Distribuovaný systém počítačový systém, ve kterém jsou jednotlivé komponenty propojeny počítačovou síťí komponenty systému sdílí cíl, kterého

Více

Instalace a konfigurace web serveru. WA1 Martin Klíma

Instalace a konfigurace web serveru. WA1 Martin Klíma Instalace a konfigurace web serveru WA1 Martin Klíma Instalace a konfigurace Apache 1. Instalace stáhnout z http://httpd.apache.org/ nebo nějaký balíček předkonfigurovaného apache, např. WinLamp http://sourceforge.net/projects/winlamp/

Více

OPS Paralelní systémy, seznam pojmů, klasifikace

OPS Paralelní systémy, seznam pojmů, klasifikace Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus

Více

Karel Bittner bittner@humusoft.com. HUMUSOFT s.r.o. HUMUSOFT s.r.o.

Karel Bittner bittner@humusoft.com. HUMUSOFT s.r.o. HUMUSOFT s.r.o. Karel Bittner bittner@humusoft.com COMSOL Multiphysics Co je COMSOL Multiphysics? - sw určený k simulaci fyzikálních modelů, na něž působí jeden nebo několik fyzikálních vlivů - sw úlohy řeší metodou konečných

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

Zápočtová úloha z předmětu KIV/ZSWI DOKUMENT SPECIFIKACE POŽADAVKŮ

Zápočtová úloha z předmětu KIV/ZSWI DOKUMENT SPECIFIKACE POŽADAVKŮ Zápočtová úloha z předmětu KIV/ZSWI DOKUMENT SPECIFIKACE POŽADAVKŮ 10. 5. 2011 Tým: Simplesoft Členové: Zdeněk Malík Jan Rada Ladislav Račák Václav Král Marta Pechová malikz@students.zcu.cz jrada1@students.zcu.cz

Více

PRODEJ Prodej je pochopitelně základní funkcí pokladního systému. Systému MERCATOR umožňuje prodej realizovat ve 3 režimech:

PRODEJ Prodej je pochopitelně základní funkcí pokladního systému. Systému MERCATOR umožňuje prodej realizovat ve 3 režimech: MERCATOR Moderní pokladní systém od společnosti SICONET a.s. Co je MERCATOR MERCATOR je PC pokladní systém určený především maloobchodním a velkoobchodním prodejnám společností, jejichž podnikovým systémem

Více

Klíčem je mobilní telefon

Klíčem je mobilní telefon Klíčem je mobilní telefon AirKey Uzamykací systém pro flexibilní použití Tak dynamický jako potřeby zákazníků Systém AirKey je další inovací v nabídce společnosti EVVA. Tento elektronický uzamykací systém,

Více

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům.

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům. Aplikační vrstva http-protokol, díky kterému je možné zobrazovat webové stránky. -Protokol dokáže přenášet jakékoliv soubory (stránky, obrázky, ) a používá se také k různým dalším službám na internetu

Více

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ Michal Brožek, Dominik Svěch, Jaroslav Štefaník MEDIUM SOFT a.s., Cihelní 14, 702 00 Ostrava, ČR Abstrakt Neustále rostoucí význam sběru dat, možnost

Více

Microsoft SharePoint Portal Server 2003. Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

Microsoft SharePoint Portal Server 2003. Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR Microsoft SharePoint Portal Server 2003 Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR Přehled Země: Česká republika Odvětví: Velkoobchod Profil zákazníka

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

Formy komunikace s knihovnami

Formy komunikace s knihovnami Formy komunikace s knihovnami Současné moderní prostředky Jiří Šilha a Jiří Tobiáš, Tritius Solutions a.s., Brno Osnova Základní požadavky na komunikaci s knihovnami Historie komunikace s knihovnami Confluence

Více

Implementace systémů HIPS: historie a současnost. Martin Dráb

Implementace systémů HIPS: historie a současnost. Martin Dráb Implementace systémů HIPS: historie a současnost Martin Dráb martin.drab@secit.sk HIPS: základní definice Majoritně používané operační systémy disponují bezpečnostními modely, které dovolují jednotlivým

Více

Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a

Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a Vývoj Internetu značně pokročil a surfování je dnes možné nejen prostřednictvím počítače, ale také prostřednictvím chytrých telefonů, tabletů a netbooků. Chytré telefony, nazývané také Smartphony, poskytují

Více

Klíčem je mobilní smartphone

Klíčem je mobilní smartphone Klíčem je mobilní smartphone AirKey Uzamykací systém pro flexibilní použití Tak dynamický jako potřeby zákazníků Systém AirKey je další inovací v nabídce společnosti EVVA. Tento elektronický uzamykací

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

Architektura GIS KMA/AGI. Karel Jedlička

Architektura GIS KMA/AGI. Karel Jedlička KMA/AGI Karel Jedlička smrcek@kma.zcu.cz http://www.kma.zcu.cz/jedlicka Vznik materiálu byl podpořen z projektu FRVŠ č. 584/2011 Úvod do architektury software klient/server sw vrstvy Architektura GIS Typy

Více

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní

Více

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13 Obsah Předmluva 11 O této knize 13 Konvence........................................................13 Inovace prostřednictvím otevřenosti 15 Ekosystém Symbianu.............................................16

Více

Nové jazykové brány do Caché. Daniel Kutáč

Nové jazykové brány do Caché. Daniel Kutáč Nové jazykové brány do Caché Daniel Kutáč O čem budeme mluvit.net T/SQL Perl Python MultiValue Basic Téma.NET provider .NET Provider Co lze již dnes Factory / VisM ODBC.NET Web Services Factory a VisM

Více

úvod Historie operačních systémů

úvod Historie operačních systémů Historie operačních systémů úvod Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785. Provozuje Národní ústav

Více

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní

Více

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací. Přednáška 5 1. Stručný přehled vývoje html H T m l (HTML...XML... html5), (Web API, JSON, REST,AJAX) 2. Některé související IT IP adresa, doménová adresa, name servery JavaScritp, Jquery, Angular PHP vs

Více

ArcGIS Online Subscription

ArcGIS Online Subscription ArcGIS Online Subscription GIS pro organizace ArcGIS Online je GIS v cloudu. Poskytuje služby GIS v prostředí internetu, ať už se jedná o úložné místo, publikaci mapových a geoprocessingových služeb, nebo

Více

Specifikace požadavků. POHODA Web Interface. Verze 1.0. Datum: Autor: Ondřej Šrámek

Specifikace požadavků. POHODA Web Interface. Verze 1.0. Datum: Autor: Ondřej Šrámek Specifikace požadavků POHODA Web Interface Verze 1.0 Datum: 29.12. 2008 Autor: Ondřej Šrámek Copyright 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document. Strana

Více

Implementace systémů HIPS: ve znamení 64bitových platforem. Martin Dráb martin.drab@email.cz

Implementace systémů HIPS: ve znamení 64bitových platforem. Martin Dráb martin.drab@email.cz Implementace systémů HIPS: ve znamení 64bitových platforem Martin Dráb martin.drab@email.cz HIPS: základní definice Majoritně používané operační systémy disponují bezpečnostními modely, které dovolují

Více

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence schopnost, který je spolufinancován

Více

Inteligentní řízení strojů s portfoliem u-mation Řešení pro automatizaci a digitalizaci Let s connect. Automatizace a digitalizace

Inteligentní řízení strojů s portfoliem u-mation Řešení pro automatizaci a digitalizaci Let s connect. Automatizace a digitalizace Inteligentní řízení strojů s portfoliem u-mation Řešení pro automatizaci a digitalizaci Let s connect. Automatizace a digitalizace Řešení pro automatizaci a digitalizaci Jakožto expert v průmyslové konektivitě

Více

Systém elektronického rádce v životních situacích portálu www.senorady.cz

Systém elektronického rádce v životních situacích portálu www.senorady.cz Systém elektronického rádce v životních situacích portálu www.senorady.cz Obec Senorady Miroslav Patočka 2006 Obsah: 1. Úvodní informace 1.1 Informace pro uživatele 1.1.1 Přístupnost HTML, PDA, WAP, XML

Více

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. 2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. GEOVAP, spol. s r. o. Čechovo nábřeží 1790 530 03 Pardubice Česká republika +420 466 024 618 http://www.geovap.cz V dokumentu použité názvy programových

Více

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server ADMINISTRACE POČÍTAČOVÝCH SÍTÍ OPC Server Funkce a využití v průmyslové automatizaci Jiří NOSEK 2011 Co je OPC Server? OPC = Open Process Control (původně OLE for Process Control) sada specifikací průmyslového

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

Možnosti využití dat RÚIAN poskytovaných VDP pomocí webových služeb

Možnosti využití dat RÚIAN poskytovaných VDP pomocí webových služeb Možnosti využití dat RÚIAN poskytovaných VDP pomocí webových služeb Ing. Radek Augustýn Výzkumný ústav geodetický, topografický a kartografický, v.v.i. Zdiby Abstrakt V návaznosti na zpřístupnění dat Registru

Více

Business Intelligence

Business Intelligence Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma

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

QAD CRM. Vladimír Bartoš. konzultant

QAD CRM. Vladimír Bartoš. konzultant QAD CRM Vladimír Bartoš konzultant Integrace QAD CRM QAD EA Artikly Adresy Nabídky Prodejní objednávky Instalovaná báze Servisní volání Servisní kontrakty Servisní nabídky Nabídky volání Měny Uživatelé

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: CZ.1.07/1.5.00/34.0410 Číslo šablony: 17 Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek:

Více

IS pro podporu BOZP na FIT ČVUT

IS pro podporu BOZP na FIT ČVUT IS pro podporu BOZP na FIT ČVUT Závěrečná zpráva pro 2. iteraci 21. dubna 2011 Zadavatel: Ing. Jiří Chludil Řešitelský tým: Jiří Kopecký Jan Kratochvíl Milan Matějček Štefan Pinďák Kristýna Streitová Úvod

Více

EXTRAKT z technické normy CEN ISO

EXTRAKT z technické normy CEN ISO EXTRAKT z technické normy CEN ISO Extrakt nenahrazuje samotnou technickou normu, je pouze informativním materiálem o normě. Inteligentní dopravní systémy Kooperativní ITS Zařízení stanice ITS pro přenos

Více

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek Co je to webová aplikace? příklady virtuální obchodní dům intranetový IS podniku vyhledávací služby aplikace jako každá jiná přístupná

Více

PRODUKTY Tovek Server 6

PRODUKTY Tovek Server 6 Tovek Server je serverová aplikace určená pro efektivní zpracování velkého objemu sdílených strukturovaných i nestrukturovaných dat. Umožňuje automaticky indexovat data z různých informačních zdrojů, intuitivně

Více

Obsah. Zpracoval:

Obsah. Zpracoval: Zpracoval: houzvjir@fel.cvut.cz 03. Modelem řízený vývoj. Doménový (business), konceptuální (analytický) a logický (návrhový) model. Vize projektu. (A7B36SIN) Obsah Modelem řízený vývoj... 2 Cíl MDD, proč

Více

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14 Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14 KAPITOLA 1 Nové rysy Windows 8 a 8.1 15 Nové uživatelské rozhraní 15 Rychlý náběh po zapnutí 16 Informace v prvním sledu 16 Nové prezentační

Více

Možnosti aplikace: Copyright 2001, COM PLUS CZ, Praha

Možnosti aplikace: Copyright 2001, COM PLUS CZ, Praha Vyhodnocovací program CP TARIF 2001 umožňuje rychlé a podrobné sledování telefonního provozu pobočkových ústředen. Uživatel programu tak získává všechny potřebné údaje o odchozích telefonních hovorech,

Více

Android 100% Java telefon. Petr Musil

Android 100% Java telefon. Petr Musil Android 100% Java telefon Petr Musil 1 Vytvoření aplikace Prostředí pro vývoj Android SDK http://developer.android.com/sdk/index.html ADT plugin pro Eclipse http://developer.android.com/sdk/eclipse-adt.html

Více

JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač

JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač JUMO LOGOSCREEN 600 Dotyková budoucnost záznamu: Obrazovkový zapisovač Nová generace Obrazovkový zapisovač JUMO LOGOSCREEN 600 je nový úvodní model řady LOGOSCREEN, který je určen pro skutečný provoz na

Více

Vývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz

Vývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz Vývoj moderních technologií při vyhledávání Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz INFORUM 2007: 13. konference o profesionálních informačních zdrojích Praha, 22. - 24.5. 2007 Abstrakt Vzhledem

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

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody Obsah 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody 3) 4) Mantichora Mantichora je moderní aplikace, který

Více

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011 Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího

Více

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Trochu teorie Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Každá spuštěná aplikace má alespoň jeden proces

Více

Znalostní systém nad ontologií ve formátu Topic Maps

Znalostní systém nad ontologií ve formátu Topic Maps Znalostní systém nad ontologií ve formátu Topic Maps Ladislav Buřita, Petr Do ladislav.burita@unob.cz; petr.do@unob.cz Univerzita obrany, Fakulta vojenských technologií Kounicova 65, 662 10 Brno Abstrakt:

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

Základy datových vazeb Silverlightu. Funkce Silverlightu 2. Podpora jazyků a technologie.net Framework

Základy datových vazeb Silverlightu. Funkce Silverlightu 2. Podpora jazyků a technologie.net Framework Funkce Silverlightu 2 Podpora jazyků a technologie.net Framework Model pro popis webových služeb a jejich operací Volná vázanost datových služeb Nový model ovládacích prvků LINQ to Objects a UNQ to XML

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

Mobilní aplikace ve světě ERP. Asseco Solutions, a.s. a Simac Technik ČR, a.s.

Mobilní aplikace ve světě ERP. Asseco Solutions, a.s. a Simac Technik ČR, a.s. Mobilní aplikace ve světě ERP Michal Hanko Petr Kolda Asseco Solutions, a.s. a Simac Technik ČR, a.s. Skupina Asseco Solutions Asseco Solutions je průkopníkem a vizionářem na poli informačních systémů

Více

Globální navigační satelitní systémy a jejich využití v praxi

Globální navigační satelitní systémy a jejich využití v praxi Globální navigační satelitní systémy a jejich využití v praxi Metoda RTK a její využití Martin Tešnar (GEODIS BRNO, spol. s r.o.) Tato prezentace je spolufinancována Evropským sociálním fondem a státním

Více

EXTRAKT z technické normy ISO

EXTRAKT z technické normy ISO EXTRAKT z technické normy ISO Extrakt nenahrazuje samotnou technickou normu, je pouze informativním materiálem o normě. Inteligentní dopravní systémy Datové slovníky ITS Část 4: Minimální systémové požadavky

Více

Systémy pro sběr a přenos dat

Systémy pro sběr a přenos dat Systémy pro sběr a přenos dat propojování distribuovaných systémů modely Klient/Server, Producent/Konzument koncept VFD (Virtual Field Device) Propojování distribuovaných systémů Používá se pojem internetworking

Více

Desigo Control Point řešení pro ovládání a monitorování budov siemens.cz/desigo

Desigo Control Point řešení pro ovládání a monitorování budov siemens.cz/desigo Jedna budova. Různí uživatelé. Desigo Control Point řešení pro ovládání a monitorování budov siemens.cz/desigo Desigo Control Point navržen pro zjednodušení správy technologií budov Budovy nejsou jen pouhé

Více

Co je Symantec pcanywhere 12.0? Hlavní výhody Snadné a bezpečné vzdálené připojení Hodnota Důvěra

Co je Symantec pcanywhere 12.0? Hlavní výhody Snadné a bezpečné vzdálené připojení Hodnota Důvěra Symantec pcanywhere 12.0 Špičkové řešení vzdáleného ovládání pro odbornou pomoc a řešení problémů Co je Symantec pcanywhere 12.0? Symantec pcanywhere, přední světové řešení vzdáleného ovládání*, pomáhá

Více

Autodesk AutoCAD LT 2019

Autodesk AutoCAD LT 2019 Novinky Autodesk AutoCAD LT 2019 www.graitec.cz www.cadnet.cz, helpdesk.graitec.cz, www.graitec.com Novinky Autodesk AutoCAD LT 2019 PDF dokument obsahuje přehled novinek produktu AutoCAD LT 2019. AutoCAD

Více

Internetové služby isenzor

Internetové služby isenzor Internetové služby isenzor Aktuální snímek z webové kamery nebo aktuální teplota umístěná na vašich stránkách představují překvapivě účinný a neotřelý způsob, jak na vaše stránky přilákat nové a zejména

Více

1 Vytvoření oboustranné informační platformy MČ občan (mobilní aplikace + rozhraní API pro přenos informací do webových stránek městské části)

1 Vytvoření oboustranné informační platformy MČ občan (mobilní aplikace + rozhraní API pro přenos informací do webových stránek městské části) PŘÍLOHA Č. 1 ZADÁVACÍ DOKUMENTACE TECHNICKÁ SPECIFIKACE ZÁKAZNÍKA 1 Vytvoření oboustranné informační platformy MČ občan (mobilní aplikace + rozhraní API pro přenos informací do webových stránek městské

Více