Amazon Web Services выпустила AWS UI, который бизнес облачных сервисов описывает как «первый шаг в более широком процессе создания новой системы проектирования с открытым исходным кодом».

Контекстом для этого является открытый исходный код кода пользовательского интерфейса для Помощник по портированию .NET, инструмент для сканирования приложений .NET Framework, предназначенных только для Windows, чтобы определить, что нужно исправить, чтобы перенести их на .NET Core, версию .NET с открытым исходным кодом, работающую в Linux.

AWS, похоже, стремится убедить клиентов отказаться от Windows, и упомянул в своем посте на «производительность, экономию средств и надежную экосистему Linux».

Хотя помощник по портированию для .NET уже был с открытым исходным кодом, код для пользовательского интерфейса инструмента, созданный с использованием React и Electron, ранее был недоступен. React — это популярный фреймворк JavaScript, изначально разработанный Facebook, а Electron — проект для создания кроссплатформенных настольных приложений с использованием JavaScript, HTML и CSS.

Почему бы не создать инструмент переноса .NET с .NET? Поскольку приложения .NET Framework работают только в Windows, вы можете задаться вопросом, почему AWS не воспользовалась возможностью запускать код .NET Core на рабочем столе с помощью Windows Forms, Windows Presentation Foundation или UWP. Хотя это возможно, AWS, похоже, стандартизирует JavaScript / TypeScript и в некоторой степени React для своих компонентов кроссплатформенного пользовательского интерфейса, получая преимущество в виде возможности совместного использования библиотек между вебом и настольными компьютерами.

Это направление теперь явное, с первым выпуском AWS UI, описанный как «набор компонентов React, которые помогают создавать интуитивно понятный, отзывчивый и доступный пользовательский интерфейс для веб-приложений».

Читайте также:
Tableau 2020.4 заполняет браузер красивыми фрагментами диаграмм, так что вы можете удалить крупного клиента из хранилища °

Хотя проект пользовательского интерфейса AWS выпущен под лицензией Apache 2.0 с открытым исходным кодом, исходный код еще не находится на GitHub или аналогичном, а доступен только в виде пакетов NPM.

Компания заявила: «Исходный код и документация AWS UI еще не открыты и не выпущены. На данный момент лучший способ получить список доступных компонентов и параметров для компонентов — заглянуть в пакет в node_modules. Если вам нужны дополнительные помогите с пользовательским интерфейсом AWS, сообщите о проблеме, мы будем рады предоставить вам необходимую помощь ».

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

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

Почему AWS создает «новую систему проектирования с открытым исходным кодом» (по ее собственным словам)? Мы размышляем, но как компания, предоставляющая облачные сервисы, AWS не занимается созданием клиентских приложений, но заинтересована в том, чтобы сделать свои сервисы удобными для использования.

Существует AWS SDK для всех языков, от C ++ до Python, от Java и .NET до Android и iOS. Поддержка этих разнообразных систем имеет важное значение, но для некоторых услуг сложность создания клиента по-прежнему является препятствием для внедрения.

Читайте также:
Под угрозой судебного пересмотра UK.gov соглашается на консультацию, прежде чем расширять роль NHS Palantir за пределы пандемии • The Register

Одним из примеров является Chime SDK, его решение для видео, аудио и чата, поэтому наряду с поддержкой в ​​SDK есть также набор Компоненты React которые предоставляют компоненты более высокого уровня для разработчиков, создающих приложения с помощью Chime. React — хороший выбор, потому что в сочетании с такими решениями, как Electron, он охватывает широкий спектр платформ.

Одна странность во всем этом заключается в том, что фактический пользовательский интерфейс .NET Porting Assistant чертовски прост и уродлив. Учитывая его назначение, это не проблема, но мы, вероятно, можем надеяться на более впечатляющие примеры пользовательского интерфейса AWS со временем. ®