Ohjelmointikielten tyyppijärjestelmien vaikutukset sovelluskehitykseen

No Thumbnail Available

Files

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Bachelor's thesis
Electronic archive copy is available locally at the Harald Herlin Learning Centre. The staff of Aalto University has access to the electronic bachelor's theses by logging into Aaltodoc with their personal Aalto user ID. Read more about the availability of the bachelor's theses.

Date

2024-05-08

Department

Major/Subject

Tietotekniikka

Mcode

SCI3027

Degree programme

Teknistieteellinen kandidaattiohjelma

Language

fi

Pages

28

Series

Abstract

Työssä tutkitaan modernien ja yleisesti käytettyjen ohjelmointikielten tyyppijärjestelmien vaikutuksia sovelluskehitysprosessiin ja siinä tuotettuun ohjelmaan. Tyyppijärjestelmien vaikutuksia tarkastellaan viidestä eri näkökulmasta: suorituskyky, bugien määrä, lähdekoodin määrä, ohjelman kehitysaika ja bugien korjaamiseen kuluva aika. Työ on toteutettu kirjallisuustutkimuksena. Aiempien tutkimusten tuloksia yhdistelemällä työssä muodostetaan yleiskuva tyyppijärjestelmän vaikutuksista. Työssä osoitetaan, että tyyppijärjestelmillä on merkittäviä vaikutuksia sovelluskehitykseen. Työ myös osoittaa, että mikään tietty tyyppijärjestelmä ei ole kaikissa tilanteissa muita parempi, vaan eri tyyppijärjestelmä soveltuvat erilaisiin tehtäviin. Suorituskyvyn, bugien määrän ja bugien korjaamisen kannalta staattiset tyyppijärjestelmät osoittautuvat parhaaksi. Lähdekoodin määrä on puolestaan pienin dynaamisilla tyyppijärjestelmillä. Ohjelman kehitykseen käytetty aika riippuu voimakkaasti kehitysprojektin laajuudesta. Pienissä projekteissa dynaamiset tyyppijärjestelmät huomattavasti nopeuttavat kehitystä. Suurissa projekteissa staattiset tyyppijärjestelmät puolestaan merkittävästi nopeuttavat kehitystä dynaamisiin tyyppijärjestelmiin verrattuna. Tulokset tyyppijärjestelmien vahvuuden vaikutuksista eivät ole yhtä selviä. Vahvat tyyppijärjestelmät vaikuttavat aiheuttavan vähemmän bugeja heikkoihin tyyppijärjestelmiin verrattuna. Tyyppijärjestelmän vahvuudella ei näytä olevan suurta vaikutusta suorituskykyyn, mutta tulokset ovat osittain epäselvät. Muihin näkökulmiin tyyppijärjestelmän vahvuuden vaikutukset ovat epäselvät. Silti työn tulokset viittaavat siihen, että vahvat tyyppijärjestelmät ovat yleisesti heikkoja tyyppijärjestelmiä parempia.

Description

Supervisor

Savioja, Lauri

Thesis advisor

Rintanen, Jussi

Keywords

ohjelmointikielet, tyyppijärjestelmä, tyypitys, sovelluskehitys, ohjelmistokehitys, ohjelmointi

Other note

Citation