#полезное
🤓 react-learning-resources — тщательно подобранный список ресурсов для быстрого изучения React и связанных технологий!
✅ Он включает в себя материалы по TypeScript, React Router, управлению состоянием, тестированию, сборке UI-компонентов и лучшим практикам разработки. Предоставлены ссылки на видеоуроки, документацию и инструменты, такие как Jest, Cypress, Storybook и др.
Гитхаб
👉 Новости 👉 База вопросов
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#статьи
🛞 Как спрятать любые данные в PNG
Статья объясняет, как спрятать данные в PNG-изображении, используя младшие биты (LSB) пикселей. Рассматривается структура PNG, каналы R, G, B и альфа, а также методы внедрения данных без заметного изменения картинки.
Читать статью
👉 Новости 👉 База вопросов
Статья объясняет, как спрятать данные в PNG-изображении, используя младшие биты (LSB) пикселей. Рассматривается структура PNG, каналы R, G, B и альфа, а также методы внедрения данных без заметного изменения картинки.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Как спрятать любые данные в PNG
Настало время открыть Америку! Меня действительно удивило предельно малое кол-во информации на данную тему. Будем исправлять. И так, сразу к делу! Что нам нужно знать, чтобы спрятать что-то внутри PNG...
#статьи
😎 Улучшение производительности с делегированием событий
Статья объясняет технику делегирования событий в веб-разработке, показывая, как использование одного слушателя на родительском элементе упрощает управление событиями и повышает производительность.
Читать статью
👉 Новости 👉 База вопросов
Статья объясняет технику делегирования событий в веб-разработке, показывая, как использование одного слушателя на родительском элементе упрощает управление событиями и повышает производительность.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Заметки разработчика
Улучшение производительности с делегированием событий
Делегирование событий — техника управления событиями. Вместо добавления слушателей к каждому элементу, можно прикрепить одного к родительскому элементу.
❤2
#собес
🤔 Как использовать Pipes в NestJS?
Pipes в NestJS трансформируют или валидируют входящие данные до того, как они попадают в контроллер. Их можно создавать вручную, реализуя интерфейс
👉 Новости 👉 База вопросов
Pipes в NestJS трансформируют или валидируют входящие данные до того, как они попадают в контроллер. Их можно создавать вручную, реализуя интерфейс
PipeTransform, или использовать встроенные, такие как ValidationPipe. Pipes применяются на уровне методов, контроллеров или глобально через @UsePipes .Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
👍2❤1
#статьи
👍 tabs-broadcast
tabs-broadcast — это библиотека, которая помогает передавать сообщения между разными вкладками браузера в одном приложении. Представь, что у тебя несколько вкладок одного сайта открыты одновременно. Если в одной вкладке что-то поменялось, например, пользователь вошёл в аккаунт, то другие вкладки автоматически узнают об этом. Делимся статьей, где автор рассказывает про эти библиотеку.
Читать статью
👉 Новости 👉 База вопросов
tabs-broadcast — это библиотека, которая помогает передавать сообщения между разными вкладками браузера в одном приложении. Представь, что у тебя несколько вкладок одного сайта открыты одновременно. Если в одной вкладке что-то поменялось, например, пользователь вошёл в аккаунт, то другие вкладки автоматически узнают об этом. Делимся статьей, где автор рассказывает про эти библиотеку.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#видео
👨💻 MobX + React: Асинхронные запросы
Продолжаем делиться циклом видео, благодаря которому ты научишься пользоваться MobX в связке с React. В этот раз речь идет про асинхронные запросы.
Смотреть видео
👉 Новости 👉 База вопросов
Продолжаем делиться циклом видео, благодаря которому ты научишься пользоваться MobX в связке с React. В этот раз речь идет про асинхронные запросы.
Смотреть видео
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😊 Array.includes
Метод includes() проверяет, содержится ли определенный элемент в массиве, и возвращает true или false.
Обрати внимание на синтаксис. searchElement – элемент, который нужно найти в массиве. fromIndex (необязательно) – индекс, с которого начинать поиск (по умолчанию 0). Возвращает true, если элемент найден в массиве. В противном случае – false.
👉 Новости 👉 База вопросов
Метод includes() проверяет, содержится ли определенный элемент в массиве, и возвращает true или false.
Обрати внимание на синтаксис. searchElement – элемент, который нужно найти в массиве. fromIndex (необязательно) – индекс, с которого начинать поиск (по умолчанию 0). Возвращает true, если элемент найден в массиве. В противном случае – false.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
#собес
🤔 Как работать с базой данных с помощью TypeORM?
TypeORM — это ORM, которая упрощает взаимодействие с базами данных. С помощью TypeORM можно определять сущности, управлять схемами и выполнять запросы через репозитории. В NestJS интеграция выполняется через модуль
👉 Новости 👉 База вопросов
TypeORM — это ORM, которая упрощает взаимодействие с базами данных. С помощью TypeORM можно определять сущности, управлять схемами и выполнять запросы через репозитории. В NestJS интеграция выполняется через модуль
Tyрe0rmModule .Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
🍓1
#статьи
🤓 Как 9.3 уязвимость ждала открытия 3 года
Я расскажу, как мы нашли в Next.js уязвимость с оценкой 9.3, которая спокойно пряталась в middleware аж три года, пока её никто не трогал.
Читать статью
👉 Новости 👉 База вопросов
Я расскажу, как мы нашли в Next.js уязвимость с оценкой 9.3, которая спокойно пряталась в middleware аж три года, пока её никто не трогал.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Как 9.3 уязвимость ждала открытия 3 года
На днях мы с Ясером Алламом (Yasser Allam), он же _inzo , объединились, чтобы провести совместное исследование. Обсудив список потенциальных жертв целей, выбор пал на уже хорошо мне знакомый Next.js ....
❤1
#статьи
😴 Что бы я хотел знать о Postgres, когда начал его изучать
Я профессионально работаю над веб-приложениями уже более десяти лет, и за это время пришлось научиться использовать множество различных систем и инструментов. В процессе обучения я обнаружил, что официальная документация, как правило, оказывается наиболее полезной.
Читать статью
👉 Новости 👉 База вопросов
Я профессионально работаю над веб-приложениями уже более десяти лет, и за это время пришлось научиться использовать множество различных систем и инструментов. В процессе обучения я обнаружил, что официальная документация, как правило, оказывается наиболее полезной.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Заметки разработчика
Что бы я хотел знать о Postgres, когда начал его изучать
Занимаясь разработкой веб-приложений более десяти лет, и освоив множество систем и инструментов. Я заметил, что официальная документация наиболее ценный источник информации.
❤1
#видео
🛞 Что такое Nuxt.js?
Nuxt.js — это фреймворк для разработки сайтов и веб-приложений на основе Vue.js. Если Vue.js — это просто инструмент для создания интерфейсов, то Nuxt.js добавляет удобные «фишки» и делает работу с Vue быстрее и проще. В данном видео автор рассказывает об особенностях Nuxt.js.
📱 Смотреть видео
👉 Новости 👉 База вопросов
Nuxt.js — это фреймворк для разработки сайтов и веб-приложений на основе Vue.js. Если Vue.js — это просто инструмент для создания интерфейсов, то Nuxt.js добавляет удобные «фишки» и делает работу с Vue быстрее и проще. В данном видео автор рассказывает об особенностях Nuxt.js.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#собес
🤔 Как использовать декораторы в контроллере NestJS?
Декораторы в NestJS используются для назначения методов контроллера, которые обрабатывают определенные НТТР-запросы. Примером является
👉 Новости 👉 База вопросов
Декораторы в NestJS используются для назначения методов контроллера, которые обрабатывают определенные НТТР-запросы. Примером является
@Get () , который указывает, что метод будет обрабатывать GET-запрос. Декораторы также могут использоваться для извлечения данных из запроса, например, @Param(), @Query() и @Body() -Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
#полезное
📞 Novu — это открытая платформа для управления уведомлениями, предназначенная для разработчиков!
✅ Она предоставляет единый API для отправки уведомлений через различные каналы, включая встроенные уведомления в приложении (In-App), push-уведомления, электронную почту, SMS и чаты. С помощью Novu можно создавать настраиваемые рабочие процессы и определять условия для каждого канала, обеспечивая эффективную доставку уведомлений пользователям.
Гитхаб
👉 Новости 👉 База вопросов
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
😊 localeCompare
localeCompare() — это метод строк, который сравнивает две строки с учётом языка и алфавита. Благодаря данной статье ты узнаешь, как можно с помощью этого метода правильно и удобно сортировать строки с учетом языка.
Читать статью
👉 Новости 👉 База вопросов
localeCompare() — это метод строк, который сравнивает две строки с учётом языка и алфавита. Благодаря данной статье ты узнаешь, как можно с помощью этого метода правильно и удобно сортировать строки с учетом языка.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
LocaleCompare в JavaScript: правильная и удобная сортировка строк с учетом языка
Привет, меня зовут Дмитрий, я React-разработчик, и сегодня хочу рассказать о методе localeCompare в JavaScript. Мне кажется, что этот метод не так часто используется при сортировке строк, хотя он...
❤1👍1
#ЛитКод
Задача: 656. Coin Path
Вам дан целочисленный массив монет (1-индексированный) длины n и целое число maxJump. Вы можете перейти на любой индекс i массива coins, если coins[i] != -1 и вы должны заплатить coins[i] при посещении индекса i. Кроме того, если вы в данный момент находитесь на индексе i, вы можете перейти только на любой индекс i + k, где i + k <= n и k - значение в диапазоне [1, maxJump]. Изначально вы находитесь на индексе 1 (coins[1] не -1). Вы хотите найти путь, который достигнет индекса n с минимальной стоимостью. Верните целочисленный массив индексов, которые вы посетите в таком порядке, чтобы достичь индекса n с минимальной стоимостью. Если существует несколько путей с одинаковой стоимостью, верните лексикографически наименьший такой путь. Если невозможно достичь индекса n, возвращается пустой массив. Путь p1 = [Pa1, Pa2, ..., Pax] длины x лексикографически меньше, чем p2 = [Pb1, Pb2, ..., Pbx] длины y, если и только если при первом j, где Paj и Pbj отличаются, Paj < Pbj; если такого j нет, то x < y.
Пример:
👨💻 Алгоритм:
1⃣ Используйте динамическое программирование для нахождения минимальной стоимости до каждого индекса, начиная с первого.
2⃣ Храните путь до каждого индекса для отслеживания наименьшего лексикографического пути.
3⃣ Используя полученную информацию, восстановите путь с минимальной стоимостью до последнего индекса.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 656. Coin Path
Вам дан целочисленный массив монет (1-индексированный) длины n и целое число maxJump. Вы можете перейти на любой индекс i массива coins, если coins[i] != -1 и вы должны заплатить coins[i] при посещении индекса i. Кроме того, если вы в данный момент находитесь на индексе i, вы можете перейти только на любой индекс i + k, где i + k <= n и k - значение в диапазоне [1, maxJump]. Изначально вы находитесь на индексе 1 (coins[1] не -1). Вы хотите найти путь, который достигнет индекса n с минимальной стоимостью. Верните целочисленный массив индексов, которые вы посетите в таком порядке, чтобы достичь индекса n с минимальной стоимостью. Если существует несколько путей с одинаковой стоимостью, верните лексикографически наименьший такой путь. Если невозможно достичь индекса n, возвращается пустой массив. Путь p1 = [Pa1, Pa2, ..., Pax] длины x лексикографически меньше, чем p2 = [Pb1, Pb2, ..., Pbx] длины y, если и только если при первом j, где Paj и Pbj отличаются, Paj < Pbj; если такого j нет, то x < y.
Пример:
Input: coins = [1,2,4,-1,2], maxJump = 2
Output: [1,3,5]
var minCostPath = function(coins, maxJump) {
const n = coins.length;
if (coins[0] === -1) return [];
const dp = new Array(n).fill(Infinity);
dp[0] = coins[0];
const path = Array.from({ length: n }, () => []);
path[0] = [1];
const heap = [[coins[0], 0]];
while (heap.length) {
heap.sort((a, b) => a[0] - b[0]);
const [current_cost, i] = heap.shift();
if (current_cost > dp[i]) continue;
for (let k = 1; k <= maxJump; k++) {
if (i + k < n && coins[i + k] !== -1) {
const new_cost = current_cost + coins[i + k];
if (new_cost < dp[i + k] || (new_cost === dp[i + k] && path[i].concat(i + k + 1) < path[i + k])) {
dp[i + k] = new_cost;
path[i + k] = path[i].concat(i + k + 1);
heap.push([new_cost, i + k]);
}
}
}
}
return dp[n - 1] === Infinity ? [] : path[n - 1];
};Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что содержит объект ошибки?
Объект ошибки в JavaScript содержит информацию, которая помогает диагностировать проблемы. Ключевые свойства объекта ошибки - это
👉 Новости 👉 База вопросов
Объект ошибки в JavaScript содержит информацию, которая помогает диагностировать проблемы. Ключевые свойства объекта ошибки - это
name (тип ошибки), message (текст ошибки) и stack (трассировка вызовов, ведущих к ошибке). Эти данные полезны для выявления причины ошибки и её устранения.Please open Telegram to view this post
VIEW IN TELEGRAM
#видео
😊 Jest+Enzyme: Тестирование утилит
Продолжаем делиться циклом видео, где автор рассказывает про тестирование с помощью Jest и Enzyme. В этот раз речь идет про тестирование утилит.
Смотреть видео
👉 Новости 👉 База вопросов
Продолжаем делиться циклом видео, где автор рассказывает про тестирование с помощью Jest и Enzyme. В этот раз речь идет про тестирование утилит.
Смотреть видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Jest + Enzyme #11 Тестирование утилит (Utils Testing)
#YauhenK #webDev #Jest #Enzyme #testing
Всех приветствую в курсе «Jest + Enzyme».
В данном видеокурсе мы с вами рассмотрим тестирование React-приложения и React-компонентов с помощью Jest и Enzyme. Разберём мы данную тему на примере написания Unit тестов.…
Всех приветствую в курсе «Jest + Enzyme».
В данном видеокурсе мы с вами рассмотрим тестирование React-приложения и React-компонентов с помощью Jest и Enzyme. Разберём мы данную тему на примере написания Unit тестов.…
#полезное
🤯 Reubah — это веб-инструмент для редактирования изображений и конвертации документов!
Он представляет собой универсальное решение, поддерживающее множество форматов изображений (JPG, PNG, WebP, GIF, BMP) и документов (PDF, DOCX, DOC, ODT, RTF, TXT). Инструмент создан с акцентом на простоту использования и доступен через веб-интерфейс.
Reubah предлагает функции, такие как пакетная обработка, оптимизация изображений, удаление фона (в разработке) и изолированная среда обработки данных. Инструмент можно быстро установить с помощью Docker, что делает его удобным для локального использования или интеграции в другие проекты.
Гитхаб
👉 Новости 👉 База вопросов
Он представляет собой универсальное решение, поддерживающее множество форматов изображений (JPG, PNG, WebP, GIF, BMP) и документов (PDF, DOCX, DOC, ODT, RTF, TXT). Инструмент создан с акцентом на простоту использования и доступен через веб-интерфейс.
Reubah предлагает функции, такие как пакетная обработка, оптимизация изображений, удаление фона (в разработке) и изолированная среда обработки данных. Инструмент можно быстро установить с помощью Docker, что делает его удобным для локального использования или интеграции в другие проекты.
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
👨💻 PairDrop — это кроссплатформенное приложение для обмена файлами, которое было разработано на основе AirDrop от Apple!
С его помощью можно передавать файлы по локальной сети через веб-браузер или использовать временные публичные комнаты для передачи через интернет. PairDrop совместим со всеми устройствами, которые имеют современные браузеры, и не требует установки, настройки или регистрации.
Гитхаб
👉 Новости 👉 База вопросов
С его помощью можно передавать файлы по локальной сети через веб-браузер или использовать временные публичные комнаты для передачи через интернет. PairDrop совместим со всеми устройствами, которые имеют современные браузеры, и не требует установки, настройки или регистрации.
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Как обрабатывать ошибки в JavaScript?
B JavaScript ошибки обрабатываются с помощью блока
👉 Новости 👉 База вопросов
B JavaScript ошибки обрабатываются с помощью блока
try... catch . В блоке try размещается код, который может вызвать ошибку, а в блоке catch - инструкции для обработки этой ошибки. Также можно использовать finally, чтобы выполнить код независимо от того, возникла ошибка или нет. Обработку ошибок можно расширить с помощью кастомных ошибок.Please open Telegram to view this post
VIEW IN TELEGRAM
#видео
😬 three.js: Работа с геометрией и объектами
Продолжаем делиться циклом видео, благодаря которым ты научишься пользоваться three.js. В этот раз автор рассказывает, как создавать объекты разной формы. Ты создашь сферу, куб, пончик и плоскую поверхность.
📱 Смотреть видео
👉 Новости 👉 База вопросов
Продолжаем делиться циклом видео, благодаря которым ты научишься пользоваться three.js. В этот раз автор рассказывает, как создавать объекты разной формы. Ты создашь сферу, куб, пончик и плоскую поверхность.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
3D Дизайн на Three.JS / #3 – Работа с геометрией и объектами
Мы научимся создавать объекты разной формы при помощи библиотеки Three JS. Вы научитесь создавать сферу, куб, пончик и плоскую поверхность. Дополнительно вы добавите текстуры для отображения вместо цвета.
✅ Полезные ссылки:
– Урок на сайте itProger: ht…
✅ Полезные ссылки:
– Урок на сайте itProger: ht…