Конкурентность в TypeScript: Асинхронное и параллельное программирование
Освоение async/await, Promise, Event Loop и потоков для создания быстрых приложений
Краткое содержимое:
Современная веб-разработка немыслима без асинхронного кода. Обработка запросов к API, работа с файлами, стриминг данных, реальное время — всё это требует глубокого понимания конкурентности. Книга «Конкурентность в TypeScript» — это практическое руководство, которое поможет вам перейти от базового использования async/await к профессиональному проектированию многопоточных и высоконагруженных систем.
Автор, Алексей Соколов, старший разработчик с 10-летним опытом, последовательно раскрывает механизмы внутренней работы JavaScript/TypeScript: от Event Loop и микрозадач до Worker Threads и SharedArrayBuffer. Вы узнаете, как TypeScript статическая типизация помогает избежать классических ошибок асинхронного кода.
Для кого эта книга?
- Frontend- и backend-разработчиков на TypeScript и JavaScript, желающих писать быстрый и надёжный код;
- Разработчиков, переходящих с синхронных языков (Java, Python, C#) на Node.js;
- Специалистов, готовящихся к техническим собеседованиям по сложным темам конкурентности;
- Всех, кто хочет понять, как работают современные фреймворки (React, Angular, NestJS) под капотом.
Что вы узнаете?
- Основы асинхронности: колбэки, промисы, цепочки, обработка ошибок, Promise.all/race/allSettled;
- Async/await в деталях: как работает генерация состояний, отладка асинхронных функций, типизация с TypeScript;
- Event Loop и очереди: микротаски, макротаски, таймеры, requestAnimationFrame, setImmediate;
- Параллелизм: Web Workers, Worker Threads, передача данных, SharedArrayBuffer, Atomics;
- Паттерны конкурентности: Producer-Consumer, Pipeline, Fan-out/Fan-in, Throttle/Debounce, Retry with backoff;
- Реактивное программирование: RxJS, Observable, Subject, операторы конкурентности;
- Продвинутые темы: потоки (Streams), async generators, AbortController, cancellation, сигналы;
- Производительность: бенчмаркинг, профилирование, утечки памяти в асинхронном коде.
Каждая глава содержит практические примеры, готовые к запуску, и задания для закрепления материала. Книга написана живым языком с акцентом на реальные сценарии: от создания быстрого HTTP-сервера до обработки гигабайтных файлов и реализации чата в реальном времени.
Сделайте ваш код по-настоящему конкурентным — и пусть пользователи не ждут!
Рекомендаций
Тестирование Rust приложений
Конкурентность в PHP: Асинхронность, многопоточность и параллельные вычисления
Безопасность TypeScript приложений
Cython: руководство для программистов Python
Cloud Native .NET. Разработка облачных приложений на C#
Проектирование современных веб-приложений с ASP.NET Core и Azure