|
Chytrý reproduktor s Raspberry Pi
Vondráček, Tomáš ; Špaňhel, Jakub (oponent) ; Herout, Adam (vedoucí práce)
Bakalářská práce se zabývá tvorbou hudebního systému, který umožní uživatelům organizovat a přehrávat hudbu v reálném čase. Hudební systém je založen na architektuře klient-server a skládá se ze serverové, webové a mobilní aplikace. Serverová aplikace vykonává roli přehrávače hudby a zprostředkovatele komunikace mezi klienty. Klient slouží jako uživatelské rozhraní pro server, ale umožňuje organizovat a přehrávat hudbu plně ve vlastní režii. Hudební systém je implementován v jazyce JavaScript (ECMAScript 2018). Serverová aplikace je postavena na Node.js a implementuje Socket.IO server včetně REST API. Webová aplikace je založena na knihovně React a prezentovaná jako SPA. Mobilní aplikace je implementována v React Native se zaměřením na systém Android. Serverová a webová aplikace je nasazena na serverech Heroku a počítači Raspberry Pi. Mobilní aplikace je publikována na Google Play. Hudební systém lze využít pro soukromé přehrávání hudby, nebo jako prostředek organizování hudby mezi více uživateli.
|
|
Herní engine pro ITIL trenažér
Pučálka, Martin ; Křivka, Zbyněk (oponent) ; Rychlý, Marek (vedoucí práce)
Tato diplomová práce je zaměřená na knihovnu Information Technology Infrastructure Library (ITIL). Cílem práce bylo analyzovat, navrhnout a implementovat herní engine, který by umožnil simulaci provozu IT služeb v reálném či zrychleném čase anebo v tazích. Základem enginu je tvůrčí mód, ve kterém je možné vytvářet vlastní služby a specifikovat jejich chování během provozu tak, jako kdyby je používali reální uživatelé. Druhou částí enginu je mód hráče a jednoduchý service desk. Pomocí nich se hráči mohou starat o plynulý provoz služeb, které jim byly svěřeny. To jim nabízí možnost praktické výuky a procvičování postupů popsaných v knihovně ITIL.
|
|
Peer-To-Peer webové sdílení souborů ve skupině
Pokorný, Filip ; Španěl, Michal (oponent) ; Herout, Adam (vedoucí práce)
V rámci této práce jsem se zaměřil na řešení problému sdílení souborů mezi uživateli prostřednictvím peer-to-peer přenosu ve webovém prostředí. Cílem bylo vytvořit jednoduchou aplikaci, která umožní skupině uživatelů sdílet soubory mezi sebou bez účasti třetích stran a jakýchkoliv limitů. Tento cíl jsem realizoval prostřednictvím moderních webových technologií, z nichž nejdůležitější byla knihovna WebRTC, prostřednictvím které byl implementován peer-to-peer přenos. Tyto technologie byly podpořeny optimalizovanými algoritmy a nejaktuálnějšími prostředky pro zpracování a ukládání sdílených souborů. Výsledkem je real-time aplikace umožňující uživatelům vytvářet místnosti v nichž sdílí své soubory. Toto řešení bylo podrobeno rychlostním testům, kde v porovnání s řešeními podobného charakteru a jinými běžně používanými prostředky pro přenos souborů, vyšlo v testovaném prostředí jako nejrychlejší.
|
|
Systém pro on-line záznam jízd autoškoly
Voneš, Jakub ; Bartík, Vladimír (oponent) ; Burget, Radek (vedoucí práce)
Předmětem této diplomové práce je návrh a realizace aplikace typu klient-server pro sběr GPS dat pomocí chytrého telefonu s operačním systémem Android za účelem sledování v reálném čase a záznamu průběhu jízd na serveru, kde jsou tato data následně upravována podle reálné silniční komunikace. Tato práce tematicky navazuje a rozšiřuje projekt DoAutoškoly.cz . Práce obsahuje teoretické seznámení s GPS, problematikou komunikace v reálném čase a platformou Android, včetně aplikačního rozhraní pro GPS. V další části práce jsou tyto poznatky využity k návrhu celého systému. Text diplomové práce následně plynule přechází v implementaci mobilní aplikace, webového modulu a příslušné serverové aplikace. Nadále jsou vyčleněny kapitoly zabývající se sledováním v reálném čase a editováním tras. Závěr práce je věnován testování a vyhodnocení dosažených cílů.
|
|
Synchronizace vektorové grafiky mezi klienty a serverem
Votava, Štěpán ; Bruckner, Tomáš (vedoucí práce) ; Vencovský, Filip (oponent)
Cílem diplomové práce je analýza existujících algoritmů pro zajištění konzistence při synchronizaci vektorové grafiky v reálném čase mezi více klienty a serverem, jejich otestování, popis rozdílů a výběr nejvhodnějšího. Teoretická část práce se věnuje problematice komunikace v reálném čase v protokolu HTTP, WebSockety a detailněji se zabývá algoritmy pro zajištění konzistence a architekturou aplikace. V praktické části jsou popsány technologie využité v diplomové práci, dále samotný návrh aplikace a její implementace. Výsledkem práce je přehled algoritmů pro zajištění konzistence, výběr technologie vhodné pro komunikaci mezi klienty a servery v případě synchronizace vektorové grafiky v reálném čase a implementace vybraných technologií v Node.js aplikaci.
|
|
Kooperativní práce na dokumentech v aplikaci TeXonWeb
Telenský, Václav
Diplomová práce se zabývá návrhem a implementací možnosti kooperativní práce na dokumentech v aplikaci TeXonWeb. Součástí práce je analýza konkurenčních řešení a klíčových technologií pro implementaci. Kooperativní práce na dokumentech je funkcionalita, která umožňuje uživatelům snadnou spolupráci na jednom dokumentu v reálném čase. Text práce popisuje vlastní implementaci za použití vybrané technologie, která je popsána v počáteční analýze. Práce poskytuje i nápady pro další možný postup.
|
|
Real-time web applications
Paulech, Matej ; Mittner, Jan (vedoucí práce) ; Buchalcevová, Alena (oponent)
Tato práce se zabývá real-time webovými aplikacemi. Jejím hlavním cílem je seznámit čtenáře s pojmem real-time webová aplikace a s technikami určenými pro tvorbu real-time webových aplikací s důrazem na praktickou ukázku. První kapitola se věnuje historii vzniku webu, popisu HTTP protokolu a definici real-time webových aplikací. Druhá kapitola popisuje technologie použité v dalších částech práce s důrazem na jejich dopady a využití při tvorbě real-time webových aplikací. Jedná se o technologie JavaScript, JSON, Ajax (XHR, JSONP), knihovnu jQuery a serverové řešení Node.js. Třetí kapitola představuje hlavní část práce. Zabývá se technikami real-time komunikace klienta se serverem nazývanými také transportní způsoby. Popis každé techniky je doplněn obrázkem znázorňujícím komunikaci klienta se serverem a ukázkovým zdrojovým kódem. V závěru třetí kapitoly se nacházejí řešení používané programátory v praxi, konkrétně řešení Ajax Push Engine (APE), knihovna Socket.IO a služba Pusher.com. Čtvrtá, zároveň poslední kapitola obsahuje popis tvorby ukázkové webové aplikace vytvořené pro účely teto práce - skupinového chatu. Jedná se zejména o popis její funkcionalit a návodu jak si u sebe připravit prostředí pro běh real-time webové aplikace. Také obsahuje návod pro vytvoření kostry real-time webové aplikace s použitím serverového řešení Node.js, frameworku Express a knihovny Socket.IO. Zdrojové kódy ukázkové aplikace se nacházejí na přiloženém DVD v případě tištěné verze práce, v přílohách informačního systému VŠE v případě elektronické verze práce a také na službě GitHub. Hlavním přínosem práce je poskytnutí komplexního a jednotného popisu technik tvorby real-time webových aplikací s poskytnutím ukázkového zdrojového kódu ke každé technice.
|