React JS почти изжил себя.
React JS - это JavaScript-фреймворк с 10-летним стажем и огромным сообществом, поддерживающим его рост и развитие. Но вам не стоит изучать его в 2022 году. Сейчас мы вам расскажем, почему.
Сначала краткая справка: #React на данный момент является самым популярным фронтенд-фреймворком в индустрии. Он предоставляет конкретные API, шаблоны проектирования программного обеспечения и инструментарий, помогающие создавать веб-приложения быстрее и более удобным для обслуживания способом. Огромное сообщество разработчиков также постоянно создает инструменты и компоненты, которые вы можете интегрировать в свои собственные приложения или веб-сайты, что еще больше увеличивает его популярность и полезность.
Что такое React JS?
В настоящее время React является самым популярным фронтенд-#фреймворком в отрасли. Он предоставляет конкретные API, модели проектирования программного обеспечения и инструменты, помогающие создавать веб-приложения быстрее и удобнее. Огромное сообщество разработчиков также постоянно создает инструменты и компоненты, которые вы можете интегрировать в свои собственные приложения или веб-сайты, что повышает его популярность и полезность.
Плюсы React JS
Вы можете выбрать для изучения React по многим причинам. Во-первых, он быстро осваивается начинающими разработчиками. Если вы не являетесь опытным веб-разработчиком, React может стать легким способом одновременно познакомиться с множеством концепций HTML, CSS и JS. Вам также необязательно начинать с основ, если вы начинаете свою карьеру с React - вы можете брать функции, созданные другими разработчиками, и комбинировать их, что часто избавляет от необходимости писать функции с нуля.
React также учит пользователей некоторым положительным практикам разработки. Его природа заставляет вас изолировать функциональность компонентов пользовательского интерфейса и создавать небольшие части интерфейса, которые хорошо выполняют только одну задачу.
В общем, методы, которые более слабо связаны друг с другом (с меньшим количеством внешних зависимостей), легче поддаются UNIT тестам и легче поддаются совместной работе, особенно если вы работаете над большим приложением. React также учит вас мыслить как функциональный #программист и даже расширяет концепции функционального программирования с методами, которые возвращают HTML вместо объектов JavaScript.
Почему вам не стоит изучать React JS
Несмотря на все плюсы, существуют причины не изучать React. Мы подошли к переломному моменту, когда, возможно, не стоит добавлять этот инструмент в свой набор инженера.
Прежде всего, React мешает разработчикам изучать многие основы веб-разработки, особенно когда речь идет о разделении задач и основах основных веб-технологий, HTML, CSS и JS. Интерфейс React абстрагирует браузерные #API для создания веб-сайтов так, что разработчикам, которые умеют создавать только на React, не нужно разбираться в них.
Когда новая спецификация разметки HTML достигнет полной поддержки браузеров, эти разработчики часто будут последними, кто будет ее использовать, потому что приложения React часто плохо сочетаются с возможностями браузеров. Эта проблема - огромная потеря для сообщества разработчиков в целом: Мы не даем инженерам стать настоящими экспертами в веб-технологиях, потому что они слишком заняты изучением специфики React.
Во-вторых, React требует чрезвычайно сложного инструментария для сборки, что в конечном итоге снижает сопровождаемость кода. Чтобы запустить код React в производство, необходимо пройти как минимум четыре этапа транспиляции, что часто приводит к сложным конфигурациям, на освоение которых могут уйти годы.
Переводя на простой язык
Если не углубляться в детали, то файлы React (обычно с расширением .jsx) не могут напрямую выполняться веб-браузером и должны быть преобразованы в читаемый тип файлов, обычно в файлы #javascript . В конце всех преобразований код, который вы написали, становится неузнаваемым по сравнению с выполняемым кодом, что значительно затрудняет отладку.
Эти сложные процессы сборки также значительно усложняют долгосрочное сопровождение приложений. Из-за сложности инструментов сборки выбор инструмента в конечном итоге может оказаться таким же ограничивающим фактором, как и выбор front-end фреймворка с точки зрения удобства сопровождения. Если конфигурация инструмента сборки вашего приложения устарела, найти новых разработчиков, которые смогут его поддерживать, может быть очень сложно.
Наконец, новаторская концепция React по разработке пользовательского интерфейса на основе компонентов была принята сообществом разработчиков в целом.
Теперь существует все больше разнообразных вариантов, предоставляемых как конкурирующими фронтенд-фреймворками, так и самими браузерами. React создал смену парадигмы в веб-разработке, переведя разработчиков от мышления о HTML, CSS и JS как об отдельных ресурсах к мышлению в терминах функциональных единиц или "компонентов", которые содержат все три компонента и могут использоваться совместно и повторно. Этот фреймворк сейчас является де-факто ментальной моделью для веб-разработки, и пространство стало перенасыщено выбором.
Дни React сочтены
Признаки того, что React теряет свою монополию на компонентную веб-разработку, очевидны. Конкурирующие фреймворки начинают вырываться вперед по уровню удовлетворенности разработчиков, а количество поисковых запросов по React за последний год сократилось. Наконец, веб-компоненты, встроенный API браузера для объединения HTML, CSS и JS в многократно используемые фрагменты, наконец-то приняты основными браузерами и, по прогнозам, станут одной из самых важных технологий в этой области.
У каждого инструмента есть жизненный цикл, и React начинает подходить к концу своей (чрезвычайно влиятельной) жизни. Концепции, которые React привнес в мир веб-разработки, будут продолжать расти и развиваться, но если вы еще не в мире React-разработки, мы бы рекомендовали вам сделать шаг назад и пересмотреть свои взгляды, основываясь на текущей доступной вам технологии.