ČVUT DSpace
  • Prohledat DSpace
  • English
  • Přihlásit se
  • English
  • English
Zobrazit záznam 
  •   ČVUT DSpace
  • České vysoké učení technické v Praze
  • Fakulta informačních technologií
  • katedra softwarového inženýrství
  • Bakalářské práce - 18102
  • Zobrazit záznam
  • České vysoké učení technické v Praze
  • Fakulta informačních technologií
  • katedra softwarového inženýrství
  • Bakalářské práce - 18102
  • Zobrazit záznam
JavaScript is disabled for your browser. Some features of this site may not work without it.

Validátor regulárních výrazů realizovaný jako Webassembly

Regular expression validator using Webassembly technology

Typ dokumentu
bakalářská práce
bachelor thesis
Autor
Filip Figuli
Vedoucí práce
Štěpán Pavel
Oponent práce
Bařinka Lukáš
Studijní obor
Webové a softwarové inženýrství
Studijní program
Informatika 2009
Instituce přidělující hodnost
katedra softwarového inženýrství



Práva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.html
Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznam
Abstrakt
Informačné systémy narástli na popularite a je po nich všeobecne dnes najväčší dopyt. Ich vývoj však nieje jednoduchý a často obnáša celý tým programátorov, ktorý sa špecifikújú na časti takéhoto systému od vizuálneho rozhrania klienta pre jednotlivé platformy, až po server s databázou na správu informácií. Mojim primárnym cieľom je vytvoriť kompletný základ pre vývoj informačného systému a následne demonštrovať jednoduchou aplikáciou na validáciu regulárnych výrazov výhody, ktoré priniesol prelom vo svete webových technológií nazývaný WebAssembly. WebAssembly poskytuje elegantné riešenie, ktoré umožní pomocou jedného jazyka vývoj softvéru vrátane užívateľského rozhrania a zároveň multifunkčného serveru pre uchovávanie a spracovanie dát. Tento technologický pokrok výrazne uľahčuje vývoj tým, že nevyžaduje veľkú škálu rôznych technológií ako súčasný mainstream a je dnes plnohodnotne podporovaný každým bežným webovým prehliadačom. Pre implementáciu som si zvolil .NET framework v jazyku C\#. .NET poskytuje novú technológiu nazývanú Blazor, vďaka ktorej môžeme vytvárať standalone WebAssembly aplikácie. Napriek tomu, že takáto aplikácia je distribuovaná formou webstránky, kód je kompilovaný priamo u klienta, čo nás odbremení od potreby byť neustále v spojení so serverom a teda získame schopnosť práce v offline režime a to skoro natívnou rýchlosťou. Aby sme zachovali jednotnosť jazykov pri vývoji serveru využijeme framework ASP.NET Core. Výsledný softvér je schopný pracovať v dvoch režimoch. Offline režim demonštruje diskrétne spracovanie regulárnych výrazov bez strachu o to, že sa naše citlivé informácie dostanú do nesprávnych rúk a online režim umožnuje jednoduchú prácu s dátami za pomoci REST API z ASP.NET Core serveru. Vďaka built in CSS knižniciam je táto aplikácia responzízvna a vie sa prispôsobiť prakticky každému zariadeniu. Prínosom je kvalitný základ pre veľkú škálu rôznych informačných systémov. Implementácia bola pomerne rýchla a jednoduchá vďaka dobrej dokumentácií. Nevyžadovala expertízu v obore okrem znalosti jazyka a základných programovacích konceptov. Vďaka veľkej modularite sa dá softvér ľahko rozšíriť podľa potreby.
 
Information systems grew in popularity and there is a great demand for them. However their development is complicated and usually takes several skilled developers to perform. Each of them focus on their own expertise ranging from platform specific user interfaces to development of server with database to store data. My primary goal is to create a foundation for development of such information system. By creating a simple application for validation of regular expressions I want to demonstrate the advantages that WebAssembly brought with it by providing a briliant solution to create with a single programming language software that could create user interface as well as necessary server side to calculate and persist data. Such software would not only run with nearly native speed at client side but also would work on suitable platform of any choice. This technological progress singinficantly improves the development by not requiring a big scale of technologies as the current mainstream. It is already completely supported by majority of common web browsers. I chose .NET framework with language C\# for the implementation. .NET provides new technology called Blazor which has the ability to create standalone WebAssembly application. Nevertheless this application is being distributed in a form of a website, the code is compiled directly in the client device. Such feature allows us to enter offline mode without direct connection with a server. Its import to mention that the efficiency can compete with a native application. To keep unification in programming langauges we will also use a part of .NET called ASP.NET Core to implement server. Our final product is able to work in two modes. Offline mode provides discrete calculations of regular expressions without the fear of our sensitive data falling in to the wrong hands. Online mod on the other hand demonstrate easy processing of data with the help of a REST API provided by ASP.NET Core server. Included CSS libraries allow our application to be responsive, out of the box adjusting to any desired device. The main benefit of our application is solid foundation for virtually any information system. The implementation it self was very fluent and simple thanks to good documentation. It does not require any in depth expertise except for the basic knowledge of C\# language and programming concepts. Thanks to its high modularity it can be easily extended according to ones needs.
 
URI
http://hdl.handle.net/10467/102029
Zobrazit/otevřít
PLNY_TEXT (756.7Kb)
POSUDEK (45.79Kb)
POSUDEK (58.78Kb)
Kolekce
  • Bakalářské práce - 18102 [1875]

České vysoké učení technické v Praze copyright © 2016 

DSpace software copyright © 2002-2016  Duraspace

Kontaktujte nás | Vyjádření názoru
Theme by 
@mire NV
 

 

Užitečné odkazy

ČVUT v PrazeÚstřední knihovna ČVUTO digitální knihovně ČVUTInformační zdrojePodpora studiaPodpora publikování

Procházet

Vše v DSpaceKomunity a kolekceDle data publikováníAutořiNázvyKlíčová slovaTato kolekceDle data publikováníAutořiNázvyKlíčová slova

Můj účet

Přihlásit se

České vysoké učení technické v Praze copyright © 2016 

DSpace software copyright © 2002-2016  Duraspace

Kontaktujte nás | Vyjádření názoru
Theme by 
@mire NV