Přejít k navigační liště

Zdroják » JavaScript » Přivítejte TypeScript 3.0

Přivítejte TypeScript 3.0

Články JavaScript

Microsoft vydal novou verzi populárního transpileru TypeScript. Co vás v ní čeká?

Už je to 6 let

Bude tomu šest let, co se objevil další transpiler do JavaScriptu, TypeScript. Od začátku nepřehlédnutelný, protože od Microsoftu.

Borek Bernard tehdy popsal své první dojmy:

Microsoft představil nový jazyk, TypeScript, který je v podstatě transpilerem do JavaScriptu jako mnoho dalších, jen se mi tentokrát celý projekt zdá vzatý za správný konec. Nerad bych to zakřiknul, ale mám pocit, že TypeScript bude velký.

Za těch pár let se stal TypeScript poměrně populární. V anketě popularity StackOverflow se umístil v roce 2017 jako devátý, v roce 2018 jako dvanáctý jazyk. Popularita mu neklesá, spíš naopak. Jen StackOverflow změnil pravidla ankety, takže se do stejné kategorie dostaly v roce 2018 i další jazyky jako HTML, CSS nebo bash, které zamíchaly pořadím.

Oproti jiným transpilerům je pro TypeScript typické, že se jedná o nadstavbu JavaScriptu. Každý kód JavaScriptu je také platným kódem TypeScriptu (naopak to už neplatí).

V pondělí vyšla nová verze TypeScript 3.0. Pokud jste nedočkaví, můžete hned nainstalovat a vyzkoušet:

npm install -g typescript

Kontrolní tsc --version by mělo zahlásit Version 3.0.1.

Pokud chcete jako IDE použít VS Code, musíte zatím stáhnout insider verzi (noční buildy), než vyjde verze stabilní.

Co je nového (telegraficky)

  • reference na projekty (jeden TypeScript projekt může záviset na jiném TypeScript projektu, což můžete nastavit v tsconfig.json)
  • proměnný počet parametrů funkce se nyní snadno vyřeší pomocí tuple
  • tuple může obsahovat nepovinné elementy (souvisí s předchozím)
  • vylepšené chybové hlášky, viz animovaný obrázek
  • nový typ unknown označuje proměnnou, o jejímž obsahu/typu zatím nic nevíme a musíme napřed provést její prozkoumání; pokud s proměnnou začneme pracovat rovnou, kód se nepřeloží
  • podpora defaultProps v JSX
  • direktiva /// <reference lib="..." /> řeší problémy s polyfilly

Nekompatibilita

Změn, které můžou způsobit nekompatibilitu se starším kódem, není příliš. Jednak je nyní unknown rezervovaný datový typ, dále byly odstraněny metody a funkce, které již dříve byly označeny jako deprecated (konkrétně LanguageService#getSourceFile, TypeChecker#getSymbolDisplayBuilder, escapeIdentifier a unescapeIdentifier) a tři metody jsou nyní interní a nemůžete je tak již používat (konkrétně TypeChecker#getSuggestionForNonexistentProperty, TypeChecker#getSuggestionForNonexistentSymbol a TypeChecker#getSuggestionForNonexistentModule).

Co se chystá dál

Další vývoj je nastíněn v roadmapě, kde například najdete, že další verze 3.1 by měla vyjít ještě v tomto srpnu a obsahovat podporu pro BigInt.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře

GPUI Component: moderní Rust GUI komponenty pro cross-platform desktop aplikace

Různé
Komentáře: 0
GPUI Component je open-source Rust knihovna rozšiřující framework GPUI o více než 60 moderních, nativních a multiplatformních UI komponent. Staví na deklarativním přístupu, stateless renderování a jednoduchém API inspirovaném Reactem či Yew. Díky optimalizovanému výkonu, podpoře témat a flexibilním layoutům umožňuje rychlý vývoj desktopových aplikací, jako je například trading nástroj Longbridge Pro. Knihovna je licencována pod Apache 2.0 a dostupná na GitHubu.

Vitest 4.0 – nové vizuální testování, lepší debugging a stabilní Browser Mode

Nová verze Vitest 4.0 posouvá hranice testování webových aplikací. Přináší stabilní běh testů přímo v prohlížeči, podporu vizuálního regresního testování i chytřejší práci s lokátory a typováním. Vývojáři tak získávají robustnější, rychlejší a přehlednější nástroje pro zajištění kvality UI i logiky aplikací.