TypeScript

ohjelmointikieli From Wikipedia, the free encyclopedia

Remove ads

TypeScript on Microsoftin kehittämä ja ylläpitämä ohjelmointikieli, joka lisää valinnaisen staattisen tyypityksen JavaScriptiin. Se on suunniteltu suurten sovellusten kehittämiseen ja transpiloitavaksi JavaScriptiksi.[2] Koska JavaScript on TypeScriptin osajoukko, olemassa olevat JavaScript-ohjelmat ovat myös kelvollisia TypeScript-ohjelmia.

Pikafaktoja
Remove ads

Käyttö

TypeScriptiä voidaan käyttää JavaScript-sovellusten kehittämiseen sekä asiakas- että palvelinpäässä (kuten Node.js tai Deno). Transpilaatiossa on useita vaihtoehtoja. TypeScriptin oletustarkistusta voidaan käyttää[3] tai Babel-kääntäjän avulla TypeScript voidaan muuttaa JavaScriptiksi.

Ominaisuudet

TypeScript tukee määritystiedostoja, jotka voivat sisältää tyyppitietoja olemassa olevista JavaScript-kirjastoista, aivan kuten otsikkotiedostot voivat kuvata olemassa olevien objektitiedostojen rakennetta. Näin muut ohjelmat voivat käyttää tiedostoissa määritettyjä arvoja ikään kuin ne olisivat staattisesti kirjoitettuja TypeScript-kokonaisuuksia. Suosituille kirjastoille, kuten jQuerylle, MongoDB:lle ja D3.js:lle on kolmannen osapuolen otsikkotiedostoja. Jos kirjastolle ei ole saatavilla otsikkotiedostoja, ohjelmoijan on itse määriteltävä tyypit, jotta kirjastoa voisi käyttää. TypeScript-otsikot Node.js-perusmoduuleille ovat myös saatavilla, mikä mahdollistaa Node.js-ohjelmien kehittämisen TypeScriptissä.[4][5]

TypeScript-kääntäjä itse on kirjoitettu TypeScriptillä ja käännetty JavaScriptiksi. Se on lisensoitu Apache License 2.0 -lisenssillä. TypeScript on mukana ensiluokkaisena ohjelmointikielenä Microsoft Visual Studio 2013 Update 2:ssa ja uudemmissa C#:n ja muiden Microsoft-kielten ohella.[6] Virallinen laajennus mahdollistaa myös Visual Studio 2012:n tukemisen TypeScriptille.[7] Anders Hejlsberg, C#:n johtava arkkitehti ja Delphin ja Turbo Pascalin luoja, on työskennellyt TypeScriptin kehittämisen parissa.[8][9][10][11]

Remove ads

Rajoitukset

TypeScript-kääntäjä poistaa tyypit käännöksen aikana (engl. type erasure). Tyypitys siis antaa suojaa tyyppivirheitä vastaan kehityksen aikana, mutta ei takaa, että tyypit olisivat ajon aikana oikein.[5]

TypeScriptiä on kritisoitu vaikeasti tulkittavista tyyppivirheviesteistä.[5]

Esimerkki

// Määritellään uusi tyyppi taulukolle numeroita
type NumeroTaulukko = number[];

// Esitellään muuttuja joka on tyyppiä NumeroTaulukko
const minunNumerot: NumeroTaulukko = [0, 1, 2, 3, 4, 5];

// Jos yrität laittaa merkkijonon taulukkoon, TypeScript tulostaa virheen
// minunNumerot.push("Hei");

// Funktio joka ottaa NumeroTaulukko tyyppisen parametrin
function laskeYhteen(numerot: NumeroTaulukko): number {
  let summa = 0;
  for (const numero of numerot) {
    summa += numero;
  }
  return summa;
}

// Kutsutaan funktiota NumeroTaulukolla minunNumerot
const yhteensa = laskeYhteen(minunNumerot);

console.log(`Kokonaissumma on ${yhteensa}`);
Remove ads

Katso myös

Lähteet

Aiheesta muualla

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads