Hvordan komme i gang med Ttescript

Sep 14, 2025
hvordan
[1. 3]

TypeScript er en av en gruppe språk som bruker Javascript. Runtime som utførelsesmiljø: .Ts-filer som inneholder typeskriptkode, er samlet inn i normalt JavaScript, som deretter kan kjøres av nettleseren.

Jeremy Ashkenas gjorde først dette konseptet populært med sitt kaffe, men dessverre var det relativt terse syntaks vanskelig å lære for utviklere kjent med C # eller Visual Basic.

Som Microsoft utvidet seg til Web 2.0-teknologier, valgte det å ta inspirasjon fra Jeremy Ashkenas. På grunn av evnen til Visual Studio, kan utviklere bare hacke bort mens de drev ut fra de ulike språkforlengelsene.

Tescript er ikke begrenset til statisk skriving: Den leveres også med en rekke avanserte funksjoner som lar deg simulere objektorienterte programmeringsparadigmer på nettet. Denne korte guiden tar deg gjennom noen av sine viktige funksjoner. Hvis språket appellerer til deg, kan mer informasjon læres på fly.

01. Installer Visual Studio

Visual Studio 2017 comes with a new installer; the required features are split into payloads to make deployment easier

Visual Studio 2017 kommer med en ny installatør; De nødvendige funksjonene er delt inn i nyttelastene for å gjøre distribusjonen enklere

Selv om typekrypter kan også brukes på Linux eller MacOS, holder vi oss til Microsofts offisielle IDE. Last ned den gratis samfunnsutgaven av Visual Studio 2017 fra Microsoft, her , og sørg for å merke ASP.NET nyttelast under distribusjon.

02. Legg til SDK

På grunn av den raske løsningen kadence av typekrav, må visuelt studio utvides med en SDK-modul, som kan lastes ned fra Microsoft-siden her . Bare kjør installatøren som om det var et standard Windows-program.

03. Last ned typekryp, for ekte

Det ville ikke være Microsoft hvis det ikke var noen ekstra stresset involvert: Mens SDK oppgraderer din Visual Studio-installasjon, blir den faktiske TSC-kompilatoren ikke lagt til din kommandolinje. Dette problemet er best løst ved å bruke Node.Js NPM-pakkeadministrator på kommandolinjen.

PS C: \ Brukere \ Tamha \ Nedlastinger & GT; NPM Installer -G TypeCript

C: \ brukere \ tamha \ appdata \ roaming \ npm \ tsc - & gt; C: \ Brukere \ Tamha \ AppData \ Roaming \ npm \ node_moduler \ typescript \ bin \ tsc

C: \ brukere \ tamha \ appdata \ roaming \ npm \ tsServer - & gt; C: \ Users \ tamha \ applata \ roaming \ npm \ node_modules \ typescript \ bin \ tsServer

C: \ Brukere \ Tamha \ AppData \ Roaming \ npm

