Переписывая ReactJS: Устройство и принципы

Как говорили мудрецы из двухтысячных, хочешь понять работу JQuery – напиши свою JQuery. А сейчас к нам всё более активно приходят фронтенд-фреймворки и уже нет смысла их игнорировать.

Технологии меняются, но подход остаётся неизменно полезным и достаточно интересным. И мы с вами можем поступить также с библиотекой React JS и экосистемой вокруг неё для построения фреймворка.

В соседней серии по разработке проекта на Slim и React нам понадобится делать интерактивный фронтенд. А это будет сложно, если мы не будем понимать, как устроены его инструменты.

И если мы понимаем некоторые принципы и паттерны построения бэкенда, то это не совсем поможет нам с фронтендом. Так как при его разработке нам нужно строить интерактивные пользовательские интерфейсы.

И как нам работать с фронтендом?

Можно посто взять библиотеку вроде React c её экосистемой и начать работу наугад. Но будет намного полезнее, если мы разберёмся в принципах работы этих инструментов. Какие компоненты для чего придуманы и почему и как они работают. То есть нам важно понимать первопричины и принципы, по которым библиотеку или фреймворк делали их авторы.

И для такого понимания нам желательно пройти тот же путь, который мысленно эти авторы совершили. И для этого мы с вами попробуем сами с нуля спрограммировать свою копию экосистемы React. И при таком написании всех составных компонентов мы как раз поймём, чем руководствовались авторы и почему они всё делали именно так, а не по-другому.

Для этого мы начинаем новую серию скринкастов, посвящённую исследованию работы фронтенд-фреймворков:

Перейти к просмотру →

Так что если до этого момента вам казалось всё это сложным и вы откладывали это на потом, то самое время приступить к этому с нами. Мы начнём с простого статического демо-приложения и постепенно по шагам сделаем его полноценным динамическим и интерактивным.

И если мы сможем с нуля написать свой фреймворк, то будем легко и осознанно использовать по назначению существующие.

Комментарии (3)
Кропотов Александр

Дмитрий, может при случае рассмотрите хотя бы коротко еще и react-static?

Ответить
Дмитрий Елисеев

Статическая генерация подойдёт только информационным сайтам без регистрации. А такое компаниям нужно весьма редко. Так что имеет ди смысл это рассматривать помимо документации?

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий