TypeScript Compiler API — David Sherret — обложка книги
200 страниц
TypeScript
PDF
4.5

TypeScript Compiler API

Руководство по работе с компилятором TypeScript

Автор:

Год:

Краткое содержимое:

Введение

Книга «TypeScript Compiler API» авторства Дэвида Шеррета (David Sherret) — это уникальное практическое руководство, посвящённое работе с внутренним компилятором TypeScript. Выпущенная в 2020 году, она насчитывает 200 страниц и ориентирована на разработчиков, желающих создавать собственные инструменты статического анализа, рефакторинга и автоматизации кода. Несмотря на то, что книга написана на TypeScript, её концепции применимы и для Python-разработчиков, интересующихся метапрограммированием и построением анализаторов кода.

О чём книга

Дэвид Шеррет, известный создатель популярной библиотеки ts-morph, детально разбирает архитектуру TypeScript Compiler API. Читатель узнает, как компилятор TypeScript разбирает исходный код в абстрактное синтаксическое дерево (AST), как навигировать по узлам дерева, модифицировать их и генерировать новый код. Книга охватывает такие темы, как работа с типами, создание пользовательских трансформаторов, написание линтеров и интеграция с существующими инструментами сборки.

Для кого эта книга

Книга предназначена для разработчиков, уже знакомых с TypeScript (или JavaScript) и желающих углубиться в метапрограммирование. Она будет полезна:

  • создателям инструментов разработки (линтеров, форматтеров, генераторов кода);
  • разработчикам, поддерживающим крупные кодовые базы и нуждающимся в автоматическом рефакторинге;
  • энтузиастам, изучающим внутреннее устройство компиляторов;
  • Python-программистам, интересующимся аналогиями с AST Python (например, модуль ast).

Что узнает читатель

После прочтения книги читатель сможет:

  • понимать структуру AST TypeScript и способы его обхода;
  • использовать Node и Symbol API для анализа кода;
  • создавать собственные трансформации (например, замену вызовов функций);
  • писать линтеры с пользовательскими правилами;
  • работать с системой типов компилятора (TypeChecker);
  • интегрировать API в инструменты командной строки и плагины для сборщиков.

Сильные стороны

Главное достоинство книги — практическая направленность. Каждая глава содержит примеры кода, которые можно сразу запустить и адаптировать под свои задачи. Автор использует понятный язык, избегая излишней академичности. Отдельно стоит отметить главу, посвящённую ts-morph — библиотеке, упрощающей работу с компилятором. Книга хорошо структурирована: от основ до продвинутых техник, что позволяет использовать её как справочник.

Кому рекомендуется

Рекомендуется всем, кто хочет выйти за рамки простого использования TypeScript и начать создавать инструменты, автоматизирующие рутинные задачи. Для Python-разработчиков книга станет отличным введением в метапрограммирование на TypeScript, а также поможет лучше понять, как устроены аналогичные механизмы в Python (например, модуль ast и библиотеки вроде libcst).

Рекомендаций