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.