Modular architecture in the Angular web framework

Thesis title: Modularita vo webovom frameworku Angular
Author: Fedorčák, Jaroslav
Thesis type: Diploma thesis
Supervisor: Pavlíčková, Jarmila
Opponents: Černý, Jan
Thesis language: Slovensky
Abstract:
V súčasnom svete sa na trhu IT využíva veľké množstvo rôznych technológií, pričom trend naznačuje, že toto množstvo narastie. Medzi populárne programovacie jazyky na vývoj frontendu sa v posledných rokoch spopularizoval webový framework Angular pre svoju schopnosť prepojiť a simultánne vyvíjať v jazykoch TypeScript, HTML a štýlovacie jazyky na báze CSS, ktoré sú štruktúrované pod modulárnou architektúrou. Framework Angular vznikol ako odnož jazyka AngularJS, ktorý sa používa doteraz, no vývoj samotného Angularu išiel svojím vlastným smerom do takej miery, že v dnešnej dobe sa tieto frameworky považujú za dve odlišné entity. Niektorými z veľkých rozdielov, ktorým sa Angular líši od svojho predchodcu, je modularita, používanie TypeScriptu namiesto Javascriptu a podpora asynchrónnych operácií.Cieľom tejto diplomovej práce je uchopiť, popísať modulárny systém frameworku Angular a zhodnotiť jeho používanie hlavne z hľadiska architektúry vrátane predstavenia jeho architektonických prvkov ako Modul, Service, Component, Directive, Pipe a iných. Tieto vlastnosti budú demonštrované na vyvinutej ukážkovej aplikácii a následne zhodnotené v rámci ich využitia v praxi. Práca zároveň využíva znalosti z modulárneho systému v Jave 9, ktoré sú stručnejšie popísané a taktiež demonštrované na ukážkovej modulárnej Java aplikácii. Následne je riešenie modularity vo frameworku Angular aj v jazyku Java zhodnotené, do akej miery sú v nich podporované všeobecné koncepty modularity v programovaní.
Keywords: Java; Angular; modulárna architektúra; TypeScript; frontend
Thesis title: Modularita ve webovém frameworku Angular
Author: Fedorčák, Jaroslav
Thesis type: Diplomová práce
Supervisor: Pavlíčková, Jarmila
Opponents: Černý, Jan
Thesis language: Slovensky
Abstract:
V současném světě se na trhu IT využívá velké množství různých technologií, přičemž trend naznačuje, že toto množství poroste. Mezi populární programovací jazyky na vývoj frontendu se v posledních letech zpopularizoval webový framework Angular pro svou schopnost propojit a simultánně vyvíjet v jazycích TypeScript, HTML a stylovací jazyky na bázi CSS, které jsou strukturované pod modulární architekturou.Framework Angular vznikl jako odnož jazyka AngularJS, který se používá dosud, ale vývoj samotného Angular jel svým vlastním směrem do takové míry, že v dnešní době se tyto frameworky považují za dvě odlišné entity. Některými z velkých rozdílů, kterým se Angular liší od svého předchůdce, je modularita, používání TypeScriptu namísto Javascriptu a podpora asynchronních operací.Cílem této práce je uchopit, popsat modulární systém frameworku Angular a zhodnotit jeho používání hlavně z hlediska architektury včetně představení jeho architektonických prvků jako Modul, Service, Component, Directive, Pipe a jiných. Tyto vlastnosti budou demonstrovány na vyvinuté ukázkové aplikaci a následně zhodnoceny v rámci jejich využití v praxi.Práce zároveň využívá znalosti z modulárního systému v Javě 9, které jsou stručněji popsány a také demonstrovány na ukázkové modulární Java aplikaci. Následně je řešení modularity ve frameworku Angular i v jazyce Java zhodnoceno, do jaké míry jsou v nich podporovány obecné koncepty modularity v programování.
Keywords: Java; Angular; TypeScript; modulární architektura; frontend
Thesis title: Modular architecture in the Angular web framework
Author: Fedorčák, Jaroslav
Thesis type: Diploma thesis
Supervisor: Pavlíčková, Jarmila
Opponents: Černý, Jan
Thesis language: Slovensky
Abstract:
Nowadays there are a large number of different technologies which are used in the IT market, and the trend indicates that this number will keep getting larger. The Angular web framework has become popular among frontend programming languages in recent years due to its ability to connect and simultaneously develop in HTML, TypeScript and CSS-based styling languages, which are structured under a modular architecture.The Angular framework was created as a rewrite of the AngularJS language, which is still used today, but the development of the Angular framework itself has gone in its own direction to such an extent that these two frameworks are considered to be two different entities. Some of the aspects that differ between Angular and its predecessor are modularity, being TypeScript-based rather than JavaScript-based, and supporting asynchronous operations.The aim of this thesis is to describe the modular system of the Angular framework and consider its use mainly in terms of software architecture, including presenting its architectural elements such as Module, Service, Component, Directive, Pipa, and others. These properties of the framework are demonstrated on a demo application and evaluated in their use in practice.This thesis also uses knowledge of the modular system in Java 9, which are also briefly described and also demonstrated on a modular Java application. Subsequently, the implementations of modularity in both the Angular framework and the Java language are compared in order to evaluate to what extent the general concepts of modular programming are supported in them.
Keywords: Java; modular architecture; TypeScript; Angular; frontend

Information about study

Study programme: Aplikovaná informatika/Informační systémy a technologie
Type of study programme: Magisterský studijní program
Assigned degree: Ing.
Institutions assigning academic degree: Vysoká škola ekonomická v Praze
Faculty: Faculty of Informatics and Statistics
Department: Department of Information Technologies

Information on submission and defense

Date of assignment: 26. 8. 2019
Date of submission: 2. 5. 2020
Date of defense: 4. 6. 2020
Identifier in the InSIS system: https://insis.vse.cz/zp/70285/podrobnosti

Files for download

    Last update: