Knihovna generující silně otypované API
Service for generating strongly typed API
Typ dokumentu
bakalářská prácebachelor thesis
Autor
Ludvík Prokopec
Vedoucí práce
Louka Ladislav
Oponent práce
Glazar Filip
Studijní obor
Webové inženýrství 2021Studijní program
InformatikaInstituce 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.htmlVysokoš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áznamAbstrakt
Tato bakalářská práce se zaměřuje na řešení problému tvorby silně otypovaného API bez nutnosti generování kódu v programovacím jazyce TypeScript. Garance otypovaného API dává klientovi přehled o datových typech, které může odeslat a které obdrží. Na rozdíl od technologie GraphQL nevyžaduje manuální spuštění příkazů, čímž se proces vývoje stává plynulejší. Technologie tRPC je další alternativou pro vytváření otypovaného API bez nutnosti generování kódu, ta však funguje pouze pro velmi úzké nastavení projektu. Je navržená pro strukturu jednotného repozitáře a silné typování je k dispozici pouze se znalostí zdrojového kódu aplikace. Tato práce se snaží překročit tyto hranice pomocí návrhu a implementace vlastní knihovny, která nabízí silně otypované API a introspekci schématu k tvorbě otevřeného silně otypovaného API, kterou podporuje GraphQL, zatímco zachovává jednoduchost tvorby projektu, kterou podporuje tRPC. This bachelor thesis focuses on solving the problem of creating a strongly typed API without generating code in the TypeScript programming language. The guarantee of an otyped API gives the client an overview of the data types it can send and receive. Unlike GraphQL technology, it does not require manual execution of commands, making the development process smoother. The tRPC technology is another alternative for creating an otyped API without code generation, but it only works for very narrow project settings. It is designed for a monorepository structure and strong typing is only available with knowledge of the application source code. This work attempts to transcend these boundaries by designing and implementing a custom library that provides a strongly typed API with schema introspection to create an open strongly typed API, which is supported by GraphQL, while maintaining the simplicity of project creation that is supported by tRPC.
Zobrazit/ otevřít
Kolekce
- Bakalářské práce - 18102 [1724]