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
_version_ 1826225801423486977
author Mäkelä, Samuli
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Mäkelä, Samuli Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Mäkelä, Samuli Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Mäkelä, Samuli
datasource_str_mv jyx
description 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.
first_indexed 2024-09-11T08:50:50Z
format Kandityö
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Tiihonen, Timo", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "M\u00e4kel\u00e4, Samuli", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2023-05-17T10:20:17Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2023-05-17T10:20:17Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2023", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/87014", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Yksi t\u00e4rkeimmist\u00e4 ohjelmointikielen osista on sen tyyppisysteemi, ja siit\u00e4, ett\u00e4\nmink\u00e4lainen tyyppisysteemi on paras v\u00e4itell\u00e4\u00e4n paljon. T\u00e4ss\u00e4 tutkielmassa k\u00e4sitell\u00e4\u00e4n staattisen ja dynaamisen tyyppisysteemin vaikutusta ohjelmointinopeuteen ja ohjelmavirheiden\ntunnistamiseen. Tutkimuksissa l\u00f6ydettiin, ett\u00e4 dynaamisilla kielill\u00e4 ohjelmointi on nopeampaa vain pienempi\u00e4 tai yksinkertaisempia ohjelmia tehdess\u00e4, ja muuten staattiset kielet ovat\nnopeampia tai yht\u00e4 nopeita kun dynaamiset kielet. Lis\u00e4ksi l\u00f6ydettiin, ett\u00e4 tyyppivirheit\u00e4 saa\nstaattisilla kielill\u00e4 korjattua enemm\u00e4n kuin dynaamisilla, mutta semanttisten virheiden korjaamisessa ei ole eroa.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "On of the most important parts of a programming language is its type system, and\nthere is much debate about which kind of type system is the best. This thesis examines the\nimpact 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\nmaking smaller or simpler programs, and otherwise static languages are faster or as fast as\ndynamic languages. It was also found that static languages can fix more type errors than\ndynamic languages, but for fixing semantic errors there is no difference.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Paivi Vuorio (paelvuor@jyu.fi) on 2023-05-17T10:20:16Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2023-05-17T10:20:17Z (GMT). No. of bitstreams: 0\n Previous issue date: 2023", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "13", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.subject.other", "value": "tyyppisysteemit", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.title", "value": "Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "bachelor thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202305173078", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Bachelor's thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Kandidaatinty\u00f6", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietotekniikka", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Mathematical Information Technology", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_7a1f", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "bachelorThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "602", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmistokehitys", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmointikielet", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmointi", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "tietotekniikka", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}]
id jyx.123456789_87014
language fin
last_indexed 2025-02-18T10:56:32Z
main_date 2023-01-01T00:00:00Z
main_date_str 2023
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/ce57bebb-7b5d-4c38-8652-71b3fe01e9f7\/download","text":"URN:NBN:fi:jyu-202305173078.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2023
record_format qdc
source_str_mv jyx
spellingShingle Mäkelä, Samuli Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen tyyppisysteemit Tietotekniikka Mathematical Information Technology 602 ohjelmistokehitys ohjelmointikielet ohjelmointi tietotekniikka
title Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_full Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_fullStr Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_full_unstemmed Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_short Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_sort staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
title_txtP Staattisen ja dynaamisen tyyppisysteemin vaikutus ohjelman kehitykseen
topic tyyppisysteemit Tietotekniikka Mathematical Information Technology 602 ohjelmistokehitys ohjelmointikielet ohjelmointi tietotekniikka
topic_facet 602 Mathematical Information Technology Tietotekniikka ohjelmistokehitys ohjelmointi ohjelmointikielet tietotekniikka tyyppisysteemit
url https://jyx.jyu.fi/handle/123456789/87014 http://www.urn.fi/URN:NBN:fi:jyu-202305173078
work_keys_str_mv AT mäkeläsamuli staattisenjadynaamisentyyppisysteeminvaikutusohjelmankehitykseen