Jeg har gjort disse svarene matche C # som du har nevnt at i spørsmålet ditt, men forhåpentligvis svarene er nyttig for folk som kommer til Loggfila fra lignende språk også.
Interface
Et grensesnitt Loggfila er lik de du har kommet over i C #. Det er en kontrakt - hvis en av klassene implementerer et grensesnitt, lover det å ha visse egenskaper eller metoder at grensesnittet dokumenter.
I Loggfila et grensesnitt kan arve fra en annen grensesnitt for å utvide den og fra en klasse til fange gjennomføringen.
Når noe virker umulig i maskinskrevet manuskript, kan du vanligvis løse det med et grensesnitt!
I maskinskrevet manuskript, grensesnitt har et bredt spekter av bruksområder. De beskriver en struktur, så kan brukes hvor som helst du bruker en type (dvs. ikke bare for å implementere dem i en klasse, kan du bruke dem til å skrive variabler, parametre, returverdier og så videre).
Klasse
Dette er svært lik konseptet med en klasse i C #. Du kan arve fra andre klasser for å utvide eller spesialisere atferden.
namespace
Den nyere navnerom nøkkelordet brukes til å plassere en gruppe av kode i et begrenset omfang. Dette ligner på C # navnerom.
modul
Moduler er bedre enn navnerom når det gjelder typescript. En modul (tidligere kjent som en ekstern modul) er en fil som er selvbetjente og legger ingenting til globalt omfang. Du kan laste moduler i lokale variabler som du trenger dem. Moduler gir en god måte å organisere koden og last deler på bestilling. Ved bruk av moduler, er det best å unngå å bruke navnerom. Moduler er bedre enn navnerom.
Program
Et program er en samling av moduler, klasser. Dette er egentlig den tingen du har skrevet med typescript.
Funksjon / Metode
Klasser inneholder metoder, og du kan også skrive frittstående funksjoner som ikke tilhører en klasse.
Erklærer vs. Var
varoppretter en ny variabel. declarebrukes til å fortelle Loggfila at variabelen har blitt opprettet andre steder. Hvis du bruker declare, blir ingenting lagt til Javascript som er generert - det er bare et hint til kompilatoren.
For eksempel, hvis du bruker en ekstern skript som definerer var externalModule, vil du bruke declare var externalModuletil å hint til Loggfila kompilator som externalModuleallerede er satt opp.