tl: dr; просто используйте этот https://learnredux.com/

Но почему?

Реактивные приложения в последнее время стали повальным увлечением во фронтенд-пространстве. Такие компании, как Google, Facebook и PayPal, штурмом взяли эту концепцию и сделали рывок в сторону клиентских интерфейсов на основе компонентов с интенсивным использованием данных.

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

Для любого начинающего фронтенд-инженера почти стало необходимостью начать продуктивно работать в этой парадигме. jQuery быстро стал бесполезным в этом новом ландшафте, и может быть трудно понять, какой путь выбрать. Поначалу это может показаться немного утомительным, но мы здесь, чтобы помочь вам преодолеть препятствие.

Как мне начать?

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

Какой фреймворк я использую?

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

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

Мы в DevX настоятельно рекомендуем использовать React, поскольку это один из наиболее широко используемых фреймворков в отрасли. У него также есть потрясающие расширения, такие как React Native, React VR и Proton, которые расширяют React за пределы сети.

Итак, как мне изучить React?

Мы настоятельно рекомендуем вам сначала использовать что-то вроде Create React App, так как настройка React поначалу может быть сложной. (Https://github.com/facebook/create-react-app)

Это здорово и все такое, но это базовое!

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

Итак, как мне выполнить маршрутизацию?

Используйте React Router. (v4 на данный момент) Это очень декларативно, и его довольно легко быстро освоить.

Но как насчет данных?

Это самая важная часть любого внешнего приложения и, конечно же, самая сложная. Здесь есть много модных словечек, таких как однонаправленный поток данных, чистые функции, поток, редукция и т. Д. Это, как правило, больше архитектурных шаблонов, которые вы можете использовать с любой из перечисленных выше сред, но большинство из них были созданы с учетом React. Поначалу это может быть очень страшно, но на самом деле все довольно просто. Вот несколько вариантов, которые вы можете использовать.

Flux, OG из фейсбука.

Redux, золотой стандарт.

MobX, черная овца.

По большей части мы используем redux здесь, в DevX. Это то, что большинство компаний используют в промышленности, и оно становится интуитивно понятным, если вы к нему привыкнете.

Здорово! Теперь я все понимаю, куда мне дальше идти?

Мир это твоя устрица! Прямо сейчас вокруг React есть многообещающая экосистема, в которой вы можете делать бесконечное количество вещей.

React Native, создавайте мобильные приложения с естественной скоростью.

React VR, как Pokemon Go.

Эльм, крестный отец Redux.

Расширенные шаблоны.

Тестирование в React.

Вы заинтересованы в создании значимых приложений и обучении у единомышленников? Тогда DevX может быть для вас. Каждый квартал мы приглашаем разработчиков, дизайнеров и менеджеров по маркетингу, чтобы помочь вам развить свои навыки с помощью создания приложений, которые меняют ситуацию. Присоединяйтесь к нашему списку рассылки на https://ucladevx.com! Если вам понравилась эта статья, дайте нам хлопать в ладоши.