TypeScript

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání
TypeScript
TypeScript Logo.png
Paradigma skriptovací, objektový, strukturovaný, imperativní, funkcionální
Vznikl v 1. října 2012
Autor Microsoft
Vývojář Microsoft
Poslední verze 2.3.3 (22. května 2017)
Ovlivněn jazyky JavaScript, Java, C#
Ovlivnil jazyky AtScript
Licence Apache License 2.0
Web http://www.typescriptlang.org/

TypeScript je open-source programovací jazyk vytvořený a spravovaný firmou Microsoft. Jedná se o nadstavbu nad jazykem JavaScript, která jej rozšiřuje o statické typování a další atributy, které známe z objektově orientovaného programování (třídy, moduly, a další).

Samotný kód psaný v TypeScriptu se kompiluje do JavaScriptu. Jelikož je TypeScript nadstavbou nad JavaScriptem, je každý JavaScriptový kód automaticky validním TypeScript kódem.

TypeScript podporuje hlavičkové soubory, které mohou obsahovat informace o typech a rozhraních již existujících knihoven. Tím nám umožňuje používat externí knihovny, které nebyly napsány v TypeScriptu, včetně striktního typování. V tuto chvíli existují hlavičkové soubory pro známé knihovny jako jQuery, MongoDB, Node.js nebo D3.js.

Vlastnosti jazyka[editovat | editovat zdroj]

TypeScript je rozšířením standardu ECMAScript 5. Rozšiřujícími vlastnostmi jsou:

Anotace typů[editovat | editovat zdroj]

TypeScript nabízí statické typování prostřednictvím anotací umožňující typovou kontrolu při kompilaci. Tyto anotace jsou nepovinné a není třeba je použít, pokud chceme využívat dynamického typování.

function secti(a: number, b: number): number {
	return a + b;
}

Pro primitivní datové typy zavádí TypeScript anotace number, string a boolean. Pro dynamický typ lze použít anotaci any.

Anotace typů lze umístit do samostatného souboru, což umožňuje mj. používat uvnitř TypeScript kódu již existující JavaScriptové knihovny. Těm stačí pouze nadefinovat tyto anotace a využít tak statického typování.

Rozhraní[editovat | editovat zdroj]

interface IOsoba
{
	naRetezec(): string;
}


Třídy[editovat | editovat zdroj]

TypeScript podporuje třídy dle standardu ECMAScript 6.

class Osoba implements IOsoba
{
	private jmeno: string;
	private vek: number;
	private plat: number;

	constructor(jmeno: string, vek: number, plat: number) {
		this.jmeno = jmeno;
		this.vek = vek;
		this.plat = plat;
	}
    
	naRetezec(): string {
		return this.jmeno + " (" + this.vek + ")" + "(" + this.plat + ")";
	}
}

Genericita[editovat | editovat zdroj]

TypeScript podporuje Generické programování.

Moduly[editovat | editovat zdroj]

TypeScript umožňuje pomocí modulů zapouzdření tříd, rozhraní, funkcí a proměnných do vlastního jmenného prostoru.

module Organismy
{

	class Osoba {
		// ...
	}

}

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku TypeScript na anglické Wikipedii.


Externí odkazy[editovat | editovat zdroj]

Související články[editovat | editovat zdroj]