TypeScript har mange fordeler i forhold til JavaScript, men hvordan kan du migrere fra førstnevnte til sistnevnte? Dette er hvordan.

JavaScript ble opprinnelig utgitt i 1995 etter en forbløffende kort utviklingsperiode, og har siden blitt en integrert del av mange nettsteder og apper. I dag har JavaScript funnet et hjem i både klient- og serversideapplikasjoner. Utviklere ber fortsatt om mange funksjoner, til tross for alle endringene de har opplevd gjennom årene.

TypeScript er et skriptspråk som utvider JavaScript med mange av disse etterlengtede funksjonene. Typekommentarer, tilpasset skriving og grensesnitt er alle hovedkomponenter, sammen med bedre verktøy for å øke produktiviteten.

Hvorfor bry å bytte?

Utsiktene til å bytte ut språk på store prosjekter kan være stressende. Heldigvis for alle som vurderer oppgaven, er prosessen med å portere et prosjekt fra JavaScript til TypeScript ganske enkel.

JavaScript har brukt de siste årene på å få gjennomslag som et viktig programmeringsspråk. Opprinnelig brukt kun for front-end-skripting på nettsteder, utgivelsen av Node.js brakte JavaScript-serversiden, og bidro til å utvide populariteten.

Mens JavaScript har blitt langt mer populært i det siste, er det mange funksjoner som den siste implementeringen, ES6, fortsatt mangler. For mange utviklere begrenser disse manglende funksjonene nytten av JavaScript som språk.

TypeScript tar sikte på å rette opp disse bekymringene ved å pakke inn JavaScript med ekstra funksjoner, og deretter transpilere brukerkode. Resultatet er et typesikkert språk med enkelheten og brukervennligheten til JavaScript.

Det er allerede flere verktøy og rammeverk der ute med full TypeScript-støtte. Angular har brukt det lenge, og til og med React har måter å implementere TypeScript på.

TypeScript er som JavaScript-forbedret

TypeScript implementerer mange av funksjonene som utviklere ofte ber om i JavaScript. TypeScript er oppkalt etter det komplette typesystemet det implementerer, inkludert funksjoner som typekontroll, sikkerhet og implisitt skriving. TypeScript lar deg til og med definere og bruke egendefinerte navnerom.

TypeScript inneholder også grensesnitt, oppregninger og typeslutninger. TypeScript opprettholder støtte for funksjoner fra den nyeste JavaScript-implementeringen sammen med eldre funksjoner, og legger til en rekke nye funksjoner.

Totalt sett er TypeScripts fokus på å skape en sikrere utviklingsprosess med sterkere verktøy for å hjelpe kodere.

Det oppmuntrer til typesikker kode

TypeScript bruker et innebygd typekontrollsystem for å validere variabeltyper. Den inkluderer et sett med standardtyper med mulighet til å definere dine egne klasser og typer. Typer kan deklareres eksplisitt, eller utledes basert på tildeling.

TypeScript har flere standard datatyper, inkludert strenger, tall, booleaner og tupler. Det er også variabeltyper, som ukjente og andre, som lar deg bruke svakt skrevet kode.

TypeScripts typeslutning lar deg kjøre typesjekker på til og med standard JavaScript-kode ved å kjøre den gjennom TypeScripts transpiler.

Transpilering gjør det enkelt å bruke

Fra et utviklerperspektiv er en av de beste egenskapene til TypeScript at den gir vanilje JavaScript. Du kan kjøre TypeScript-kode gjennom en prosess kjent som transpilering, som ligner på kompilering.

I stedet for en kjørbar fil, er resultatet av transpilering et skript på et annet språk enn kodens originale.

TypeScript-kode overføres til JavaScript som du deretter kan kjøre på en server eller klient. Dette lar deg raskt og enkelt skrive kode som du kan kjøre på nesten hvilken som helst plattform.

TypeScript hjelper utviklernes produktivitet

Å legge til typer i JavaScript lar ikke bare kode kjøre trygt, det gir også utviklere verktøy som gjør koding enklere. De fleste moderne IDE-er tilbyr TypeScript-støtte som lar kodefullføringsverktøy som IntelliSense tilby ekstra kontekst til kode. Den kan også tilby typekontroll mens du skriver, og hjelpe deg med å fange opp feil raskere.

I tillegg er TypeScripts ekstra datastrukturer og syntaks designet for å øke kodelesbarheten. Disse funksjonene gjør det raskere og enklere å lage kode av høy kvalitet og oppdage potensielle problemer før de blir problematiske.

Hvordan kan du portere koden din?

Hvis du starter et helt nytt prosjekt, opprette et nytt TypeScript-prosjekt er ganske enkelt. Konvertering av et eksisterende prosjekt til TypeScript er imidlertid litt mer involvert.

Under de fleste normale omstendigheter er utsiktene til å konvertere et prosjekt fra ett språk til et annet skremmende. Konverteringen fra JavaScript til TypeScript er imidlertid overraskende enkel.

TypeScript som et supersett av JavaScript

TypeScript regnes som et supersett av JavaScript. Det betyr at TypeScript legger til flere lag med syntaks og funksjonalitet, uten å endre eller fjerne kjernefunksjonaliteten den bygger rundt.

For utviklere betyr dette at all kode som kjører riktig i JavaScript, automatisk kjøres riktig i TypeScript. Enten det aktuelle skriptet er en webserver skrevet for å kjøre i NodeJS, eller et sett med front-end-skript for en nettside, er det eksepsjonelt enkelt å bytte.

Etter å ha installert TypeScript-transpileren, kan du lage en enkel tsconfig.json fil med følgende innhold:

{
"compilerOptions": {
"outDir": "./bygge",
"allowJs": ekte,
"mål": "es5"
},
"inkludere": ["./src/**/*"]
}

Flytt eventuelle aktuelle filer til src-katalogen og kjør transpileren. Dette vil opprette de resulterende JavaScript-filene i bygge katalog.

Disse raske og enkle endringene vil konvertere et standard JavaScript-prosjekt til et TypeScript-prosjekt. Herfra kan du bruke de nye funksjonene som TypeScript tilbyr når du vil. Du kan kommentere typer på variabler, implementere egendefinerte typer og definere grensesnitt.

Etter hver transpilering kan du bruke utdataene fra bygge katalogen etter behov ved å legge til filene i ethvert prosjekt akkurat som du vanligvis ville gjort. Transpilatoren vil skrive sjekk standard JavaScript og konvertere nye funksjoner til gyldige ES5-skript.

Hva du trenger å vite for å gå fra JS til TS

Prosessen med å konvertere et prosjekt fra JavaScript til TypeScript er usedvanlig enkel. Konvertering er så enkelt som å bytte ut katalogstrukturen, legge til en konfigurasjonsfil og installere transpileren.

Å få alle fordelene ut av det nye språket kan imidlertid være et mye lengre prosjekt. Mens TypeScript kan utlede typen av hver variabel i et prosjekt, bør disse deklareres eksplisitt. Det kan være tidkrevende å gå tilbake gjennom og legge til egendefinerte typer til et prosjekt, legge til riktige merknader og lage grensesnitt.

Å legge til disse funksjonene i et prosjekt vil imidlertid tillate deg å høste fordelene som følger med riktig typekontroll og utvidet verktøy. Store prosjekter vil være raskere og enklere å bygge, du vil identifisere feil tidligere, og nye utviklere vil ha lettere for å lese koden din.