Книга «React 19. Разработка веб‑приложений на JavaScript» — тот нечастый случай, когда пособие по самым последним средствам разработки выходит на русском языке параллельно с англоязычными изданиями. Обычно российские издательства берут в перевод лицензионную книгу и только через год она выходит на русском языке. Но не в этом случае. Книга Владимира Дронова — это новейшее руководство по React 19, начиная с базовых концепций и заканчивая продвинутыми инструментами, такими как Redux, Formik и анимации. Отдельное внимание уделено практическому применению библиотеки, включая разработку полноценного веб-приложения с использованием Firebase.
***
Открывает рецензию ссылка на страницу книги «React 19. Разработка веб‑приложений на JavaScript» на сайте издательства БХВ. Напомним, на все книги по компьютерным технологиям от издательств «БХВ Петербург», «Alist» и «Фолиант» доступен промокод SSPSOFT на скидку 25% как подарок читателям Хабра от нашего блога.
React 19 стал значительным этапом в эволюции библиотеки. Ключевое новшество — система Actions, которая упрощает управление асинхронными процессами, включая обновление данных и обработку форм. Появились новые хуки, такие как useOptimistic и useFormStatus, делающие взаимодействие с пользователем мгновенным и гибким. Улучшена работа серверных компонентов, оптимизирующих SSR и смешанную рендеринг-архитектуру.
Нововведения в React 19 делают разработку интерфейсов еще удобнее, открывая дополнительные возможности для разработки сложных веб-приложений.
Подробнее познакомиться с обновлениями в React 19 можно на сайте react,dev.
Владимир Дронов — один из самых известных российских авторов по темам разработки
Владимир Дронов — известный российский автор технической литературы, специализирующийся на книгах по веб-разработке и программированию. Он является одним из самых продуктивных и уважаемых авторов издательства «БХВ‑Петербург» в области IT-литературы. Книги автора отличаются подробным пошаговым изложением материала, большим количеством практических примеров, четкой структурой и методической проработкой.
Основные направления, по которым автор пишет книги:
Web-разработка (HTML, CSS, JavaScript)
Фреймворки (React, Django, Laravel)
Языки программирования (Python, PHP, JavaScript)
Системы управления контентом (Django CMS, WordPress)
Среди самых известных книг автора (все их можно найти на сайте БХВ и на все книги действует промокод SSPSOFT):
«Django 3.0. Практика создания веб‑сайтов на Python»
«JavaScript в примерах и задачах»
«Laravel. Быстрая разработка современных динамических Web‑сайтов на PHP»
«PHP, MySQL и Dreamweaver MX 2004»
«React и Redux: разработка веб‑приложений»
Книги В. Дронова популярны среди русскоязычных разработчиков благодаря качественному изложению материала и практической направленности. Они часто используются как учебные пособия в сфере веб-разработки.
Теперь, отдав дань мастерству автора, перейдем к рецензии.
Аннотации к главам книги "React 19. Разработка веб-приложений на JavaScript"
Давайте пройдемся по оглавлению «React 19. Разработка веб‑приложений на JavaScript» и посмотрим на аннотации к каждой главе книги:
ЧАСТЬ I. СОЗДАНИЕ ПРОСТЕЙШЕГО REACT-ПРИЛОЖЕНИЯ
Глава 1. Список планируемых дел 1.0
Глава посвящена созданию базового React-приложения для управления списком дел. Читатель пошагово знакомится с основными концепциями React: компонентами, JSX-синтаксисом, пропсами и состояниями. Рассматривается механизм передачи данных между компонентами через props и подъем состояния, обработка событий в React. Особое внимание уделяется работе с формами и навигации с использованием библиотеки React Router. Изучаются концепции маршрутизации, загрузчиков и параметризованных маршрутов. Глава закладывает фундаментальное понимание базовых принципов React-разработки на практическом примере.
Глава 2. Список планируемых дел 2.0
В этой главе приложение списка дел получает развитие с добавлением серверной части на базе Google Firebase. Рассматривается процесс создания и настройки базы данных Firebase, реализация системы аутентификации с регистрацией пользователей, входом и выходом. Описывается механизм хранения данных в Firebase и их синхронизация с клиентским приложением. Важное место занимают вопросы разграничения доступа к данным. Отдельное внимание уделяется реализации валидации данных и обработке ошибок в React-приложении. Глава показывает процесс создания полноценного клиент-серверного приложения.
Часть II. Базовые инструменты
Глава 3. Проект React-приложения
Здесь идет подробный разбор структуры React-проекта. Рассматриваются основные файлы проекта, включая HTML-страницу приложения, стартовый модуль и таблицы стилей. Описываются процессы запуска и остановки проекта, отслеживания изменений в коде. Особое внимание уделяется настройке HTTPS при отладке. Разбираются типы возможных ошибок в коде и способы их выявления. Важная часть главы посвящена настройке проекта через переменные окружения, их созданию и использованию. Материал формирует понимание базовой инфраструктуры React-приложения.
Глава 4. Компоненты
Глава детально рассматривает работу с компонентами в React. Описывается жизненный цикл компонента и концепция хуков. Разбираются пропсы компонента и различные аспекты рендеринга, включая фрагменты и условный рендеринг. Особое внимание уделяется состояниям компонента и их связи с жизненным циклом. Рассматриваются дополнительные инструменты: рефы для управления DOM-элементами, порталы для рендеринга вне иерархии компонентов. Завершается глава темой оптимизации производительности через мемоизацию компонентов и результатов вычислений.
Глава 5. Язык JSX
Всесторонний анализ JSX - расширения JavaScript для описания структуры React-компонентов. Рассматриваются основы синтаксиса JSX, правила вывода значений и условного рендеринга. Описывается работа с последовательностями элементов и концепция ключей. Особое внимание уделяется использованию внедренных элементов в компонентах. Завершается глава рассмотрением способов оформления компонентов, включая работу с таблицами стилей компонентов, CSS-модулями и встроенными стилями.
Глава 6. Обработка событий
Подробное руководство по обработке событий в React. Рассматривается создание обработчиков событий и их привязка к элементам интерфейса. Описываются особенности передачи параметров в обработчики. Дается обзор событий, поддерживаемых React, и класса события React. Особое внимание уделяется фазам распространения событий в React и особенностям их обработки на разных фазах. Материал формирует полное понимание системы событий в React-приложениях.
Глава 7. Взаимодействие между компонентами
Глава раскрывает механизмы коммуникации между компонентами в React. Рассматриваются различные способы передачи данных: спуск через props, сквозная передача, использование контекстов. Описывается механизм подъема данных к родительским компонентам. Особое внимание уделяется передаче функциональности через рендер-пропсы и управления через рефы. Рассматривается использование промежуточных обработчиков для гибкого управления взаимодействием компонентов.
Глава 8. Работа с веб-формами и элементами управления
Комплексное рассмотрение работы с формами в React. Описывается взаимодействие с различными элементами управления, обработка событий форм. Подробно разбираются воздействия React для управления формами, включая упрощенные и полнофункциональные варианты. Особое внимание уделяется валидации вводимых данных. Материал формирует понимание создания и обработки интерактивных форм в React-приложениях.
Глава 9. Работа с внешними API
Глава посвящена взаимодействию React-приложений с внешними источниками данных. Рассматриваются эффекты React для работы с API на разных этапах жизненного цикла компонента. Описывается поддержка асинхронных операций, включая использование приостановки и низкоприоритетных обновлений. Особое внимание уделяется работе с отложенными значениями и оптимистичному обновлению компонентов. Глава важна для понимания процесса создания приложений, взаимодействующих с серверной частью.
Глава 10. Компоненты высшего порядка и собственные хуки
Рассмотрение продвинутых концепций React - компонентов высшего порядка (HOC) и пользовательских хуков. На практических примерах демонстрируется создание HOC для расширения функциональности существующих компонентов. Описывается процесс написания собственных хуков для повторного использования логики состояния и побочных эффектов. Материал позволяет создавать более гибкие и переиспользуемые компоненты.
Часть III. Дополнительные библиотеки и расширенные инструменты
Глава 11. Библиотека React Router: навигация, раздел 1
Здесь подробное рассмотрение основ маршрутизации в React с использованием библиотеки React Router. Описываются базовые концепции: маршруты, списки маршрутов, маршрутизаторы. Рассматривается создание простых и иерархических списков маршрутов. Особое внимание уделяется различным аспектам навигации, включая работу с гиперссылками и перенаправлениями. Материал формирует понимание базовой маршрутизации в React-приложениях.
Глава 12. Библиотека React Router: навигация, раздел 2
Продолжение изучения React Router с фокусом на продвинутые возможности. Рассматривается работа с данными через загрузчики и воздействия Router. Описывается использование фетчеров для загрузки и отправки данных. Особое внимание уделяется асинхронным операциям и управлению состоянием маршрутизации. Рассматриваются механизмы передачи данных через маршруты и сохранение позиции прокрутки.
Глава 13. Преобразователи данных React
Глава посвящена механизму преобразования данных в React. Рассматривается концепция влияний и их роль в изменении данных. Описывается процесс создания и регистрации преобразователей React. Особое внимание уделяется практической работе с преобразователями для управления состоянием приложения. Материал важен для понимания управления данными в масштабных React-приложениях.
Глава 14. Библиотека Redux: централизованное хранение состояния, раздел 1
Подробное введение в Redux - библиотеку для управления состоянием приложения. Рассматриваются основные концепции: влияния, преобразователи, хранилище, селекторы. Описывается работа с данными в хранилище, отправка влияний и регистрация слушателей. Особое внимание уделяется созданию влияний и их отправителей. Рассматривается работа с внешними источниками данных через посредников Redux.
Глава 15. Библиотека Redux: централизованное хранение состояния, раздел 2
Продолжение изучения Redux с фокусом на интеграцию с React. Рассматривается библиотека React Redux для связывания компонентов с хранилищем. Описывается работа с провайдером хранилища и функцией connect(). Особое внимание уделяется библиотеке Redux Toolkit для упрощения работы с Redux. Рассматривается создание срезов состояния и управление асинхронными операциями.
Глава 16. Библиотека Formik: создание веб-форм
Подробное руководство по использованию Formik для создания форм в React. Рассматривается быстрое создание форм с использованием готовых компонентов. Описывается работа с различными элементами управления, валидация данных, обработка отправки. Особое внимание уделяется созданию сложных форм и собственных элементов управления. Рассматривается работа с массивами элементов управления.
Глава 17. Библиотека Yup: валидация данных
Глава посвящена валидации данных с использованием библиотеки Yup. Рассматривается создание схем валидации для различных типов данных. Описываются правила валидации строк, чисел, массивов и объектов. Особое внимание уделяется интеграции Yup с Formik для валидации форм. Материал формирует понимание создания надежной системы валидации в React-приложениях.
Глава 18. Библиотека ReactFire: интеграция с Google Firebase
Рассмотрение интеграции React-приложений с платформой Firebase. Описывается трехуровневая архитектура взаимодействия через провайдеры. Рассматривается работа с базой данных и системой аутентификации Firebase. Особое внимание уделяется получению данных о пользователях и работе с базой данных через компоненты-потребители. Материал важен для создания приложений с серверной частью на Firebase.
Глава 19. Библиотека React Awesome Reveal: анимация
Подробное руководство по созданию анимаций в React с использованием библиотеки React Awesome Reveal. Рассматриваются различные анимационные эффекты и их параметры. Описывается анимация отдельных элементов и групп компонентов. Особое внимание уделяется созданию специальных эффектов и анимации текста. Материал позволяет добавить интерактивность и визуальную привлекательность приложениям.
Глава 20. Прочие полезные инструменты и библиотеки
Обзор дополнительных инструментов для React-разработки. Рассматривается библиотека React Window для эффективного вывода больших списков и таблиц. Описывается работа с метатегами для улучшения SEO. Особое внимание уделяется предварительной загрузке ресурсов для оптимизации производительности. Материал расширяет инструментарий React-разработчика.
Глава 21. Обработка ошибок
Комплексное рассмотрение механизмов обработки ошибок в React-приложениях. Описываются способы обработки ошибок средствами JavaScript и React Router. Особое внимание уделяется обработке HTTP-ошибок и ошибок в асинхронных операциях. Рассматривается работа с приостановщиками. Материал формирует понимание создания надежных приложений.
Глава 22. Разделение кода и загрузка по запросу
Глава посвящена оптимизации загрузки React-приложений. Рассматриваются механизмы разделения кода и загрузки по запросу средствами JavaScript и React. Описывается реализация ленивой загрузки компонентов. Особое внимание уделяется оптимизации маршрутизации с использованием React Router. Материал важен для создания производительных приложений.
Глава 23. Расширенные средства отладки
Подробное руководство по отладке React-приложений. Рассматривается строгий режим React и настройка отладчика VS Code. Описывается работа с React Developer Tools и Redux DevTools. Особое внимание уделяется профилированию производительности и получению метрик Web Vitals. Материал формирует навыки эффективной отладки приложений.
Глава 24. Публикация веб-приложения
Завершающая глава о развертывании React-приложений. Рассматривается процесс подготовки приложения к публикации и создания эксплуатационной версии. Описываются различные способы публикации: на собственном сервере и сторонних платформах. Особое внимание уделяется настройке веб-серверов Apache и serve. Материал позволяет успешно развернуть готовое приложение.
Заключение
Книга Владимира Дронова «React 19. Разработка веб‑приложений на JavaScript» представляет собой функционально полное руководство, охватывающее аспекты современной React-разработки. Ценность представляет системный подход автора к изложению материала: от базовых концепций до продвинутых инструментов и библиотек.
Важно отметить, что освоение React 19 (и последующих версий) является критически важным для современных фронтенд-разработчиков. Версия 19 приносит обновления, оптимизирующие разработку современных приложений, включая улучшенное управление асинхронными процессами и новые хуки. Эти инструменты делают разработку более гибкой и продуктивной, открывая возможности создания интерактивных пользовательских интерфейсов с высокой производительностью и отличным пользовательским опытом.
Отдельного упоминания в Заключении заслуживает внимание автора к вопросам производительности, отладки и развертывания приложений - критически важным аспектам промышленной разработки. Практические примеры и пошаговые примеры делают книгу полезной как для начинающих разработчиков, так и для опытных специалистов, желающих углубить свои знания в React-разработке.
Немного HR-рекламы от нашего блога: мы занимаемся заказной разработкой ПО и будем рады получить резюме специалистов, готовых работать оффлайн в Москве и Томске, а также удаленно из любой точки России. Текущие вакансии на нашей странице на hh.ru. Если вашей специальности нет в списке вакансий, не стесняйтесь прислать нам резюме — в SSP SOFT новые позиции открываются регулярно. Резюме можно направить в Telegram или на почту job@ssp-soft.com.
Успехов в изучении и практическом применении своих знаний в React-разработке!
Комментарии (3)
rtatarinov
20.01.2025 10:01Звучит, как реклама! А еще если это на массмаркет то почему здесь Formik и yup вместо hook form и zod?
gsaw
Круто, вот казалось бы только реакт 19 зарелизили, а уже кто то написал книгу, а кто то уже прочитал и рецензию написал. Респект