The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Facebook открыл фреймворки для построения интерфейса: Litho, React Fiber, Relay Modern и React VR

19.04.2017 12:56

На проходящей в эти дни конференции F8 2017, Facebook представил несколько новых открытых фреймворков для построения интерфейса:

  • Открыт код Litho, декларативного фреймворка для построения эффективного интерфейса пользователя для платформы Android. Фреймворк уже используется в приложениях Facebook для Android (Facebook app, Facebook Lite, Messenger, Workplace), которыми пользуется более миллиарда человек. Код открыт под лицензией BSD.

    В качестве достоинств Litho отмечается обеспечение высокого качества работы приложений, независимо от стабильности сетевого соединения и скорости работы устройства. Интерфейс формируется как набор отдельных компонентов, которые генерируются с упреждением, компонуются асинхронно в единое целое специальным фоновым потоком и отрисовываются по частям, не допуская возникновения блокировок и предоставляя всегда плавную прокрутку. Для снижения потребления ресурсов в Litho применяется техника повторного использования типовых компонентов. После перевода приложений Facebook на Litho производительность прокрутки увеличилась на 35%, при снижении потребления памяти и упрощении тестирования кода.

  • React Fiber - полная переработка ядра фреймворка React с целью расширения возможностей, связанных с анимацией, раскладкой элементов интерфейса (layout) и управлением жестами. Ключевым отличием является переход на систему инкрементальной отрисовки, при которой работа разбивается на несколько частей. Также появились такие возможности, как остановка, сброс и повторное использование выполняемых работ, установка разных приоритетов для разных типов обновлений, новые примитивы для распараллеливания работы, возможность возврата массивов и строк от обработчика отрисовки, расширенные средства обработки ошибок. React Fiber позволяет обеспечить более качественную работу на маломощных устройствах, на которых обычный React начинал притормаживать. При этом обеспечена поддержка обратной совместимости с приложениями, ранее написанными для React.
  • Relay Modern - новый JavaScript-фреймворк для построения React-приложений, ориентированных на управление данными (data-driven). Достаточно определить требования к данным и зависимости через GraphQL и фреймворк сам решит когда и как извлечь нужные данные, избавляя разработчика от необходимости использования API для прямого обращения к хранилищу. Данные запрашиваются только когда они необходимы, а для увеличения пропускной способности применяется техника агрегирования нескольких запросов. При обновлении данных в хранилище автоматически обновляется и представление данных в приложении. Код открыт под лицензией BSD.
  • Открыт код библиотеки React VR, предназначенной для разработки на языке JavaScript web-приложений, связанных с виртуальной реальностью, используя декларативный стиль программирования React и React Native. React VR построен поверх API WebGL и WebVR и включает компоненты для формирования 3D-сцен, комбинируя 3D-модели и сферические панорамы в режиме 360-градусов с обычным двумерным интерфейсом, текстом и изображениями. Код поставляется под лицензией BSD.

  1. Главная ссылка к новости (https://code.facebook.com/post...)
  2. OpenNews: Facebook представил новый язык формирования запросов GraphQL
  3. OpenNews: Facebook представил фреймворк React Native и среду разработки Nuclide
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/46408-react
Ключевые слова: react, litho, facebook
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (16) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Crazy Alex (ok), 13:48, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    И опять джаваскриптерам есть куда бежать
     
     
  • 2.10, Аноним (-), 17:24, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Не читаю, а комменты пишу. Там первое совсем не JavaScript.
     
     
  • 3.12, Crazy Alex (ok), 21:49, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зато три остальных...
     

  • 1.2, Аноним (2), 13:48, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    >предназначенной для разработки на языке JavaScript web-приложений, связанных с виртуальной реальностью

    Мне жаль батареек этих VR очков.

     
  • 1.3, Аноним (-), 15:00, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Ахиллес и черепаха. Вечно бегущие JS-разрабы.
     
  • 1.4, Аноним (-), 15:02, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    "Производительность прокрутки"
    Да, появилась такая проблема с развитием всевозможных фреймворков.
     
     
  • 2.5, Аноним (-), 15:15, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Когда сравниваю HTC Sense на Android 2.3.5 с современными оболочками, кажется что современные тормозят больше, а делают меньше
     
  • 2.16, KonstantinB (ok), 16:31, 20/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    "Проблема" появилась, когда появилась техническая возможность отказаться от постраничной навигации, которая с точки зрения UX зачастую весьма убога, в пользу псевдобесконечного скролла.
     

  • 1.6, ano (??), 15:31, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    "Интерфейс формируется как набор отдельных компонентов, которые генерируются с упреждением, компонуются асинхронно в единое целое специальным фоновым потоком и отрисовываются по частям, не допуская возникновения блокировок и предоставляя всегда плавную прокрутку. "

    Вот какого хрена в DE для desktop-a так не делается?

     
     
  • 2.7, Аноним (-), 16:56, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Наверное потому, что DE для desktop-a написаны на языках аля C++? JS-ненавистники должны страдать.
     
     
  • 3.8, Аноним (-), 16:57, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Если что, это был сарказм. Правда, получилось не очень...
     
  • 3.9, Singularity (ok), 17:16, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > JS-ненавистники должны страдать.

    Но Litho же на Java...

     
  • 2.13, Crazy Alex (ok), 21:51, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Лучше б они при нехватке ресурсов все эти анимашки, преерисовки и прокрутки на фиг отключали автоматом. А ещё лучше - чтобы и не включали.

    (глядит на свой ion3 ) хм, чего это я...

     

  • 1.11, Аноним (-), 19:30, 19/04/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Litho - Интересно... это чьё "Лицо"? :) Этот проект наверное назвал выходец из русско говорящих стран?
     
     
  • 2.14, Аноним (14), 22:46, 19/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Судя по всему, это отсылка к литографии.
     
  • 2.15, Вы забыли заполнить поле Name (?), 00:12, 20/04/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Этот проект наверное назвал выходец из русско говорящих стран?

    тогда бы он назывался Ruka Litso

     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру