⇤ На главную

Сова рассылает выпуск #18

4 авг. 2022 г.

Всем приятного дня! Я уверен, что вы ждали этот выпуск. В этот раз я собрал весьма мясную подборку о самых разных аспектах frontend разработки.

С удовольствием буду выпускать подборки потрясающих статей для Вас регулярно, но сейчас я ищу новую работу, где могу применить свои навыки на практике, а также продаю квартиру, что отнимает довольно много сил и времени.

Приятного чтения 🧡


Качественные полосы прокрутки на новейшем CSS 🇺🇸

Сложно реализовать качественное отображение полос прокрутки. Не всем дизайнерам нравятся стандартные полосы, особенно на windows, поэтому их часто перерисовывают. А фронтендерам остается только подключать библиотеки на js эмулирующие scrollbar.

Не стоит делать этого! Познакомьте дизайнеров с этой статьёй и вместе изучите возможности стандартной стилизации полос прокрутки. Ведь иначе можно легко сломать жизнь пользователям iOS, Android, macOS, так как на этих устройства у прокрутки страницы есть особое поведение, которое сторонние библиотеки повторить не могут.

blog.mayank.co

Сначала пишите документацию, а потом код 🇺🇸

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

reproof.app

Как сделать любое приложение похожим на macOS 🇺🇸

Что отличает веб от настольных приложений? Как ведут себя ссылки, кнопки, чем отличаются состояния hover/active/focus. Это особенно актуально для Electron-разработчиков.

evilmartians.com

Оптимизация рендеринга concurrent mode 🇺🇸

В React 18 появился concurrent-рендеринг. В этой статье автор погрузится в 3D-визуализацию и расскажет, как шаг за шагом оптимизировать производительность с помощью concurrent-рендеринга React 18.

dawchihliou.github.io

Вышел Fastify v4 GA 🇺🇸

Спустя два года активной разработки выходит 4 версия веб-сервера. Из интересных нововведений:

medium.com

CSS Containment Module Level 3 🇺🇸

Container-queries на самом деле гораздо функциональнее, чем просто отслеживание размеров родительского элемента. Можно повесить media-query на определенные свойства родителя, например display: grid. Тред с примерами.

www.w3.org

Как выбирать между media и container queries 🇺🇸

Чтобы точно закрепить понимание container queries необходимо четко разделять области, где полезны одни и вредны другие.

Еще рекомендую почитать статью на ishadeed.com об этом.

blog.logrocket.com

Учим CSS — padding-block 🇺🇸

Наверняка вам часто приходится писать padding-top: 10px; padding-bottom: 10px.

Теперь ваши страдания могут быть уменьшены: padding-block: 10px. Рекомендую посмотреть документацию на MDN, ведь поддержка есть во всех браузерах кроме IE, который более не поддерживается Microsoft.

developer.mozilla.org

Fresh 1.0 🇺🇸

Полноценный fullstack фреймворк предлагает несколько нестандартных особенностей пользователям: в браузер не отсылается javascript по умолчанию, при этом нет этапа сборки, в браузере рендерятся только интерактивные компоненты, остальное пререндерится и присылается с сервера, конечно же всё это на платформе Deno.

deno.com

Как открыть истину, помогая своему оппоненту 🇺🇸

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

Статья расскажет, как понять собеседника и выявить “истину” помогая оппоненту в его точке зрения. На удивление есть пошаговая инструкция, хоть и не стоит воспринимать ее как догму.

themindcollection.com

Делай хорошо и будет хорошо 🇺🇸

Хорошо описанные коммиты в вашем репозитории — это фактически ключ к поддерживаемому проекту в команде. Github предлагает пересмотреть своё отношение к именованию коммитов в проекте. Эту статью точно стоит прочитать самому и предложить изучить подход в своей команде. Давайте сделаем жизнь своих коллег проще!

github.blog

Примитивные типы в TypeScript не так сложны 🇺🇸

Довольно часто в Telegram чатах я вижу, как разработчики даже хорошо знакомые с системой типов TypeScript фрустрируют и просто двигают ключевые слова влево-вправо пока не заработает. Эта статья определенно поможет всем использующим TypeScript лучше понимать основы его системы типов. Для многих будет открытием, что any и unknown имеют принципиально разный смысл и поведение. В большинстве случаев нельзя заменить unknown на any без потери типизации или вывода типов.

Можно ознакомиться с этой статьей, если будет недостаточно.

levelup.gitconnected.com

Самые экстремальные примеры на TypeScript 🇺🇸

Как мы помним, система типов в TypeScript является тьюринг-полной, что означает, что на ней можно реализовать буквально любой алгоритм/программу, что и на JavaScript. Если вы рискнете открыть ссылку ниже, то увидите несколько примеров таких программ чисто на типах: 4-битная виртуальная машина, поиск самого короткого пути в лабиринте, sql-движок базы данных, парсер и интерпретатор TypeScript и другое!

www.learningtypescript.com

Алгоритмы которые нужно знать перед интервью 🇺🇸

Если вы как и я интересуетесь System Design, то вам стоит прокачать свои знания перед тем как проходить собеседования на позицию System Design Engineer.

От себя добавлю youtube канал на русском языке, рассказывающий о Frontend System Design — youtube.com/c/FrontEndEngineer

blog.bytebytego.com

Как сделать потрясающие градиенты на CSS 🇺🇸

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

joshwcomeau.com

Как и зачем типизировать CSS-переменные?

Вы когда-нибудь слышали о типах данных в CSS? Так вот, css-custom-properties тоже имеют тип, из-за отсутствия которого, некоторые приемы могут не работать вообще. В данной статье София рассказывает, как можно анимировать фоновый цвет блоков, в том числе и градиенты.

ru.ariarzer.dev

Новая волна управления состоянием на React 🇺🇸

Очень часто разработчики задают вопрос “Да зачем мне вообще этот стейт-менеджер?!”, разумеется это из-за полного непонимания какие проблемы решают СТМ.

Из некоторых задач хочется сразу отметить, с помощью СТМ можно:

frontendmastery.com

Прощай useEffect 🇺🇸🖥

Самое большое разочарование, о котором я слышу регулярно в экосистеме React — появление хуков. Но ведь это просто инструмент и всегда встает вопрос о том, как его использовать и на поверку оказывается, что проблема разумеется в людях, которые используют инструмент не правильно.

В дополнение к статье выше, это видео поможет развеять основные страхи и неприязнь к хукам в React. Главное, что хочется сказать перед просмотром: выносите свою бизнес-логику из компонентов и из React-хуков тоже, используйте подходящие для этого менеджеры состояний и/или бизнес-логики. Но конечно же, только если у вас на фронтенде есть бизнес-логика.

А обо всем остальном вам расскажет Дэвид!

youtube.com

↵ На главную

Получайте больше на почту…

Вы можете получать подобные подборки новостей на почту. Я отправляю их не чаще раза в неделю, может даже реже.

Каждая ссылка перед добавлением в рассылку проходит моё ревью, я читаю содержимое и анализирую полезность для подписчиков.