Новости 512 #139

В этом выпуске: Ruby 3, анонс React Server Components, фреймворк Turbo от Basecamp, Node.js 15.5.0, работа памяти в JavaScript и ещё больше опросов.

Интересные публикации

Как часто вы слышите фразу «Ой, смотрите, потекло, потекло!»? Надеюсь, что не очень. Тем не менее, вот статья об утечках памяти в Angular. В тексте затрагиваются Observables, слушатели событий и ShareReplay. По каждому пункту есть наглядные примеры утечек и методы их исправления. Кроме того, автор, как хороший доктор, рассказывает не только о решении проблем, но и о том, как их предупредить и какие практики для этого использовать.

Феликс Гершау (Felix Gerschau) в своём блоге опубликовал статью о том, как работает управление памятью в JavaScript. Это продолжение статьи об Event Loop и Call Stack. Автор компактно, но достаточно глубоко разбирает жизненный цикл памяти, кучу и стек, ссылки. Также затрагиваются сборка мусора и ссылки в JS. В конце статьи вы найдете ссылки для дальнейшего изучения вопроса.

Андрей Ситник устал от огромных манифестов и дюжин разных фавиконок для разных окружений, его терпение лопнуло. В блоге Злых Марсиан появилась статья о том, как использовать всего 5 изображений и один JSON для отображения фавиконок везде. Подход позволяет покрыть практически все браузеры, экономит нервы перфекционистам и порадует оптимизаторов.

Дмитрий Чудинов на Хабре рассказал о «большой тройке» фреймворков — React, Angular и Vue. В статье есть история их создания и плюсы и минусы каждого. Материал обзорный и не поможет вам выбрать фреймворк для конкретного проекта, но от этого не менее интересный. Отмечу, что знать историю создания инструментов — важно, потому что это позволяет посмотреть на принципы, которые лежат в основе, и проследить логику их создателей. Автор обещает продолжение, в котором расскажет, как всё-таки выбрать фреймворк для своего проекта.

Следующий материал — от компании Telerik. В своём блоге они собрали советы для продуктивности и роста React разработчика. Советы дают известные разработчики, подкастеры-фронтендеры и менторы различных курсов. Рекомендаций довольно много. Есть очевидные, в духе «не нужно прокрастинировать» и «гуглите получше», а есть и не совсем очевидные, например, про публичное освоение React, о том, что не стоит торопиться делать shared-компоненты, и как не поддаваться хайпу.

Новости релизов

На этой неделе состоялось большое событие. Вышел Ruby 3! Релиз направлен на три вещи: скорость, типизацию и многопоточность. Типизация со статическим анализом, скорость за счёт прокачки JIT-компиляции, и шедулер для многопоточности. Автор Ruby Юкихиро Мацумото, также широко известный как Matz, сказал, что Ruby 3 в три раза быстрее Ruby 2. Событие отличное, мои поздравления Ruby сообществу. Мифы о том, что Ruby стар и никому не нужен, могут быть развеяны совсем скоро.

Следующий релиз — выпуск Node.js 15.5.0. В этой версии продолжается развитие поддержки AbortSignal API. Поддержка была расширена на модули child_process и stream. Также была добавлена поддержка BigInt в метод querystring.stringify().

Другие новости

Команда React преподнесла всем небольшой новогодний сюрприз. В блоге фреймворка вышел пост с видео о новой фиче — React Server Components. Предполагается, что фича поменяет подход к рендерингу компонентов и перенесёт часть нагрузки на бэкенд. В блоге React появился пост с видео, в котором демонстрируются преимущества фичи — например, отсутствие в клиентском бандле и загрузка по требованию, также поясняется отличие от SSR. Всё показано на демоприложении, видео идёт примерно 45 минут, получилось интересно и довольно многообещающе. Отмечу, что фича — в разработке, этот анонс был сделан для того, чтобы услышать мнение сообщества и собрать первую обратную связь. Не знаю, ждёт ли нас революция в разработке SPA, но вдобавок приложу разбор фичи от Эдди Османи.

Далее ещё один кандидат на хайп. Basecamp представила фреймворк Turbo. Turbo использует Hotwire — семейство JS-библиотек для создания динамических интерфейсов вокруг отправки HTML с сервера на клиент через WebSocket. Если проще, интерактивность интерфейсов будет происходить при помощи замены кусков HTML. Этот подход использовался для разработки почтового сервиса hey.com, о котором я рассказывал ранее. Мнения разделились: кто-то говорит, что идея украдена, кто-то — что она бесполезна, но есть и мнения, что это перевернёт индустрию. Лично я не очень верю. Интересный факт: это порт библиотеки Hotwire для Action Script, да, того самого, из Flash.

Больше опросов богу опросов. Я уже говорил, что вы могли устать от подведения итогов года. Но на всякий случай, чтобы вы ничего не пропустили, предлагаю вашему вниманию подборку результатов опросов от Джефа Грэхема (Geoff Graham). Там есть те, о которых я уже рассказывал, и гораздо больше тех, о которых я даже не знал. Например, UXTools, опросы LinkedIn и Upwork о работе в IT, и другие. Также в статье вы найдёте короткое резюме по каждому из них. Шутки про опросы — это хорошо, но если серьёзно, интересоваться результатами таких опросов, в том числе из смежных сфер, полезно для расширения кругозора и понимания трендов.

Напоследок новость от консорциума всемирной сети или W3C. Появилась первая версия веб-стандарта Screen Fold. Да-да, для тех самых складывающихся экранов. Дорогие слушатели, я искренне надеюсь, что складные экраны умрут, канут в Лету, и вам не придётся страдать разработкой фич для них.

Комментарии

Продолжая пользование данным Сайтом, вы даете свое согласие на сбор и обработку технической информации (cookies). Подробнее о cookies читайте вПолитике конфиденциальности.