diplomová práce

Rámec pro tvorbu aplikací s podporou peer-to-peer spolupráce

Text práce 2.35 MB

Autor práce: Ing. Jan Hrdina

Ak. rok: 2018/2019

Vedoucí: RNDr. Marek Rychlý, Ph.D.

Oponent: Mgr. Ing. Pavel Očenášek, Ph.D.

Abstrakt:

Práce se zabývá návrhem a implementací aplikačního rámce pro tvorbu kolaborativních webových editorů, které umožňují peer-to-peer spolupráci v realném čase. V práci jsou shrnuty existující přístupy pro replikaci dat, z nichž je pro další použití jako nejvhodnější vybrána implementace CRDT (conflict-free replicated data type) pro JSON od M. Kleppmanna. Pomocí výsledného rámce může být vytvářený obsah bezpečně sdílen uvnitř skupin protějšků, kde každému členovi je možné nastavit jiná oprávnění. Pro navázání spojení a komunikaci P2P jsou navrženy a implementovány vlastní komunikační protokoly postavené na WebRTC, WebSocket a WebCrypto. Rámec umožňuje řešení konfliktů a samostatnou práci i bez připojení k internetu. Pro konzistentní uživatelský zážitek je součástí knihovna s prvky uživatelského rozhraní pro správu přátel, skupin a další časté úkony. Rámec je implementován s využitím funkcionálních návrhových vzorů realizovaných v jazyce ReasonML. Funkčnost výsledku je ověřena vytvořením ukázkové aplikace editoru myšlenkových map.

Klíčová slova:


rámec, webový vývoj, peer-to-peer, distribuované systémy, spolupráce, funkcionální programování, autentizace, autorizace, konflikty, ReasonML, WebRTC, CRDT

Termín obhajoby

19.6.2019

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znakmkaAznamka

Klasifikace

A

Jazyk práce

čeština

Fakulta

Ústav

Studijní obor

Informační systémy (MIS)

Posudek vedoucího
RNDr. Marek Rychlý, Ph.D.

Známka navržená vedoucím: A

Soubor vložený vedoucím Velikost
Hodnocení vedoucího [.pdf] 86.24 kB

Známka navržená oponentem: 1

Soubor vložený oponentem Velikost
Posudek oponenta [.pdf] 87.14 kB