Полезные материалы
Каждую неделю мы публикуем новости, обновления, а так же дополнительные полезные материалы в социальных сетях:
Чек-лист код-ревью
Я считаю, что каждый разработчик, независимо от своей позиции должен делать code review других разработчиков, чтобы учиться. Благодаря этому он сможет учиться отличать плохой код от хорошего, перенимать хорошие практики более опытных разработчиков и разбираться во всех частях проекта, а не только в тех, где он сам пишет код.
TypeScript 4.5 - Awaited
В недавно вышедшем TypeScript 4.5 добавили новый служебный тип Awaited. Давайте посмотрим на реальные кейсы его использования и что он нам облегчит.
Комментарии в коде
Конечно, когда ты пишешь код, необходимо писать его максимально понятно, называя корректно методы и переменные и декомпозируя сложные функции. Но сейчас пост не об этом, а о комментариях в коде. Когда их писать надо, а когда нет.
Возврат undefined из функции
Давайте разберём как правильно вернуть отрицательный ответ из функции. Например, мы хотим найти пользователя, которого может не быть. И я видел как минимум 3 разных подхода, где мы возвращаем null, undefined или ошибку. Какой лучше?
Next.js 12 - Измеряем скорость сборки
И снова большой релиз у Next.js. Новая версия принесла нам пару действительно полезных нововведений, среди которых - новый компилятор. Проверим на реальном проекте, какой прирост мы получим.
Валидация данных из внешнего API
Как на frontend, так и на backend нам приходится работать с внешним API. Особенную боль доставляют внешние API, которые не привязаны к вашему релизному циклу и могут меняться как бог на душу положит. Поэтому хорошо иметь способ из валидировать без лапши кода.
Версионирование пакетов
Этот пост мне навеяла библиотека `axios`, которую я конечно люблю, но ломать совместимость в версии 0.22.0 по сравнению с 0.21.0 - неприемлемо. Да и вообще иметь 0 в начале так себе...
TypeScript 4.4 - Обработка ошибок
Если вы давно пишете на TypeScript, скорее всего взвели у себя в tsconfig.json флаг "strict": true, который включает сразу несколько проверок. Как это повлияло на try / catch в TypeScript 4.4?
Фильтрация undefined в typescript
Типизация, после того как мы с вами применили `filter` иногда бывает не такой однозначной как хотелось бы. Этот пост мне навеяло одно ревью. Итак, представим, что мы продаём чашки для кофе ☕. Не обычные, а какие-нибудь многоразовые, имеющие штрихкод. Попробуем разобраться в неоднозначности работы TypeScript.
Тип never в Typescript
Типизация - это то, почему многие выбирают писать на TypeScript, а не на чистом JavaScript. Хотя на конференциях можно услышать доклады "Почему вам не нужен TS", в больших проектах без него просто не обойтись. Потому важно понимать все особенности типизации. Разберём тип `never`, который многим, кто знакомится с TypeScript непонятен.