|
| 1 | +--- |
| 2 | +title: 'В этом выпуске: явное управление ресурсами в TS и JS, лучшие практики TS, типы данных JavaScript и аналитика по Vue.js, релизы TypeScript 5.3 и Vite 5, а также старт State of JS 2023 и странная история с конференцией DevTernity.' |
| 3 | +soundcloudLink: 'https://soundcloud.com/csssr/typescript-53-ts-praktiki-vite-5-analitika-po-vue-ekosisteme-state-of-js-2023' |
| 4 | +date: '2023-12-01T00:00:00.000Z' |
| 5 | +episodeNumber: 245 |
| 6 | +tag: 'news' |
| 7 | +author: 'Ислам Виндижев' |
| 8 | +--- |
| 9 | + |
| 10 | +Всем привет, это «Новости 512» от CSSSR. Этот выпуск получился совсем небольшим, но я решил, что его стоит выпустить без переноса. Можно сказать, что это мини-выпуск. |
| 11 | + |
| 12 | +В этом выпуске мы поговорим о явном управлении ресурсами в TS и JS и лучших практиках TS, погрузимся в типы данных JavaScript, коснёмся современного CSS и аналитики по Vue.js. Ещё в этом выпуске мы обсудим релизы TypeScript 5.3 и Vite 5, а также старт `State of JS 2023` и странную истории с конференцией DevTernity. |
| 13 | + |
| 14 | +<ParagraphWithImage imageName="laptopNews" > |
| 15 | + ### Интересные публикации |
| 16 | + |
| 17 | +Я уже упоминал явное управление ресурсами, когда фича появилась в TS. Илья Поздняков в своем блоге решил [подробнее раскрыть фичу](https://iliazeus.github.io/articles/js-explicit-resource-management-ru/) и рассказать, как она работает. Он разбирает управление ресурсами на примерах разного уровня сложности: подписки на события, работа с файлами, мьютексы и очередь задач. В конце он объединяет их все в один большой пример. Мне понравилась статья и примеры — в ней хорошо раскрывается, для чего может понадобиться явное управление ресурсами. Рекомендую. |
| 18 | +</ParagraphWithImage> |
| 19 | + |
| 20 | +Слово `any` в вашем проекте встречается чаще, чем звёзды на небе? Вы снова запутались в типах и вам хочется поработать в столярке? Тогда следующая статья для вас. Данила Егоренко на Хабре собрал [хорошие практики TypeScript](https://habr.com/ru/articles/775524/) специально для вас. В статье разбираются использование дженериков, оператора `extends`, описание функций и другие фишки. Всё коротко, но ясно, есть и полезные ссылочки. |
| 21 | + |
| 22 | +У нас есть прекрасные стандарты почти на всё, но как оно работает на практике? Роман Максимов [заглянул под капот движка V8](https://habr.com/ru/articles/774548/), чтобы показать читателям, как на самом деле могут выглядеть привычные нам типы данных в реализации. Он рассматривает все примитивы языка, включая `null` и `undefined`, и показывает, как они выглядят. Это продвинутый уровень, но всем приобщиться и почитать не вредно. |
| 23 | + |
| 24 | +Очень часто можно услышать, что веб становится тяжелее и медленнее из-за огромного объёма JS. Эту проблему поднимает и Райан Таунсенд (Ryan Townsend) в [своём докладе](https://www.youtube.com/watch?v=f5felHJiACE). Он рассказывает о том, что было бы хорошо двигаться в сторону упрощения архитектуры, использования веб-стандартов и большей универсальности веб-платформы. В ходе доклада он сравнивает некоторые подходы и подсвечивает их плюсы и минусы. Доклад идёт около часа. Подробнее — по ссылке. |
| 25 | + |
| 26 | +Джош Комо (Josh Comeaw), которого вы можете помнить по курсам и полезным обучающим статьям в его блоге, создал [интерактивный обучающий гайд по CSS Grid](https://www.joshwcomeau.com/css/interactive-guide-to-grid/). Он делал примерно такой же по флексам и решил продолжить эту работу. В гайде есть теория гридов, много примеров, в которых можно управлять параметрами и сразу видеть результаты, всё хорошо структурировано и доступно изложено. К выпуску я приложу [ссылку и на гайд по флексам](https://www.joshwcomeau.com/css/interactive-guide-to-flexbox/) — может пригодиться. |
| 27 | + |
| 28 | +Как проще писать CSS в 2023? Джефф Грэхем (Geoff Graham) решил подсобрать в своей статье [новинки CSS](https://www.smashingmagazine.com/2023/11/few-ways-css-easier-write-2023/), которые уже в принципе плотно вошли в нашу жизнь. Эта заметка больше о том, как решаются некоторые типовые задачи сейчас. Например, вы увидите там центрирование, сохранение пропорций, работу с направлением текста и другие небольшие задачки. |
| 29 | + |
| 30 | +Евгений Архипцев на Хабре рассказал о том, как создавал свою [систему работы с формами для Vue 3](https://habr.com/ru/articles/774606/). В процессе работы он столкнулся со сложностями разработки больших форм и управления данными в них. Он решил создать свою библиотеку, которая работает на подписках. Результат своей работы он оформил в виде библиотеки в репозитории с примерами и документацией. [Ссылку на репозиторий](https://habr.com/ru/articles/774606/) я приложу к выпуску, а подробнее о создании библиотеки — в оригинальной статье. |
| 31 | + |
| 32 | +Кстати, насколько популярен сейчас Vue? Вот вам небольшая [аналитика на эту тему](https://habr.com/ru/articles/776480/). После выхода Vue 3 и Composition API команда фреймворка стала пробовать расширить влияние на рынок фреймворков вширь. Появляется больше дополнительных инструментов, которые делают независимыми от фрейморка, активно рассказывают о них и популяризуют. В итоге общая популярность фреймворка заметно растёт. Больше подробностей — в статье на Хабре. |
| 33 | + |
| 34 | +Завершит рубрику прекрасный репозиторий для [тренировки владения промисами](https://github.com/henriqueinonhe/promises-training). Он рассчитан на ребят, которые уже базово разобрались в их работе и хотят шагнуть на ступеньку выше либо углубиться в детали. Есть и автотесты для проверки решений. |
| 35 | + |
| 36 | +<ParagraphWithImage imageName="manWithLaptop"> |
| 37 | + ### Новости релизов |
| 38 | + |
| 39 | +Доступен [TypeScript 5.3](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/). В этой версии полностью поддерживаются атрибуты импортов, которые находятся на stage-3 для нового стандарта EcmaScript. Она позволяет сообщить рантайму о типе импортируемого модуля. Помимо этого, в релизе представлен ряд улучшений для `type narrowing` или сужения типов, интерактивные подсказки для типов в редакторах и другие. В целом релиз не очень большой, но в нём много маленьких удобств. Подробнее — в официальном блоге TypeScript. |
| 40 | +</ParagraphWithImage> |
| 41 | + |
| 42 | +Вышла [пятая мажорная версия бандлера и фронтенд-тула Vite](https://vitejs.dev/blog/announcing-vite5). Vite теперь работает на Rollup 4. Подключение Vite в стиле CommonJS теперь считается устаревшим, ряд фич привели в соответствие разным типов билдов, а файлы манифестов теперь по умолчанию генерируются в директории `.vite`. Важный момент: Vite 5 поддерживает только Node.js 18 и 20. |
| 43 | + |
| 44 | +<ParagraphWithImage imageName="laptopNews" > |
| 45 | + ### Другие новости |
| 46 | + |
| 47 | +Пока не подъехали результаты других ежегодных опросов, предлагаю вам принять участие в [опросе](https://survey.devographics.com/en-US/survey/state-of-js/2023) `State of JS 2023`. Он уже стартанул, у вас есть возможность поделиться своим мнением. И, как обычно, я расскажу о его результатах и тенденциях, которые выявил опрос. |
| 48 | +</ParagraphWithImage> |
| 49 | + |
| 50 | +В прошлом выпуске мы обсуждали Альтмана, который, кстати, вернулся в OpenAI. С момента прошлого выпуска случился ещё один казус. Конференция DevTernity 2023, которая должна была пройти в Риге, отменена. [Выяснилось](https://habr.com/ru/news/776824/), что организатор добавлял на сайт конфы несуществующих женщин-докладчиц с выдуманными должностями в крупных компаниях. Более того, появилось подозрение, что он уже несколько лет ведёт популярный блог вымышленной программистки с более чем 100 тысячами подписчиков. Докладчики стали отказываться от выступлений, в итоге конференция была сорвана. Организатор, конечно, нашёл оправдания некоторым моментам, но всё равно выглядело это плохо, и обман, я считаю, весьма вероятен. Что сказать, это карма. Искусственно, обманом создавать разнообразие или `diversity` лично я считаю не особенно мудрой идеей. Когда обманываешь, стоит быть готовым к последствиям. |
| 51 | + |
| 52 | + ### Пишите нам и читайте |
| 53 | + [Telegram—канал CSSSR](https://t.me/csssr) |
| 54 | + |
| 55 | + [Twitter CSSSR](https://twitter.com/csssr_dev) |
| 56 | + |
| 57 | + [Twitter новостей](https://twitter.com/csssr_news) |
| 58 | + |
| 59 | + [Telegram ведущего](https://t.me/Vindizh) |
| 60 | + |
| 61 | + [Twitter ведущего](https://twitter.com/Vindizh) |
0 commit comments