Single Page Application Architecture with Angular
Schmiedehausen, Kim (2018)
Schmiedehausen, Kim
Vaasan ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2018052410082
https://urn.fi/URN:NBN:fi:amk-2018052410082
Tiivistelmä
Opinnäytetyö toteutettiin tutkimuksena Wapicelle. Työn tarkoituksena oli tutkia keinoja, joilla Angular-ohjelmistokehyksellä toteutettujen ohjelmien rakennetta voidaan parantaa tukemaan projektien muuttuvia vaatimuksia.
Työssä tutkittiin SOLID-periaatteita, joita soveltamalla ohjelmistoista saadaan joustavampia ja ylläpidettävämpiä. SOLID-lyhenne on muistisääntö viidelle suunnitteluperiaatteelle: yhden vastuualueen periaate, avoin/suljettu periaate, Liskovin korvattavuusperiaate, rajapintojen erotteluperiaate ja riippuvuuden kääntöperiaate. SOLID-periaatteita sovellettiin Angular-ohjelmistokehykselle ja TypeScript-ohjelmointikielelle sopivaksi. Angular-sovelluksien rakenteelle etsittiin ratkaisua hyödyntämällä Angular-moduuleita ja komponenttien vastuiden jakamiseen sovellettiin ”fiksuja” ja ”tyhmiä” komponentteja.
Opinnäytetyön tuloksena syntyi yleispätevä tutkimus Angular-ohjelmistokehyksen arkkitehtuurista ja jaottelusta. Tutkimuksen avulla voidaan kehittää Single Page-sovelluksia uusiokäyttämällä vanhoja komponentteja ja parantaa sovelluksen rakennetta ja suorituskykyä jakamalla toiminnallisuutta moduuleihin. Työssä esitelty projekti tarjoaa hyvän esimerkkirakenteen Angular-sovelluksille.
SOLID-periaatteita on mahdollista hyödyntää myös muissa olio-ohjelmointikielissä ja ”fiksu/tyhmä”-komponenttimallia voidaan soveltaa myös muissa komponenttipohjaista arkkitehtuuria tukevissa ohjelmistokehyksissä tai kirjastoissa.
Työssä tutkittiin SOLID-periaatteita, joita soveltamalla ohjelmistoista saadaan joustavampia ja ylläpidettävämpiä. SOLID-lyhenne on muistisääntö viidelle suunnitteluperiaatteelle: yhden vastuualueen periaate, avoin/suljettu periaate, Liskovin korvattavuusperiaate, rajapintojen erotteluperiaate ja riippuvuuden kääntöperiaate. SOLID-periaatteita sovellettiin Angular-ohjelmistokehykselle ja TypeScript-ohjelmointikielelle sopivaksi. Angular-sovelluksien rakenteelle etsittiin ratkaisua hyödyntämällä Angular-moduuleita ja komponenttien vastuiden jakamiseen sovellettiin ”fiksuja” ja ”tyhmiä” komponentteja.
Opinnäytetyön tuloksena syntyi yleispätevä tutkimus Angular-ohjelmistokehyksen arkkitehtuurista ja jaottelusta. Tutkimuksen avulla voidaan kehittää Single Page-sovelluksia uusiokäyttämällä vanhoja komponentteja ja parantaa sovelluksen rakennetta ja suorituskykyä jakamalla toiminnallisuutta moduuleihin. Työssä esitelty projekti tarjoaa hyvän esimerkkirakenteen Angular-sovelluksille.
SOLID-periaatteita on mahdollista hyödyntää myös muissa olio-ohjelmointikielissä ja ”fiksu/tyhmä”-komponenttimallia voidaan soveltaa myös muissa komponenttipohjaista arkkitehtuuria tukevissa ohjelmistokehyksissä tai kirjastoissa.