Dynamické duo pro Web Dev
TypeScript se stává stále populárnějším programovacím jazykem v moderních firmách.
Je to kompilovaný, striktně typovaný nadstavbový jazyk JavaScriptu (postavený na JavaScriptu). Tento staticky typovaný jazyk, vyvinutý a spravovaný společností Microsoft, podporuje objektově orientované programování, podobně jako jeho základní jazyk JavaScript.
Tento open-source jazyk má široké využití, od vytváření webových aplikací po rozsáhlé a mobilní aplikace. TypeScript je vhodný pro vývoj frontendu i backendu. Nabízí také řadu frameworků a knihoven, které usnadňují vývoj a rozšiřují jeho možnosti použití.
Proč byste měli používat TypeScript s Node.js? Tento článek se zabývá tím, proč je TypeScript považován za "lepší" než JavaScript, jak jej nainstalovat s Node.js, jak ho nakonfigurovat a jak vytvořit jednoduchý program s TypeScriptem a Node.js.
TypeScript s Node.js: Přednosti
- Volitelné statické typování: JavaScript je dynamicky typovaný, což znamená, že typ proměnné se určuje za běhu, nikoli při kompilaci. TypeScript nabízí volitelné statické typování, kde typ proměnné je určen při deklaraci a nelze jej později změnit.
- Předvídatelnost: S TypeScriptem si můžete být jisti, že definované typy proměnných zůstanou konzistentní. Například, pokud deklarujete proměnnou jako booleovskou, nemůže se později změnit na řetězec. Tato stabilita se vztahuje i na definice funkcí.
- Včasné odhalování chyb: TypeScript dokáže detekovat většinu chyb souvisejících s typy již v rané fázi vývoje. Tím se snižuje pravděpodobnost, že se tyto chyby dostanou do produkčního prostředí, což šetří čas vývojářů při testování kódu.
- Podpora v mnoha IDE: TypeScript je kompatibilní s většinou moderních vývojových prostředí (IDE). Tyto IDE poskytují automatické doplňování kódu a zvýrazňování syntaxe. V tomto článku budeme používat Visual Studio Code, další produkt od společnosti Microsoft.
- Snadný refaktoring kódu: Aplikace napsané v TypeScriptu lze bez problémů aktualizovat a refaktorovat, aniž by to narušilo jejich funkčnost. Nástroje pro navigaci a porozumění kódu v IDE usnadňují refaktorování kódu.
- Využití existujících balíčků: Nemusíte začínat od nuly, můžete využít stávající balíčky NPM s TypeScriptem. TypeScript má silnou komunitu, která spravuje a vytváří definice typů pro populární balíčky.
Jak používat TypeScript s Node.js
Přestože má TypeScript mnoho výhod, moderní prohlížeče neumí jeho kód interpretovat přímo. Proto je nutné kód TypeScript nejprve přeložit do JavaScriptu, aby jej bylo možné spustit v prohlížečích. Výsledný kód bude mít stejnou funkčnost jako původní kód TypeScript, ale s dalšími funkcemi, které nejsou v JavaScriptu dostupné.
Předpoklady
- Node.js: Node.js je běhové prostředí pro více platforem, které umožňuje spouštění JavaScript kódu mimo prostředí prohlížeče. Pomocí následujícího příkazu můžete ověřit, zda je Node.js nainstalován na vašem počítači:
node -v
Pokud Node.js nemáte, stáhněte si jej z oficiálních stránek. Po instalaci znovu spusťte výše uvedený příkaz a ověřte, zda je vše správně nastaveno.
- Node Package Manager: Můžete použít NPM nebo Yarn. NPM je standardně nainstalován s Node.js. V tomto článku budeme používat NPM jako správce balíčků. Zkontrolujte jeho verzi pomocí příkazu:
npm -v
Instalace TypeScript s Node.js
Krok 1: Vytvoření složky projektu
Začneme vytvořením složky pro náš projekt. Můžete si ji pojmenovat libovolně. K vytvoření složky a přechodu do ní použijte tyto příkazy:
mkdir typescript-node
cd typescript-node
Krok 2: Inicializace projektu
Inicializujte projekt pomocí npm s tímto příkazem:
npm init -y
Tento příkaz vytvoří soubor package.json. Parametr -y zajistí, že se použijí výchozí hodnoty. Vygenerovaný soubor bude vypadat podobně jako níže:
{
"name": "typescript-node",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
Konfigurace TypeScript s Node.js
Krok 1: Instalace kompilátoru TypeScript
Nyní můžete nainstalovat kompilátor TypeScript do svého projektu. Spusťte tento příkaz:
npm install --save-dev typescript
Výstup ve vašem terminálu bude vypadat přibližně takto:
added 1 package, and audited 2 packages in 26s found 0 vulnerabilities
Poznámka: TypeScript se nainstaluje lokálně do složky projektu. Můžete ho nainstalovat i globálně, abyste ho nemuseli instalovat pro každý projekt zvlášť. Pro globální instalaci použijte tento příkaz:
npm install -g typescript
Ověřte, zda je TypeScript nainstalován, tímto příkazem:
tsc -v
Krok 2: Přidání definic typů pro Node.js
TypeScript nabízí různé typy, například implicitní, explicitní a ambientní. Ambientní typy se přidávají do globálního rozsahu. Přidejte definice typů pro Node.js pomocí tohoto příkazu:
npm install @types/node --save-dev
Krok 3: Vytvoření souboru tsconfig.json
Soubor tsconfig.json obsahuje nastavení kompilátoru TypeScript. Vytvořte ho pomocí tohoto příkazu, který obsahuje výchozí volby:
npx tsc --init --rootDir src --outDir build --esModuleInterop --resolveJsonModule --lib es6 --module commonjs --allowJs true --noImplicitAny true
V terminálu byste měli vidět zprávu o vygenerování souboru tsconfig.json s výchozím nastavením a komentáři.

Nastavili jsme:
rootDir: Určuje, kde bude TypeScript hledat zdrojový kód. V tomto případě je to složka/src.outDir: Určuje, kam se uloží zkompilovaný kód. V tomto případě je to složkabuild/.
Použití TypeScript s Node.js
Krok 1: Vytvoření složky src a souboru index.ts
Máme základní konfiguraci. Nyní můžeme vytvořit jednoduchou TypeScript aplikaci a zkompilovat ji. Soubory TypeScript mají příponu .ts. Vytvořte složku a soubor pomocí těchto příkazů:
mkdir src
touch src/index.ts
Krok 2: Přidání kódu do index.ts
Můžete začít s jednoduchým kódem:
console.log('Ahoj světe!')
Krok 3: Kompilace kódu TypeScript do JavaScriptu
Spusťte příkaz:
npx tsc
Ve složce build/ by se měl objevit soubor index.js:

Kód TypeScript byl přeložen do JavaScriptu.
Krok 4: Spuštění zkompilovaného kódu JavaScript
Kód TypeScript nelze spustit přímo v prohlížeči. Spustíme proto kód index.js ve složce build/:
node build/index.js
Výstup by měl vypadat takto:

Krok 5: Automatická kompilace kódu TypeScript
Manuální kompilace kódu při každé změně v souborech může být časově náročná. Můžete si nainstalovat ts-node (spouští kód TypeScript přímo bez nutnosti kompilace) a nodemon (sleduje změny v kódu a automaticky restartuje server).
Spusťte tento příkaz:
npm install --save-dev ts-node nodemon
Poté přidejte do souboru package.json tento skript:
"scripts": {
"start": "ts-node ./src/index.ts"
}
Jako příklad můžeme použít nový blok kódu:
function sum (num1:number, num2:number, num3:number){
return num1 + num2 +num3;
}
console.log(sum(10,15,30))
Smažte soubor index.js (/build/index.js) a spusťte npm start.
Výstup by měl vypadat takto:
Součet 3 čísel
Nastavení lintování TypeScript s ESLint
Krok 1: Instalace ESLint
Lintování kódu je užitečné pro udržování konzistence a pro včasné odhalování chyb. Nainstalujte ESLint tímto příkazem:
npm install --save-dev eslint
Krok 2: Inicializace ESLint
Inicializujte ESLint s příkazem:
npx eslint --init
Průvodce inicializací vás provede několika kroky. Použijte následující obrázek jako nápovědu:

Po dokončení procesu se vytvoří soubor .eslintrc.js s obsahem podobným tomuhle:
module.exports = {
env: {
browser: true,
es2021: true
},
extends: 'standard-with-typescript',
overrides: [
],
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module'
},
rules: {
}
};
Krok 3: Spuštění ESLint
Zkontrolujte všechny soubory s příponou .ts pomocí příkazu:
npx eslint . --ext .ts
Krok 4: Aktualizace souboru package.json
Přidejte do souboru skript pro automatické lintování:
"scripts": {
"lint": "eslint . --ext .ts",
},
TypeScript s Node.js: Doporučené postupy
- Aktualizujte TypeScript: Vývojáři TypeScript pravidelně vydávají nové verze. Ujistěte se, že máte nainstalovanou nejnovější verzi, abyste mohli využívat nové funkce a opravy chyb.
- Povolte striktní režim: V souboru
tsconfig.jsonpovolte striktní režim. To vám pomůže odhalit časté chyby již při kompilaci, což ušetří čas při ladění a zvýší produktivitu. - Povolte striktní kontroly null: Povolte striktní kontroly null v souboru
tsconfig.json, abyste zachytili chyby související snullaundefinedjiž při kompilaci. - Používejte IDE s podporou TypeScript: Vybírejte IDE s podporou TypeScript, jako jsou VS Code, Sublime Text nebo Atom, které poskytují pokročilé funkce a usnadňují vývoj.
- Používejte typy a rozhraní: Definujte vlastní typy a rozhraní pro opakované použití v celém projektu. Tím získáte modulárnější a lépe udržovatelný kód.
Závěrem
Nyní máte vytvořenou základní strukturu aplikace s využitím TypeScriptu na Node.js. Můžete používat běžné balíčky Node.js a zároveň psát kód v TypeScriptu a využívat jeho výhod.
Pokud s TypeScriptem teprve začínáte, ujistěte se, že rozumíte rozdílům mezi TypeScriptem a JavaScriptem.