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

Odysseus: PewDiePie vydal open-source AI workspace, který běží na vašem vlastním hardwaru

AI
Komentáře: 0
Felix Kjellberg, youtuber se 110 miliony odběratelů, strávil rok učením se programovat a fine-tuningem vlastních AI modelů. Výsledkem je Odysseus – bezplatný, open-source workspace pro práci s umělou inteligencí, který neposílá žádná data do cloudu. Projekt má týden, přes 61 000 hvězdiček na GitHubu a znovu otevírá otázku, komu vlastně patří váš digitální kontext.

Když Git už nestačí: jak izolovat databázový stav pro pokusy AI agentů

Gitová větev vývojářům oddělí kód, ale databáze často zůstává společná. U AI agentů je to slabé místo: rychle spouštějí migrace, mění data a zkoušejí víc cest najednou. Databázová větev jim dá vlastní pracovní prostor, jenže tím práce nekončí. Ještě je potřeba řešit citlivá data, oprávnění, životnost větve i zbytek stavu aplikace.

GitHub vyhrál pohodlím. Stejné pohodlí dnes ztěžuje odchod

GitHub kdysi působil jako přesný opak SourceForge: rychlý, přehledný a přirozený. Dnešní projekt na něm ale často nemá jen kód. Má tam issues, pull requesty, CI, balíčky, bezpečnostní pravidla i AI agenty. Lock-in nevzniká tím, že by nešel odnést Git repozitář, ale tím, že se běžný provoz týmu postupně přesune do jedné platformy.