Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen

Yksi tärkeimmistä ohjelmointikielen osista on sen tyyppisysteemi, ja siitä, että minkälainen tyyppisysteemi on paras väitellään paljon. Tässä tutkielmassa käsitellään staattisen ja dynaamisen tyyppisysteemin vaikutusta ohjelmointinopeuteen ja ohjelmavirheiden tunnistamiseen. Tutkimuksissa löydettiin...

Full description

Bibliographic Details
Main Author: Mäkelä, Samuli
Other Authors: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Format: Bachelor's thesis
Language:fin
Published: 2023
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/87014
Description
Summary:Yksi tärkeimmistä ohjelmointikielen osista on sen tyyppisysteemi, ja siitä, että minkälainen tyyppisysteemi on paras väitellään paljon. Tässä tutkielmassa käsitellään staattisen ja dynaamisen tyyppisysteemin vaikutusta ohjelmointinopeuteen ja ohjelmavirheiden tunnistamiseen. Tutkimuksissa löydettiin, että dynaamisilla kielillä ohjelmointi on nopeampaa vain pienempiä tai yksinkertaisempia ohjelmia tehdessä, ja muuten staattiset kielet ovat nopeampia tai yhtä nopeita kun dynaamiset kielet. Lisäksi löydettiin, että tyyppivirheitä saa staattisilla kielillä korjattua enemmän kuin dynaamisilla, mutta semanttisten virheiden korjaamisessa ei ole eroa. On of the most important parts of a programming language is its type system, and there is much debate about which kind of type system is the best. This thesis examines the impact of static and dynamic type systems on programming speed and detection of programming errors. Studies found that programming with dynamic languages is only faster when making smaller or simpler programs, and otherwise static languages are faster or as fast as dynamic languages. It was also found that static languages can fix more type errors than dynamic languages, but for fixing semantic errors there is no difference.