Premium Partner

Abend 7: 22.06.2016 TypeScript & Engineering Prinzipien in JS

TypeScript & Engineering Prinzipien in JS

TypeScript & Engineering Prinzipien in JS


Set of flashcards Details

Flashcards 15
Language Deutsch
Category Computer Science
Level University
Created / Updated 13.11.2016 / 09.01.2018
Licencing Not defined
Weblink
https://card2brain.ch/box/abend_7_22_06_2016_typescript_engineering_prinzipien_in_js
Embed
<iframe src="https://card2brain.ch/box/abend_7_22_06_2016_typescript_engineering_prinzipien_in_js/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Was ist bzw. was definiert Typescript?

- ist ein Super Set von JavaScript und wird schlussendlich zu normalen JavaScript kompiliert

- fügt der Web Entwicklung Typensicherheit hinzu, welches es gerade grösseren Teams eine grosse Hilfe ist

- ermöglicht es Entwicklern bereits heute Features von zukünftigen Sprachdefinitionen wie ECMAScript 2015 zu verwenden

Wie können Klassen in TypeScript in anderen Klassen verwendet werden?

Die Klasse welche man in einer anderen Klasse verwenden möchte, muss mit dem export Statement deklariert werden damit diese überhaupt importiert werden kann. Bein Import kann dann diese Klasse mit dem import Statement und der entsprechenden Pfadangabe in eine andere Klasse importiert werden.

Export:

export class StringValidator {
    // validate some strings
}

oder:

class StringValidator {
    // validate some strings
}
export { StringValidator };


Import:

import { StringValidator } from "./StringValidator";

let myValidator = new StringValidator();

Welcher Module Loader wird von TypeScript unterstützt?

a) CommonJS

b) RequireJS

c) SystemJS

d) ES6

e) isomorphic

alle

Dies kann in der tsconfig.json eingestellt werden oder in der Command Line per Parameter.

Welches ist kein Dependency Management Tool?

Was sind Typescript Generics und wozu dienen sie? Implementiere ein Beispiel

Typescripts Generics sind parametrisierte Typen. Die Idee dahinter ist, zusätzliche Variablen für Typen einzuführen. Diese Typ-Variablen repräsentieren zum Zeitpunkt der Implementierung unbekannte Typen. Erst bei der Verwendung der Klassen, Schnittstellen und Methoden werden diese Typ-Variablen durch konkrete Typen ersetzt. Damit kann typsichere und generische Programmierung gewährleistet werden.

Beispiel:

Ohne Generics

function identity(arg: number): number {
    return arg;
}

Mit Generics

function identity<T>(arg: T): T {
    return arg;
}


Anwendung

let output = identity<string>("myString");  // type of output will be 'string'

oder

let output = identity("myString");  // type of output will be 'string'

// Here we use type argument inference, that is, we want the compiler to set the value of T for us automatically based on the type of the argument we pass in

Wie kann in Typescript Strings mit Information von Objekten angereichert werden?

Mit Template Strings (Backtick)

let helloWorldText : string = "Hello World";
let html : string = `<div>${helloWorldText}</div>`;

Welche Basistypen gibt es in Typescript ?

  • boolean
  • number
  • string
  • Array
  • Tuple
  • Enum
  • void
  • any

Was ist der Unterschied bei der Deklaration von Variablen mit var, let und constant

var foo = 1;

Deklaration von Variablen, sollte aufgrund der Scoping Probleme nicht mehr verwendet werden.

 

let foo = 1;

Deklaration von Variablen welche strikte block-scoping regeln befolgen.

 

constant foo = 1;

Deklaration von Variablen wie mit let, welche jedoch nicht verändert werden können.