Новые разработки в пользовательском интерфейсе с помощью Java Script

В мире разработки пользовательского интерфейса большинство вещей теперь выглядят хорошо и улажены с появлением таких библиотек, как React, Vue, Angular, Next.js и так далее. Разработчики перешли от императивного способа программирования к декларативному. Императивное программирование похоже на пошаговые инструкции шеф-повара по приготовлению пиццы. Декларативное программирование похоже на заказ пиццы, не заботясь о шагах, необходимых для ее приготовления. Большинство последних библиотек или фреймворков, с которыми сейчас работают разработчики, являются декларативными.

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

«Изменения неизбежны. Изменения — это сила, которая всегда продвигает вперед. Нравится вам это или нет, все изменится, и подготовка к этим изменениям поможет вам лучше подготовиться к будущему».

1. Свежий и дено

Fresh — это полнофункциональная веб-инфраструктура для Deno, которая позволяет разработчикам создавать быстрые веб-приложения, отображаемые на сервере. У него есть несколько замечательных функций, он по умолчанию не отправляет java-скрипт в браузер. Он использует островную архитектуру (которая будет объяснена ниже, когда вы читаете), чтобы ограничить JavaScript определенными компонентами и может быть развернут на границе. Он не требует шага сборки во время разработки. Это полнофункциональный фреймворк для рендеринга на стороне сервера, такой как Ruby on Rails или Laravel, но вы пишете свои приложения на TypeScript, потому что он построен поверх Deno. Deno — это альтернатива времени выполнения для Node.js. Deno был создан Райаном Далем (также создателем Node.js). Преимущество использования Deno для веб-фреймворка заключается в том, что вы получаете первоклассную поддержку машинописного текста из коробки. И вы можете создать и развернуть свое приложение без этапа сборки. Это привело к увеличению времени сборки на 10 процентов.

Fresh можно мгновенно развернуть в браузере Edge. Простота с Deno действительно потрясающая. Одним из недостатков здесь является то, что у Deno гораздо меньшая система Eco по сравнению с Nodejs, и не все пакеты узлов совместимы.

Островная архитектура..?

Это также известно как частичная гидратация. Идея состоит в том, что вы создали веб-сайт с использованием фреймворка JavaScript. В этом случае Fresh использует Preact для пользовательского интерфейса, но вместо того, чтобы отправлять код JavaScript в браузер, вы визуализируете все в статический HTML на сервере. Это означает, что по умолчанию конечный пользователь получает только статическую HTML-страницу, которая намного быстрее загружается и отображается браузером. Однако во многих случаях веб-сайту потребуется больше интерактивности, чем просто статический HTML, и именно здесь вступают в действие острова.

Когда веб-сайту требуется больше интерактивности, чем статический HTML, он может включить JavaScript для отдельных компонентов. В Fresh это работает следующим образом: любой компонент, помещенный в каталог islands, будет отправлять JavaScript в браузер, в то время как другие компоненты будут отображаться как статический HTML. Он также основан на веб-стандартах, таких как fetch API. Он использует отправку формы в стиле ремикса при отправке обычной HTML-формы, вы можете написать код TypeScript, который будет обрабатывать эту отправку формы непосредственно в файле компонента для этой страницы. Пожалуйста, посетите раздел документации Fresh, чтобы понять концепции и изучить Fresh. Если вы хорошо разбираетесь в Next.js или React, вы почти у цели и легко разберетесь.

2. Булочка

Если вы разработчик, который всегда любит делать что-то новое и необычное. Тогда вот еще один JavaScript, который не нуждается в Node или Deno. Bun – это новая среда выполнения JavaScript с встроенным сборщиком пакетов, транспайлером, средством запуска задач и клиентом npm. Он утверждает, что это значительно быстрее, чем node или deno.

Среда выполнения JavaScript…?

Короче говоря, среда выполнения JavaScript — это место, где выполняется ваш код JavaScript, когда вы его запускаете. Самый популярный движок JavaScript — Google v8, на котором работают Chrome, Node и Deno. и делает выполнение JavaScript чрезвычайно быстрым с компиляцией JIT (Just In Time). И как Bun работает намного лучше, чем остальные, упомянутые выше, так это то, что он не использует движок v8, а вместо этого использует ядро ​​​​JavaScript из webkit, которое обычно считается более быстрым, но с ним сложнее работать. Кроме того, он написан на низкоуровневом языке программирования под названием ZIG. ZIG — относительно новый язык, похожий на C или Rust. Создатели Bun говорят, что отсутствие скрытого потока управления значительно упрощает написание быстрого программного обеспечения. Весело идти быстро, но, что более важно, булочка — это все в одной среде выполнения. У него есть собственный упаковщик для замены таких инструментов, как веб-пакет, а также собственный транспайлер. Таким образом, вы можете писать код TypeScript из коробки. С классными функциями, такими как высший уровень, жду идеи, которая уже была впервые реализована Deno, но bun также перенесет ваши файлы JSX. Также, как и Deno, он отдает приоритет веб-API, таким как fetch, и в то же время поддерживает множество основных модулей узла, а также API узла, что позволит многим пакетам npm также работать в bun. Фактически, он реализует алгоритм разрешения модулей узла, что означает, что вы можете устанавливать пакеты из npm в bun, и эти пакеты устанавливаются в 20 раз быстрее. Это похоже на волшебство. Еще одна приятная эргономическая особенность заключается в том, что переменные среды загружаются автоматически. Это не Node, где вам нужно устанавливать окружение в каждый проект. Bun также поставляется с собственным тестовым бегуном, похожим на jess, и, как вы можете себе представить, он быстрый.

Заключение

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