J'ai fait ces réponses correspondent à C # que vous avez mentionné que, dans votre question, mais nous espérons que les réponses sont utiles aux personnes qui viennent à tapuscrit des langues similaires aussi.
Interface
Une interface dactylographiée est similaire à ceux que vous avez rencontré en C #. Il est un contrat - si l'un de vos classes implémente une interface, il promet d'avoir certaines propriétés ou méthodes que les documents d'interface.
Dans tapuscrit une interface peut hériter d'une autre interface afin d'étendre et d'une classe pour capturer sa mise en œuvre.
Chaque fois que quelque chose semble impossible dactylographiée, vous pouvez généralement résoudre avec une interface!
Dactylographiée, les interfaces ont une large gamme d'utilisations. Ils décrivent une structure, peut donc être utilisé partout où vous utilisez un type (non seulement pour les mettre en œuvre dans une classe, vous pouvez les utiliser pour saisir des variables, des paramètres, des valeurs de retour et ainsi de suite).
Classe
Ceci est très similaire au concept d'une classe en C #. Vous pouvez hériter d'autres classes d'étendre ou de spécialiser le comportement.
namespace
Le mot-clé de l'espace de noms plus récent est utilisé pour placer un groupe de code dans une portée limitée. Ceci est similaire à C # namespaces.
Module
Les modules sont mieux que les espaces de noms en matière de tapuscrit. Un module (anciennement connu sous le nom d'un module externe) est un fichier qui est autonome et ajoute rien à votre portée globale. Vous pouvez charger des modules dans des variables locales que vous avez besoin. Les modules offrent une bonne façon d'organiser vos parties de code et de charge sur demande. Lors de l'utilisation des modules, il est préférable d'éviter d'utiliser les espaces de noms. Les modules sont mieux que les espaces de noms.
Programme
Un programme est un ensemble de modules, des classes. Ceci est essentiellement la chose que vous avez écrit en utilisant tapuscrit.
Fonction / Méthode
Les classes contiennent des méthodes, et vous pouvez également écrire des fonctions autonomes qui ne font pas partie d'une classe.
Déclarer vs var
varcrée une nouvelle variable. declareest utilisé pour dire tapuscrit que la variable a été créé ailleurs. Si vous utilisez declare, rien est ajouté au JavaScript généré - il est tout simplement une indication pour le compilateur.
Par exemple, si vous utilisez un script externe qui définit var externalModule, vous pouvez utiliser declare var externalModulepour faire allusion au compilateur dactylographiée qui externalModulea déjà été mis en place.