Hyppää sisältöön
    • Suomeksi
    • In English
Trepo
  • Suomeksi
  • In English
  • Kirjaudu
Näytä viite 
  •   Etusivu
  • Trepo
  • Kandidaatintutkielmat
  • Näytä viite
  •   Etusivu
  • Trepo
  • Kandidaatintutkielmat
  • Näytä viite
JavaScript is disabled for your browser. Some features of this site may not work without it.

JavaScriptistä siirtyminen TypeScriptiin

Nikkilä, Jaakko (2023)

 
Avaa tiedosto
NikkilaJaakko.pdf (339.0Kt)
Lataukset: 



Nikkilä, Jaakko
2023

Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2023-05-05
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202304254356
Tiivistelmä
Ohjelmointikieli TypeScriptin suosion kasvaessa ammattilaisten keskuudessa moni aloitteleva ohjelmoija, joka on käyttänyt JavaScriptiä, pohtii TypeScriptiin siirtymistä. Tässä työssä tarkastellaan, mitkä seikat tukevat ohjelmoijan siirtymistä JavaScriptistä TypeScriptiin ja mitkä eivät. Työ on tehty kirjallisuuskatsauksena ja lähteinä on käytetty lähinnä aiheesta kirjoitettua kirjallisuutta, mutta myös dokumentaatioita ja tilastoja on käytetty.

Työssä käydään läpi ohjelmointikielien taustaa, tyyppiannotaatioita, tyyppitiedostoja, luokkia ja rajapintoja. Nämä ovat tärkeimmät asiat, jotka ohjelmoijan tulee huomioida siirtyessään TypeScriptiin JavaScriptistä. TypeScriptissä on asteittainen tyyppijärjestelmä JavaScriptin dynaamisen tyypityksen sijaan. TypeScriptiin siirtyessä tulee myös vastaan tyyppitiedostot (eng. declaration file), niitä tarvitaan, kun käytetään ensimmäisen tai kolmannen osapuolen paketteja TypeScriptillä. TypeScript esittelee myös olio-ohjelmoinnin tärkeät ominaisuudet luokat ja rajapinnat.

Asteittainen tyyppijärjestelmä tuo ohjelmoijalle vapautta siirtyä TypeScriptiin vaivatta. Se mahdollistaa staattisen tyypityksen, mutta myös ”any”-luokan avulla koodia pystyy kirjoittamaan dynaamisesti tyypitettynä. Monien empiiristen tutkimuksien mukaan staattisen tyypityksen on näytetty parantavan ohjelman laatua, koodin ylläpidettävyyttä ja ymmärrettävyyttä ja myös mahdollisesti ohjelmoijan tuottavuutta. Tyyppitiedostojen osalta ohjelmoija joutuu tekemään päätöksen, jos paketti ei tue valmiiksi TypeScriptiä. Ohjelmoija voi valita kirjoittaako tyyppitiedoston itse vai käyttääkö esimerkiksi GitHubista löytyvää DefinitelyTyped-tyyppitiedostokirjastoa. Osan koodista voi myös kirjoittaa JavaScriptinä, jos tyyppitiedostot tuovat liikaa ongelmia. Luokat ja rajapinnat tuovat ohjelmoijalle uusia työkaluja, joilla koodista saa ymmärrettävämpää, uudelleenkäytettävämpää ja monipuolisempaa. Näitä uusia ominaisuuksia ovat muun muassa näkyvyysmääreet (eng. access modifiers), abstraktit luokat ja rajapinnat, rakentajien ylikuormitus ja vain luku -ominaisuus.

TypeScriptiin siirtymisen JavaScriptistä on tarkoitettu olevan sulava, ja työssä löydettiin tekijöitä, jotka edistävät tätä tavoitetta. Tyyppitiedostot saattavat luoda vaikeuksia ohjelmoijalle, mutta kuitenkin staattisen tyypityksen, luokkien ja rajapintojen tuomat edut ohjelman ylläpidettävyydestä ja laadusta ovat suurempia. Asteittainen tyyppijärjestelmä ja staattisen tyypityksen tuoma mahdollinen tuottavuuden paraneminen tekevät siirtymästä vaivattomampaa ja aikansa arvoista etenkin suuremmissa ohjelmissa.
Kokoelmat
  • Kandidaatintutkielmat [9820]
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste
 

 

Selaa kokoelmaa

TekijätNimekkeetTiedekunta (2019 -)Tiedekunta (- 2018)Tutkinto-ohjelmat ja opintosuunnatAvainsanatJulkaisuajatKokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste