Такие разработчики, как Самер Буна, Парашурам Н, Нихар Венугопал, Кэмерон Вестленд и Джей Фелпс недавно обсудили с нашей командой новые разработки на JavaScript.

Представленные видео дадут вам представление о том, что происходит с GraphQL, Redux-Observable, React Fiber, предложением импорта TC39, а также познакомят с новым термином «Extensible React».

GraphQL и ReactJS

Самер Буна о ценности GraphQL, подписок GraphQL, ReactJS

Самер Буна говорит о GraphQL и дает нам представление о том, насколько здорово работать с языком запросов и насколько он идеально подходит для React. Язык очень четко описывает точные требования к данным и оптимизирует процесс обмена данными между интерфейсными приложениями и сервером. В целом, это лучший язык и замена REST API.

Самер также представляет подписки GraphQL, которые предлагают связь в реальном времени, Самер также рассказывает о новых приложениях, которые позволяют мгновенно получать графический API из облака. Если человек хочет разместить свои данные в облаке, теперь есть приложения, которые можно использовать для определения моделей и немедленного получения необходимого графического API. Эта разработка устраняет входные барьеры для начинающих разработчиков, поскольку им больше не нужно писать полные серверные приложения для использования GraphQL для своих интерфейсных приложений, вместо этого они могут просто сгенерировать API в облаке.

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

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

Mobile Center, производительность браузера и инструменты для React Fiber от Microsoft

Парашурам Н. описывает работу над Mobile Center, производительность браузера и инструменты для React Fiber в Microsoft

В Microsoft Парашурам Н. работает менеджером программ над рядом проектов. Один из примеров включает расширение Visual Studio Code (VS Code), созданное для React, которое позволяет авторам отлаживать приложения прямо из своего VS Code. Проводятся эксперименты, чтобы открыть возможность тестирования реактивных приложений в облаке.

Mobile Center - еще один проект Microsoft. Это система, которая работает вместе с VS Code, поэтому люди могут выбирать, хотят ли они использовать одно над другим или комбинировать их. Mobile Center позволяет разработчикам выбирать репозитории Github, с которыми они хотят работать, затем они подписываются, создаются, тестируются в облаке и распространяются среди конечных пользователей.

У веб-разработчика есть множество преимуществ, одно из которых - способность немедленно вносить изменения в жизнь пользователей. В процессе представления изменений или новых функций нет задержек, и усталость от JavaScript обычно не является проблемой. Люди, развертывающие код, могут делать это постоянно, без сбоев. Практики и технологии разработки, такие как LiveReload, Hot Module Replacement и Browser Sync, также упрощают управление веб-созданием. Все эти преимущества уникальны для мира веб-разработки и являются причинами, по которым React так хорошо сочетается с Интернетом.

Хотя приложения действительно являются нативными и специфичными для сети, перейти к React Native в сфере мобильной разработки довольно легко. Причина в том, что идеи могут быть мгновенно реализованы для клиентов с помощью таких вещей, как Code Push, и ряд инструментов, таких как функция отладки путешествия во времени в ChakraCore, доступны для помощи в этом процессе.

Также появилось много проектов, связанных с производительностью, например, browser-perf, который позволяет автоматизировать веб-производительность или системы мониторинга; и приложение tv monster, которое отслеживает производительность библиотеки React.js. Приложение автоматически собирает данные о производительности для всех фреймворков и всех версий React. Он работает в Chrome и ряде мобильных браузеров. Что отличает эти тесты от существующих тестов производительности React, так это то, что они проводятся с точки зрения браузера, а не специфичны для JavaScript.

Парашурам также обсуждает философию Microsoft, RxJS и инструменты разработки для Redux Observable на VS Code.

Предложение по импорту TC39 и Webpack 2

Предложение по импорту TC39, Webpack 2 и сообщество React на Востоке с Нихаром Венугопалом

В настоящее время основная задача Нихара как инженера-программиста - предоставить разработчикам решение, которое поможет сделать создание приложений более эффективным. Он является одним из авторов предложения по импорту, которое помогает авторам отправлять меньше кода и выделять важные для оптимизации производительности (особенно на мобильных устройствах).

Предложение по импорту доступно в Webpack 2 и находится на стадии 3 предложения TC39, что означает, что оно еще не появилось в браузерах. Однако люди согласны с тем, что это работает, поэтому в ближайшее время он будет реализован.

Начало импорта-предложения было вдохновлено разговорами о мобильных устройствах для CSS и мобильных для UI / UX. Поскольку мобильное приложение для javascript еще не обсуждалось, но скорость и производительность мобильного приложения нуждались в улучшении, эта тема, наконец, начала всплывать. Возник вопрос «как я могу отправить только минимальный объем JavaScript, необходимый, чтобы показать пользователю, что находится на экране». Также был введен динамический импорт, поэтому в webpack могли происходить ленивая загрузка и разделение кода.

Нихар также рассказывает о сообществе React на Востоке. Хотя и далеко, разработчики в этой области все еще чувствуют себя включенными в сообщество благодаря большому участию всех разработчиков, разнообразию и общению между членами команды. Однако кое-что, что можно было бы улучшить на Западе, - это большая концентрация внимания на производительности. В отличие от VueJS, React не получил такого широкого распространения из-за проблем с производительностью.

Расширяемый React

Кэмерон Вестленд представляет «Extensible React»

Кэмерон Вестленд - архитектор программного обеспечения в Autodesk, в настоящее время работает над новой веб-версией, работающей на React. Введен термин «Extensible React», который можно определить как «декларативный подход к созданию подключаемых веб-приложений».

Расширяемость часто используется в приложениях. Однако когда дело доходит до создания расширяемых приложений, много разговоров не ведется. Кэмерон и его команда в Autodesk стремятся вызвать более широкое обсуждение этой темы, отвечая на такие вопросы, как «Если у человека есть панель инструментов и он хочет добавить значок на панель инструментов с помощью расширения, как бы он / она это сделал, если приложение построено на React? ». Одним из примеров решения является почтовый клиент Annihilus. Он построен на React, предлагает расширения и позволяет пользователям добавлять собственные части в свой ночной почтовый клиент.

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

Redux-Observable и React Fiber

Джей Фелпс о Redux-Observable, React Fiber и ReactJS

Сообщество React считается одним из самых открытых сообществ, когда дело доходит до принятия новых идей. Это привело к радикальному переосмыслению и в то время даже считалось антипаттерном. React смог переосмыслить то, как все было сделано, и создать новые передовые практики. С тех пор эти новые нормы были распространены и приняты другими фреймворками, такими как Angular и Ember.

Джей обсуждает несколько проектов с открытым исходным кодом, которые лидируют в экосистеме React. К ним относятся redux-observable, React Fiber и Jest.

Джей разделяет видение redux-observable, или RxJs, - это промежуточное ПО для создания или отмены побочных эффектов асинхронности с использованием Epic в качестве соавтора этой библиотеки. Джей и Бен Леш были вдохновлены другими идеями сообщества, такими как redux-thunk и redux-saga.

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

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

Не упустите свой шанс принять более активное участие в жизни сообщества, внося свой вклад! Вы можете найти библиотеку React здесь.

Эта статья написана в соавторстве с Trinh Kien и Tracy Lee