JavaScript
1.46K subscribers
432 photos
44 videos
4 files
718 links
➡️ Сотрудничество: @haarrp

https://t.me/itchannels_telegram - 🔥лучшие ит-каналы

@javascriptv - продвинутый javascript

@JavaScript_testit- js тесты

@programming_books_it - бесплатные it книги

@ai_machinelearning_big_data - ml
Download Telegram
Справочник по основным хукам React: useState, useEffect, useLayoutEffect, useContext, useReducer, useCallback, useMemo и UseRef.

Цель справочника — краткий обзор назначения и возможностей каждого хука. После описания хука приводится код примера его использования и песочница для ваших экспериментов!

#usefull
Почитайте о полезной библиотеке инструментов для создания монорепозиториев – Nx

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

#usefull
Работать с часовыми поясами в JavaScript трудно. Реализовать что-то сложнее простого форматирования отображения времени и вычисления даты с помощью комплексных операций (функции календаря) – непростая задача.

Поэтому обязательно прочитай статью-ликбез на тему часовых поясов в принципе и конкретно про работу с ними на JavaScript

#usefull
Разработчики-сеньоры создают решения для сложных и неоднозначных проблем. При этом у них нет никаких руководств, как это сделать.

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

От сеньоров ожидается, что они могут сами разобраться, как решить задачу, в то время как джуниорам нужно указывать направление. Это не значит, что сеньоры все знают.

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

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

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

#usefull
Node.js - это однопоточная среда для выполнения JavaScript на стороне сервера. Если весь код выполняется в одном потоке, то как тогда Node.js справляется с нагрузкой и поддерживает производительность?

Решением является неблокирующий асинхронный ввод-вывод. Но не все так просто.

Как запускать асинхронные запросы в NodeJS параллельно, с примерами

#usefull
Все операторы в JavaScript можно условно поделить на три группы: это базовые или математические операторы, операторы сравнения и логические операторы.

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

В свою очередь операнд – это то, к чему применяется оператор. Их еще называют аргументами. Простыми словами это числа, строки, переменные, константы и прочие объекты которые участвуют в выражении.

#usefull
Когда ты разработчик, каждый день у тебя есть скомпилированный билд, выполненная задача, новая фича на проде, — и в этом есть определенное удовольствие.

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

Интересная статья про тимлидов – роль, которая может стать ловушкой для разработчика, а может дать огромные возможности для создания ПО!

#usefull
📰 Вышел Chrome 86. Пит Лепаж и Джеселин Ин рассказали про новинки релиза

▪️ File System Access API доступен по умолчанию. С помощью него можно получить доступ к файловой системе пользователя для упрощения работы с локальными файлами.

▪️ В рамках origin trials стал доступен Web HID, благодаря которому web-приложения могут взаимодействовать с оборудованием пользователя. Также в рамках origin trials стал доступен Multi-screen Window Placement API. Благодаря этому API возможно получить информацию о всех экранах пользователя и программно управлять размещением окон.

▪️ В CSS появилась поддержка псевдокласса :focus-visible, которое позволяет применять для фокуса эвристики, которые использует браузер. Добавлена поддержка псевдоэлемента ::marker для стилизации маркера списка.

▪️ Начался процесс удаления поддержки ftp (будет отключён в Chrome 88). Удалена поддержка API WebComponents v0 во WebView.

▪️ Много изменений в Chrome DevTools. Добавлена новая панель "Media" для упрощения дебага видеоплейеров. Теперь, как и в Firefox, можно сделать скриншот любого узла DOM-дерева с помощью контекстного меню на панели "Elements". Проблемы с third-party cookie на вкладке "Issues" скрываются по умолчанию. Теперь возможно эмулировать недоступность локально установленных шрифтов. Добавлена эмуляции неактивности пользователей (Idle Detection API) и эмуляция опции экономии траффика (медиа-запрос prefers-reduced-data ). Lighthouse обновлён до версии 6.2.

Источники:
Раз, два

#news
В Chrome 86 HTTP-кэш становится изолированным. Что это означает рассказал Еиджи Китамура в статье "Gaining security and privacy by partitioning the cache".

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

Chrome 86 начал использовать для имени ключа кэша "Network Isolation Key", который состоит из имени сайта и сайта текущего фрейма (если фрейма нет, то будет использоваться имя сайта второй раз). У изолированного кэша есть небольшой недостаток — он может повлиять на метрики производительности сайта.

На данный момент изоляция кэша включена в Chrome и Safari. В Firefox она тоже поддерживается, но выключена по умолчанию (её можно включить с помощью флага privacy.firstparty.isolate в about:config ).

Источник

#usefull
This media is not supported in your browser
VIEW IN TELEGRAM
Тимлид: «Какая у тебя была роль в проекте?»
Я: «Помогал остальным выполнить их задачи»

#fun
❤️❤️❤️

#fun