Ohjelmointikielten tyyppijärjestelmien vaikutukset sovelluskehitykseen
No Thumbnail Available
Files
Köngäs_Konsta_2024.pdf (210.42 KB) (opens in new window)
Aalto login required (access for Aalto Staff only).
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.
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
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, LauriThesis advisor
Rintanen, JussiKeywords
ohjelmointikielet, tyyppijärjestelmä, tyypitys, sovelluskehitys, ohjelmistokehitys, ohjelmointi