TypeScript быстро
معرفی کتاب «TypeScript быстро» نوشتهٔ Яков Файн, Антон Моисеев; [перевел с английского Д. Акуратер]، منتشرشده توسط نشر Питер در سال 2021. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «TypeScript быстро» در دستهٔ بدون دستهبندی قرار دارد.
«TypeScript быстро» научит вас секретам продуктивной разработки веб- или самостоятельных приложений. Она написана практиками для практиков. В книге разбираются актуальные для каждого программиста задачи, объясняется синтаксис языка и описывается разработка нескольких приложений, в том числе нетривиальных — так вы сможете понять, как использовать TypeScript с популярными библиотеками и фреймворками. Вы разберетесь с превосходным инструментарием TypeScript и узнаете, как объединить в одном проекте TypeScript и JavaScript. Среди продвинутых тем, рассмотренных авторами, – декораторы, асинхронная обработка и динамические импорты. Прочитав эту книгу, вы поймете, что именно делает TypeScript особенным. Введение Благодарности О книге Для кого эта книга Как организована книга О коде Об авторах Об обложке Часть 1Основы синтаксиса TypeScript Глава 1. Знакомство с TypeScript 1.1. Зачем программировать в TypeScript 1.2. Типичные рабочие процессы TypeScript 1.3. Использование компилятора TypeScript 1.4. Знакомство с Visual Studio Code Итоги Глава 2. Базовые и пользовательские типы 2.1. Объявление переменных с типами 2.1.1. Базовые аннотации типов 2.1.2. Типы в объявлениях функций 2.1.3. Объединенный тип 2.2. Определение пользовательских типов 2.2.1. Использование type 2.2.2. Использование классов в качестве пользовательских типов 2.2.3. Интерфейсы в качестве пользовательских типов 2.2.4. Структурная система типов против номинальной 2.2.5. Пользовательские объединения типов 2.3. Типы any и unknown, а также пользовательские защиты типов 2.4. Мини-проект Итоги Глава 3. Объектно-ориентированное программирование с классами и интерфейсами 3.1. Работа с классами 3.1.1. Знакомство с наследованием классов 3.1.2. Модификаторы доступа public, private, protected 3.1.3. Статические переменные и пример Одиночки 3.1.4. Метод super() и ключевое слово super 3.1.5. Абстрактные классы 3.1.6. Перегрузка метода 3.2. Работа с интерфейсами 3.2.1. Обеспечение выполнения контракта 3.2.2. Расширение интерфейсов 3.2.3. Программирование через интерфейсы Итоги Глава 4. Перечисления и обобщенные типы 4.1. Использование enums 4.1.1. Численные enums 4.1.2. Строчные перечисления 4.1.3. Использование перечислений const 4.2. Использование обобщений 4.2.1. Разъяснение обобщений 4.2.2. Создание собственных обобщенных типов 4.2.3. Создание обобщенных функций 4.2.4. Обеспечение возвращаемого типа функции высшего порядка Итоги Глава 5. Декораторы и продвинутые типы 5.1. Декораторы 5.1.1. Создание декораторов классов 5.1.2. Создание декораторов методов 5.2. Отображенные типы 5.2.1. Отображенный тип Readonly 5.2.2. Объявление собственных отображенных типов 5.2.3. Другие встроенные отображенные типы 5.3. Условные типы 5.3.1. Ключевое слово infer Итоги Глава 6. Инструменты 6.1. Карты кода 6.2. Линтер TSLint 6.3. Связывание кода с помощью Webpack 6.3.1. Связывание JavaScript с помощью Webpack 6.3.2. Связывание TypeScript с помощью Webpack 6.4. Использование компилятора Babel 6.4.1. Использование Babel с JavaScript 6.4.2. Использование Babel с TypeScript 6.4.3. Использование Babel с TypeScript и Webpack 6.5. Инструменты для рассмотрения 6.5.1. Знакомство с Deno 6.5.2. Знакомство с ncc Итоги Глава 7. Использование TypeScript и JavaScript в одном проекте 7.1. Файлы определений типов 7.1.1. Знакомство 7.1.2. Файлы определений типов и IDE 7.1.3. Shim и определения типов 7.1.4. Создание собственных файлов определений типов 7.2. Пример TypeScript-приложения, использующего JavaScript-библиотеки 7.3. Введение TypeScript в JavaScript-проект Итоги Часть 2Использование TypeScript в блокчейн-приложении Глава 8. Разработка собственного блокчейн-приложения 8.1. Блокчейн 101 8.1.1. Криптографические хеш-функции 8.1.2. Из чего состоит блок? 8.1.3. Что такое добыча блока? 8.1.4. Мини-проект с хешем и nonce 8.2. Ваш первый блокчейн 8.2.1. Структура проекта 8.2.2. Создание примитивного блокчейна 8.2.3. Создание блокчейна с доказательством проделанной работы Итоги Глава 9. Разработка узла блокчейна на основе браузера 9.1. Запуск блокчейн-веб-приложения 9.1.1. Структура проекта 9.1.2. Развертывание приложения с помощью npm-сценариев 9.1.3. Работа с блокчейн-веб-приложением 9.2. Веб-клиент 9.3. Добыча блоков 9.4. Использование crypto API для генерации хешей 9.5. Самостоятельный блокчейн-клиент 9.6. Отладка TypeScript в браузере Итоги Глава 10. Клиент-серверное взаимодействие посредством Node.js, TypeScript и WebSocket 10.1. Разрешение конфликтов с помощью правила длиннейшей цепочки 10.2. Добавление сервера в блокчейн 10.3. Структура проекта 10.4. Файлы конфигураций проекта 10.4.1. Настройка компиляции TypeScript 10.4.2. Что находится в package.json 10.4.3. Настройка nodemon 10.4.4. Выполнение блокчейн-приложения 10.5. Краткое знакомство с WebSockets 10.5.1. Сравнение протоколов HTTP и WebSocket 10.5.2. Передача данных от сервера Node к простому клиенту 10.6. Рассмотрение процессов уведомления 10.6.1. Рассмотрение кода сервера 10.6.2. Рассмотрение кода клиента Итоги Глава 11. Разработка приложений Angular с помощью TypeScript 11.1. Генерация и запуск нового приложения с помощью Angular CLI 11.2. Рассмотрение сгенерированного приложения 11.3. Сервисы Angular и внедрение зависимостей 11.4. Приложение с внедрением ProductService 11.5. Программирование через абстракции в TypeScript 11.6. Начало работы с HTTP-запросами 11.7. Начало работы с формами 11.8. Основы маршрутизации Итоги Глава 12. Разработка клиента блокчейна на Angular 12.1. Запуск блокчейн-приложения Angular 12.2. Обзор AppComponent 12.3. Рассмотрение TransactionFormComponent 12.4. Обзор BlockComponent 12.5. Обзор сервисов Итоги Глава 13. Разработка приложений React.js с помощью TypeScript 13.1. Разработка простейшей веб-страницы при помощи React 13.2. Генерация и запуск нового приложения с помощью Create React App 13.3. Управление состоянием компонента 13.3.1. Добавление состояния в компоненты, основанные на классе 13.3.2. Использование хуков для управления состоянием 13.4. Разработка метеоприложения 13.4.1. Добавление хука состояния в компонент App 13.4.2. Получение данных при помощи хука useEffect в компоненте App 13.4.3. Использование свойств 13.4.4. Как дочерний компонент может передавать данные родителю? 13.5. Что такое виртуальная DOM? Итоги Глава 14. Разработка блокчейн-клиента в React.js 14.1. Запуск клиента и сервера обмена сообщениями 14.2. Что изменилось в директории lib 14.3. Умный компонент App 14.3.1. Добавление транзакции 14.3.2. Генерация нового блока 14.3.3. Объяснение хуков useEffect() 14.3.4. Мемоизация с помощью хука useCallback() 14.4. Компонент представления TransactionForm 14.5. Компонент представления PendingTransactionsPanel 14.6. Компоненты представления BlocksPanel и BlockComponent Итоги Глава 15. Разработка приложений Vue.js с помощью TypeScript 15.1. Разработка простейшей веб-страницы с помощью Vue 15.2. Генерация и запуск приложения с помощью Vue CLI 15.3. Разработка одностраничных приложений с маршрутизацией 15.3.1. Генерация нового приложения с Vue Router 15.3.2. Отображение списка товаров в представлении Home 15.3.3. Передача данных с помощью Vue Router Итоги Глава 16. Разработка блокчейн-клиента на Vue.js 16.1. Запуск клиента и сервера обмена сообщениями 16.2. Компонент App 16.3. Компонент представления TransactionForm 16.4. Компонент представления PendingTransactionsPanel 16.5. Компоненты представления BlocksPanel и Block Итоги Эпилог Приложение А Современный JavaScript А.1. Как запускать образцы кода А.2. Ключевые слова let и const А.2.1. Ключевое слово var и поднятие А.2.2. let и const для работы в области блока А.3. Шаблонные литералы А.3.1. Размеченные шаблонные строки А.4. Опциональные параметры и значения по умолчанию А.5. Выражения стрелочных функций А.6. Оператор остатка (rest) А.7. Оператор распространения А.8. Деструктуризация А.8.1. Деструктуризация объектов А.8.2. Деструктуризация массивов А.9. Классы и наследование А.9.1. Конструкторы А.9.2. Ключевое слово super и функция super() А.9.3. Статические члены класса А.10. Асинхронная обработка А.10.1. Ад обратных вызовов А.10.2. Промисы А.10.3. Разрешение нескольких промисов зараз А.10.4. async-await А.11. Модули А.11.1. Импорты и экспорты А.12. Транспиляторы Summary TypeScript is JavaScript with an important upgrade! By adding a strong type system to JavaScript, TypeScript can help you eliminate entire categories of runtime errors. In TypeScript Quickly, you'll learn to build rock-solid apps through practical examples and hands-on projects under the expert instruction of experienced web developers Yakov Fain and Anton Moiseev. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Strong typing can eliminate nearly all errors caused by unanticipated data values. With TypeScript, an enhanced version of JavaScript, you can specify types and type annotations so your code is easier to read and far less likely to fail at runtime. And because the core of TypeScript is standard JavaScript, it runs on all major browsers and can be used with frameworks like Angular, Vue, and React. About the book TypeScript Quickly teaches you to exploit the benefits of types in browser-based and standalone applications. In this practical guide, you'll build a fascinating blockchain service app that takes you through a range of type-sensitive programming techniques. As you go, you'll also pick up valuable techniques for object-oriented programming with classes, interfaces, and advanced features such as decorators and conditional types. What's inside Mastering TypeScript syntax Using TypeScript with JavaScript libraries Tooling with Babel and Webpack Developing TypeScript apps using Angular, React, and Vue About the reader For web developers comfortable with JavaScript and HTML. About the author Yakov Fain and Anton Moiseev are experienced web developers. They have authored two editions of Manning's Angular Development with TypeScript. Table of Contents: PART 1 MASTERING THE TYPESCRIPT SYNTAX 1 ¦ Getting familiar with TypeScript 2 ¦ Basic and custom types 3 ¦ Object-oriented programming with classes and interfaces 4 ¦ Using enums and generics 5 ¦ Decorators and advanced types 6 ¦ Tooling 7 ¦ Using TypeScript and JavaScript in the same project PART 2 APPLYING TYPESCRIPT IN A BLOCKCHAIN APP 8 ¦ Developing your own blockchain app 9 ¦ Developing a browser-based blockchain node 10 ¦ Client-server communications using Node.js, TypeScript, and WebSockets 11 ¦ Developing Angular apps with TypeScript 12 ¦ Developing the blockchain client in Angular 13 ¦ Developing React.js apps with TypeScript 14 ¦ Developing a blockchain client in React.js 15 ¦ Developing Vue.js apps with TypeScript 16 ¦ Developing the blockchain client in Vue.js
دانلود کتاب TypeScript быстро
TypeScript is JavaScript with an important upgrade! By adding a strong type system to JavaScript, TypeScript can help you eliminate entire categories of runtime errors. In TypeScript Quickly, you'll learn to build rock-solid apps through practical examples and hands-on projects under the expert instruction of experienced web developers Yakov Fain and Anton Moiseev.