Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.
•
Подкаст «Фронтенд Юность»: #114 Тёплый выпуск с Дэном Абрамовым
•
Подкаст «CSSSR»: Новости 512 — TypeScript 3.7, React Concurrent Mode, GraphQL API, Gitlab и геополитика
•
Repozitorro #33 — Самое полное ревью вёрстки
• Почему использовать сторонний CSS и JS на своем сайте опасно
•
Превращение вашего существующего приложения в прогрессивное веб-приложение
•
Первые 5 советов по созданию безопасных (веб) приложений
•
Apple пытается убить веб-технологии
•
GraphQL: The Documentary (Русская версия)
•
А есть ли случайные числа в CSS?
•
Улучшите свой CSS с помощью этих 5 принципов
• Не усложняйте масштабируемый CSS
•
Переменные CSS с инлайновыми стилями
•
Некоторые вещи, которые вы должны знать при работе с viewport-единицами
•
Показываем кнопку поиска, когда поле поиска не пусто
•
Учебное пособие по CSS grid: 13 советов и приемов, которые следует знать веб-разработчику
•
Сила CSS-процессоров в разработке веб-приложений
•
Синтаксис с двумя значениями display (и иногда с тремя)
•
Трюк с анимацией точки на букве “i”
•
8 CSS-фильтров для изображений с примерами кода
•
PureCSS Lace: воссоздание портрета на чистом CSS
•
Типизация REST API для фронтенд разработчика
•
Axios vs Fetch — что использовать в 2019
•
Лучшие практики Node.js
•
Грядущие новые функции JavaScript, о которых вы должны знать, если вы используете JavaScript каждый день
• В ночных сборках Firefox появилась поддержка HTTP/3
• Релизная версия Microsoft Edge на Chromium будет поставляться без поддержки ARM64, синхронизации истории и расширений
• В следующем году Firefox и Chrome начнут скрывать всплывающие уведомления
•
Подготовка ваших сайтов к новому Microsoft Edge
< Дайджест за прошлую неделю
Материал подготовили dersmoll и alekskorovin
Медиа | Веб-разработка | CSS | JavaScript | Браузеры |
Медиа
•


•

•

Веб-разработка
• Почему использовать сторонний CSS и JS на своем сайте опасно
•

•

•

•

- Инструменты
•Лицемерие google. PageSpeed Insights
•Prettier 1.19: долгожданная опция Vue, TypeScript 3.7 и новые функции JavaScript
•Как полностью оптимизировать Webpack 4 Tree Shaking
- Производительность
•«Шакал»: сжимаем фронтенд
•Современная загрузка скриптов
•Почему нагрузочное тестирование и тестирование производительности должны выходить за рамки проверки времени отклика
•Оптимизация изображений для пользователей с низкой скоростью сети
- Доступность
•Оформляйте стили наведения, фокуса и активного состояния по-разному
• Помимо автоматизированного тестирования доступности: шесть вещей, которые я проверяю на каждом своём сайте
•Что я узнал о доступности в SPA
•aria-label не переводится
•Как доступность становится все более важной в веб-разработке
CSS
•

•

• Не усложняйте масштабируемый CSS
•

•

•

•

•

•

•

•

•

JavaScript
•

•

•

•

- Теория
•Функциональное программирование с точки зрения EcmaScript. Чистые функции, лямбды, имутабельность
•Лексическое окружение (LexicalEnvironment) и Замыкание (Closures) в EcmaScript
•Поймут даже дети: простое объяснение async/await и промисов в JavaScript
• Чем прототипное наследование отличается от классического?
• Что такое Генераторы в JavaScript
•Что такое super() в JavaScript?
•Разрываем цепочки с пайплайнами в современном JavaScript
•Атрибуты свойств объекта в JavaScript
- React
•Использование i18n с Next.js & React context API
•React Query — Хуки для извлечения, кэширования и обновления асинхронных данных в React
•Методы жизненного цикла, хуки, ожидания: что лучше всего выбрать в React?
•3 способа создать свою собственную библиотеку компонентов в React
•Экспериментируем с новым режимом Concurrent в React
•39 продвинутых ответов на вопросы собеседования по React, которые вам следует сегодня уточнить
- Vue
• Готовый к продакшену Vue SSR: 5 простых шагов
•Автоматический рутинг в приложениях на Vue.js
•Обработка форм во Vue.js
- Angular
•Полная информация об атрибутах и структурных директивах в Angular
•Google Maps теперь является компонентом Angular
•26 лучших вопросов на собеседовании по Angular 8 в 2020
- Libs & Plugins
•hybrids.js — декларативные и функциональные веб-компоненты
•tenko — 100% совместимый со спецификацией парсер JavaScript ES2020, написанный на JS
•Proton: легкая JS-библиотека для анимации частиц
•cashify: библиотека для конвертации валюты, наследник money.js
Браузеры
• В ночных сборках Firefox появилась поддержка HTTP/3
• Релизная версия Microsoft Edge на Chromium будет поставляться без поддержки ARM64, синхронизации истории и расширений
• В следующем году Firefox и Chrome начнут скрывать всплывающие уведомления
•

Просим прощения за возможные опечатки или неработающие/дублирующиеся ссылки. Если вы заметили проблему — напишите пожалуйста в личку, мы стараемся оперативно их исправлять.
< Дайджест за прошлую неделю
Материал подготовили dersmoll и alekskorovin
Комментарии (4)
freislot
11.11.2019 14:30Спасибо за подборку. Интересно почему в статье 3 способа создать свою собственную библиотеку компонентов в React не упомянули storybook
SelenIT3
Спасибо за замечательную (как всегда) подборку!
Ох уж этот Койер… Сам ведь ссылается на статью Рейчел Эндрю и прямо на спеку, в обоих местах есть красивая наглядная табличка – ну откуда, откуда он взял, будто
display: block
– этоdisplay: flow-root
??? Я ему написал, надеюсь, он доразберется и поправит. А то вокругdisplay
и так много путаницы.Возможно, его сбило то, что
inline-block
– этоinline flow-root
. Но в этом есть логика (подробнее). А с блочными снаружи значениями всё без сюрпризов:block
– этоblock flow
, аflow-root
– этоblock flow-root
.SelenIT3
P.S. Разобрались с Крисом, оказывается, его сбил с толку раздел спеки про "инлайнификацию" и "блокификацию" CSS-боксов в разных особых ситуациях. Но картинку в статье он (пока?) так и не поправил:(
alexzfort Автор
Спасибо за разбор сбивающего с толка момента :)