`- [email protected].

04. Bryt ut av prosjektet

Visual Studio forventer å jobbe i en løsning-sentrert prosess: Mens interessant, er dette mindre enn ideelt for våre behov. I stedet lager du en fil som heter Worker.ts og plasser den på et passende sted i filsystemet ditt. Åpne den ved å dra den til Visual Studio, og slipp den inne i verktøylinjen på toppen. Deretter endrer innholdet til å inkludere følgende kode:

 Funksjon Sayoi () {
  våken ("oi!");
}
Sayoi (); 

05. Opprett et inngangspunkt

Som nevnt i introduksjonen, kan en .TS-fil ikke gjøre mye på egen hånd. På grunn av det, fortsett å lage en fil som heter index.html, som må være plassert i samme mappe. Deretter legger du til skjelettkoden vist som følger med dette trinnet. Den laster kompilatorens utgang, og kjører det som om det var noe annet Javascript.

 & lt; html & gt;
  & lt; head & gt;
  & lt; script src = "worker.js" & gt; & lt; / script & gt;
  & lt; / head & gt;
  & lt; body & gt; & lt; / body & gt;
& lt; / html & gt; 

06. Kompilere og løp

Det neste trinnet innebærer manuell kompilering av .TS-filen. Åpne PowerShell, og skriv inn TSC-kommandoen etterfulgt av navnet på inngangsfilen. Som standard vil utdatafilen dele basisfilnavnet, men vil ha en forlengelse av .js i stedet for .ts. Til slutt åpner du index.html-filen i en nettleser for å bevise utseendet på meldingsboksen.

 PS C: \ Brukere \ Tamha \ Nedlastinger & GT; TSC. \ WORKER.TS 

07. Få skrevet

Use this reference table to find basic static types

Bruk dette referansetabellen for å finne grunnleggende statiske typer

Så langt har TightScript gjort litt mer enn å fungere som et mer komplekst JavaScript-miljø. Det neste trinnet innebærer å aktivere støtten til statisk skriving: den gjør det mulig for kompilatoren å utføre statisk analyse av parametere, og holde ut ugyldige verdier. For dette er det nødvendig med et sett med typer - grunnleggende typer er oppført i tabellen ovenfor, mens klassene vil bli diskutert senere.

08. Prøv det ut

In normal JavaScript, this error would be found only when the line in question gets invoked

I normalt JavaScript, vil denne feilen bare bli funnet når den aktuelle linjen blir påkalt

Typercript Variable Type-oppgaver finner sted via 'A:' plassert etter variabelenavnet. La oss endre OI-funksjonen for å ta et nummer, og la oss passere i en streng i stedet. Til slutt, påberope TSC-kompilatoren igjen for å feste øynene dine på feilmeldingen som er vist i skjermbildet for skjermbildet - Visual Studio, for øvrig, vil også markere den aktuelle linjen.

 Funksjon Sayoi (Whattosay: Nummer) {
  våken (Whattosay);
}
Sayoi ("Hei"); 

09. Unngå prototypen

JavaScript-implementerer Objektorientering via prototyping: En type kode som er uvanlig i. NET og C / C ++ verdener. TESTICRIPT løser dette problemet ved å tillate opprettelsen av klasser - en prosess som vises i stikket som følger med dette trinnet.

 Klasse Tenk deg {
  Offentlig MyResult: Nummer;
  Offentlig Mya: Nummer;
  Offentlig MYB: Nummer;
  Konstruktør (_A: Nummer, _b: Nummer)
  {
  This.Myresult = _A + _B;
  this.mya = _a;
  }
} 

10. Setter pris på publikum

The holding values created by setting the public attribute get populated automatically

Holdingsverdiene som er opprettet ved å sette det offentlige attributtet, fylles automatisk

Normalt brukes det offentlige attributtet til å erklære at et element i et program skal være tilgjengelig fra utsiden. Når det brukes som en konstruktørparameter, instruerer den i stedet typekryptens kompilator for å lage lokale felt med de samme navnene.

 Klasse Tenk deg {
  Offentlig MyResult: Nummer;
  // offentlig MYA: Nummer;
  Constructor (offentlig MYA: Nummer, Public _B: Nummer)
  {
  this.myresult = mya + _b;
  this.mya = mya;
  }
} 

11. Metode og forekomst

La oss utvide vår eksempelklasse ved å gi den en metode som får tilgang til verdiene som er lagret i Myresult og Mya, og utdata dem på skjermen. Endelig brukes den nye parameteren til å skape en forekomst av klassen - den brukes til å påkalle metoden.

 Klasse Tenk deg {
  Offentlig MyResult: Nummer;
  . . .
  Offentlig Saidomething (): Void {
  våken (denne .myresultet);
  }
}
La Myimagine: Tenk deg = Ny Imagine (2, 2);
Myimagine.Sayomething (); 

12. Bruk sine magiske egenskaper

Tytercripts språkdesign er ment å redde utviklere så mye innsats som mulig. En fin funksjon er auto-populasjonen av parametere som er opprettet ved hjelp av snarveien vist.

 Klasse Tenk deg {
  Offentlig MyResult: Nummer;
  Constructor (offentlig MYA: Nummer, Offentlig MYB: Nummer)
  {
  this.myresult = mya + myb;
  }
  Offentlig Saidomething (): Void {
  våken (dette.mya + "" + denne.MYB);
  }
} 

13. Utfør arv

Our small example program proves that TypeScript satisfies the core tenets of object inheritance

Vårt små eksempelprogram viser at typekryptene tilfredsstiller kjernefasene i objektets arv

En av kjernefasen av objektorientert programmering innebærer å basere klasser på toppen av hverandre. Avledede klasser kan da overdra seg innholdet i basenklassen, noe som fører til fleksibelt justerbare klassehierarkier.

 Class Future Extends Tenk deg
{
  Offentlig Saidomething (): Void {
  konsoll.log (dette.mya);
  }
} 

14. Analyser overskriften

Kodeutklippet fra ovenfor utvidet den forestillede klassen med et underelement som heter Fremtid. Fremtiden varierer fra å forestille seg at dens regnehjelpsmetode, som blir mer utviklet, sender en melding i nettleserenes kommandolinje.

 La Myimagine: Tenk deg = Ny fremtid (2, 2);
myimagine.Sayomething ();
La myfuture: Future = Ny fremtid (9, 9);
myfuture.Sayomething (); 

15. Analyser overskrivet, reduksjonen

Med det kan den faktiske koden testes. Når du kjører, vil nettleserkonsollen inneholde to påkallinger av fremtid - den avanserte klassen holder egenskapene selv når de påberopes som en forestilling.

16. Begrenset tilgang

Eksponering av medlemsvariabler med den offentlige modifikatoren er upopulær: Det tar imot mest kontroll av hvilke brukere som gjør med variabelsens innhold. Typecript Accessors lar deg jobbe rundt dette problemet på en måte som ligner på tradisjonell OOP. Vær oppmerksom på at skrivebeskyttet medlemmer også støttes, men at bruken av denne funksjonen krever aktivering av ECMAScript5-støtte.

 Offentlig _Mycache: String;
  Få fullcache (): streng {
  returnere dette._mycache;
  }
  Angi fullcache (newx: streng) {
  hvis (newx == "hei") {
  this._mycache = newx;
  }
  ellers {
  konsoll.log ("Feil data!");
  }
  } 

17. Gjør det abstrakt

Evnen til å skape komplekse arvehierarkier vil motivere utviklere til å prøve lykken på abstrakte klasser. TypeScript har også dekket i den forbindelse - eksemplet som følger med dette trinnet, skaper en klasse med et abstrakt og et ekte medlem. Å forsøke å instantiere den abstrakte klassen fører direkte til en kompilatorfeil.

 Abstrakt klasse Tenk deg {
  Offentlig MyResult: Nummer;
  Abstrakt Sayname (): Void;
  Constructor (offentlig MYA: Nummer, Offentlig MYB: Nummer) {
  this.myresult = mya + myb;
  }
  Offentlig Saidomething (): Void {
  våken (dette.mya + "" + denne.MYB);
  }
}
Klasse Future Extends forestiller deg {
  . . .
  offentlig sayname () {
  Console.log ("Hei");
  }
} 

18. Lag et grensesnitt

Etter hvert som objektstrukturer blir mer komplekse, finner utviklere ofte seg overfor situasjoner der en klasse implementerer flere biter av logikk. I så fall gir et grensesnitt til en fin løsning - eksemplet viser hva du kan forvente.

 grensesnitt datapainterface {
  felt: nummer;
  arbeidermetode (): ugyldig;
} 

19. Implementere det

Som i tilfelle av klassen ovenfor, gjør et grensesnitt oss ikke bra hvis vi ikke kan bruke den. Heldigvis er implementeringen ikke særlig vanskelig: Vær oppmerksom på at grensesnittforfattere kan, dessuten, erklære deler av deres skaperverk for å være valgfrie.

 Klassearbeider implementerer DATAINTERFACE {
  felt: nummer;
  arbeidermetode (): ugyldig {
  kaste ny feil ("metode ikke implementert.");
  }
  } 

20. Bruk en generisk klasse

Ttescript-kompilatoren håndhever streng variabel gyldighetskontroll. Når du arbeider med en lagringsklasse, lar generikere deg la sluttbrukeren bestemme typen som skal håndteres. Videre tillater typekryptering også andre generiske elementer som funksjoner, som vist i (tautologisk) kastet fra dokumentasjonen.

 // Generisk funksjon
Funksjonsidentitet (Arg: Nummer): Nummer {
  returnere arg;
}
// generisk klasse
klasse genericnummer & lt; t & gt; {
  Zerovalue: T;
  Legg til: (x: t, y: t) = & gt; T; } 

21. Et spørsmål om opptelling

Statsmaskiner og lignende elementer har stor fordel fra å ha en måte å begrense en variabel for å lagre noen veldefinerte stater. Dette kan oppnås ved hjelp av ENUM-datatype:

 enum parserstate {
  Tomgang = 1,
  Read0,
  Les1.
}
Klasse forestiller seg {
  Offentlig mystat: Parserstate;
  Constructor (offentlig MYA: Nummer, Offentlig MYB: Nummer)
  {
this.mystate = parserstate.idle; 

22. Lær mer

Dekker et språk som komplisert som typekrypter i en enkelt artikkel er nesten umulig. Se på Tescript Site eksempler for å finne ut mer om språkbindinger.

Denne artikkelen ble opprinnelig publisert i utgave 266 Webdesigner , Creative Web Design Magazine - tilbyr ekspert opplæringsprogrammer, banebrytende trender og gratis ressurser. Kjøp problem 266 her eller Abonner på webdesigner her .

Spesielt juletilbud: Spar opptil 49% på et abonnement på webdesigner for deg eller en venn til julen. Det er et begrenset tilbud, så flytte raskt ...

Relaterte artikler:

  • 20 JavaScript-verktøy for å blåse ditt sinn
  • Lær å gjøre JavaScript tilgjengelig
  • 12 Vanlige JavaScript-spørsmål besvart

hvordan - Mest populære artikler

Instagram Reels Tutorial: En nybegynnerguide

hvordan Sep 14, 2025

[1. 3] (Bilde Kreditt: Facebook) Denne Instagram Reels Tutorial vil få deg til å bruke videofunksjonen som en proff...


Hvordan tegne en ulv

hvordan Sep 14, 2025

Hvis du har mestret Hvordan tegne en hund , du vil bli tilgitt for å tro at du enkelt ville kunne tegne en ulv også. Mens du er i stand ti..


Affinity Designer: Slik bruker du pennverktøyet

hvordan Sep 14, 2025

Det trenger liten introduksjon, men Affinity Designer er en serie med Vector Art Redigeringsverktøy tilgjengelig for Mac / Windows og nå også på iPad. . Dette Grafi..


En introduksjon til frontend testing

hvordan Sep 14, 2025

[1. 3] Side 1 av 2: Ulike typer frontend tester (og når du skal bruke dem) ..


Hvordan jobbe med HTML-video

hvordan Sep 14, 2025

[1. 3] Flytt over YouTube ... med & lt; video & gt; element og litt Javascript. , Du kan begynne å lage di..


Hvordan simulere eksplosjoner i Maya

hvordan Sep 14, 2025

[1. 3] Side 1 av 2: Side 1 Side 1 Side 2 ..


Hemmeligheten til å male som Monet

hvordan Sep 14, 2025

[1. 3] Med denne masterclassen vil vi forsøke å komme inn i hodet til Monet litt, så vi kan tenke og male i sin stil. Men ikke ..


Bruk partikler til å lage et 3D-splash

hvordan Sep 14, 2025

[1. 3] Denne opplæringen vil ta en titt på hvordan du kan lage en flytende sprut, eller kroneffekt, og kan brukes til å lage sp..


Kategorier