Разработка на JavaScript. Построение кроссплатформенных приложений с помощью GraphQL, React, React Native и Electron 9785446114627, 9781492046981


299 39 6MB

Russian Pages [320] Year 2021

Report DMCA / Copyright

DOWNLOAD PDF FILE

Table of contents :
Предисловие
Введение
Для кого эта книга
Структура
Условные обозначения
Использование примеров кода
Благодарности
От издательства
Глава 1. Среда разработки
Текстовый редактор
Терминал
Использование отдельного приложения терминала
Использование VSCode
Навигация по файловой системе
Инструменты командной строки и Homebrew (только для Mac)
Node.js и NPM
Установка Node.js и NPM для macOS
Установка Node.js и NPM для Windows
MongoDB
Установка и запуск MongoDB для macOS
Установка и запуск MongoDB для Windows
Git
Expo
Prettier
ESLint
Наводим красоту
Итоги
Глава 2. Введение в API
Что мы создаем
Как мы будем все это создавать
Начало
Итоги
Глава 3. Создание веб-приложения с помощью Node и Express
Hello World
Nodemon
Расширение опций порта
Итоги
Глава 4. Наш первый GraphQL API
Превращение сервера в API (ну, вроде того)
Основы GraphQL
Схемы
Распознаватели
Адаптация API
Итоги
Глава 5. База данных
Начало работы с MongoDB
Подключение MongoDB к приложению
Чтение и запись данных
Итоги
Глава 6. Операции CRUD
Разделение GraphQL-схемы и распознавателей
Написание CRUD-схемы
CRUD-распознаватели
Время и дата
Итоги
Глава 7. Учетные записи пользователей и аутентификация
Процесс аутентификации в приложении
Шифрование и токены
Шифрование паролей
JSON Web Token
Интеграция аутентификации в API
Пользовательские схемы
Распознаватели аутентификации
Добавление пользователя в контекст распознавателя
Итоги
Глава 8. Действия пользователя
Подготовка
Прикрепление пользователя к новым заметкам
Пользовательские разрешения на изменение и удаление
Запросы пользователей
Избранные заметки
Вложенные запросы
Итоги
Глава 9. Детали
Передовые методы Express.js для веб-приложений
Express Helmet
Совместное использование ресурсов между источниками
Пагинация
Ограничения данных
Прочие соображения
Тестирование
Подписки
Платформа Apollo GraphQL
Итоги
Глава 10. Развертывание API
Размещение базы данных
Развертывание приложения
Настройка проекта
Развертывание
Тестирование
Итоги
Глава 11. Интерфейсы пользователей и React
JavaScript и UI
Декларативные интерфейсы в JavaScript
Достаточно одного React
Итоги
Глава 12. Построение веб-клиента с помощью React
Что мы создаем
Как мы будем это создавать
Начало
Создание приложения
Маршрутизация
Создание ссылок
Компоненты UI
Итоги
Глава 13. Стилевое оформление приложения
Создание компонента макета
CSS
CSS-in-JS
Создание компонента Button
Добавление глобальных стилей
Стили компонентов
Итоги
Глава 14. Работа с Apollo Client
Настройка Apollo Client
Запросы к API
Стиль
Динамические запросы
Пагинация
Итоги
Глава 15. Аутентификация и состояние
Создание формы регистрации
Формы и состояния в React
Мутация signUp
JSON Web Token и локальное хранилище
Переадресация
Прикрепление заголовков к запросам
Управление локальным состоянием
Выход из системы
Создание формы авторизации
Защищенные маршруты
Итоги
Глава 16. Операции создания, чтения, изменения и удаления
Создание заметок
Чтение заметок пользователей
Изменение заметок
Удаление заметок
Добавление в избранное
Итоги
Глава 17. Развертывание приложения
Статические сайты
Конвейер развертывания
Хостинг исходного кода с помощью Git
Развертывание с помощью Netlify
Итоги
Глава 18. Создание десктопных приложений с помощью Electron
Что мы создаем
Как мы будем его создавать
Начало
Наше первое приложение на Electron
Детали окна приложения для macOS
Инструменты разработчика
Electron API
Итоги
Глава 19. Интеграция веб-приложения в Electron
Интеграция веб-приложения
Предупреждения и ошибки
Конфигурация
Политика защиты контента CSP
Итоги
Глава 20. Развертывание Electron
Electron Builder
Настройка Electron Builder
Сборка для нашей текущей платформы
Иконки приложения
Сборка для нескольких платформ
Подписание кода
Итоги
Глава 21. Мобильные приложения на React Native
Что мы создаем
Как мы будем его создавать
Начало
Итоги
Глава 22. Оболочка мобильного приложения
Из чего состоит React Native
Style и Styled Components
Styled Components
Маршрутизация
Маршрутизация по вкладкам с помощью React Navigation
Навигация по стеку
Добавление заголовков экранов
Иконки
Итоги
Глава 23. GraphQL и React Native
Создание списка и прокручиваемого содержимого
Маршрутизация списка
GraphQL с Apollo Client
Написание GraphQL-запросов
Добавление индикатора загрузки
Итоги
Глава 24. Аутентификация в мобильном приложении
Поток аутентификации
Создание формы авторизации
Аутентификация с помощью GraphQL-мутаций
Аутентифицированные GraphQL-запросы
Добавление формы регистрации
Итоги
Глава 25. Дистрибуция мобильного приложения
Настройка app.json
Иконки и экраны загрузки приложения
Иконки приложения
Экраны-заставки
Публикация через Expo
Создание нативных сборок
iOS
Android
Дистрибуция через магазины приложений
Итоги
Послесловие
Приложение A. Локальное выполнение API
Приложение Б. Локальное выполнение веб-приложения
Об авторе
Об обложке

Разработка на JavaScript. Построение кроссплатформенных приложений с помощью GraphQL, React, React Native и Electron
 9785446114627, 9781492046981

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up