Как избежать утечек памяти в JavaScript
Скрытые утечки памяти — частая проблема, которая способна вызывать снижение производительности и даже ошибки в работе приложения.
В статье вы узнаете:
— Какие сценарии чаще всего становятся причиной утечек памяти.
— Как выявить эти ошибки и исправить их.
— Как тестировать сервер на высоких нагрузках, чтобы минимизировать риски.
Если вы работаете с JavaScript, эта информация будет полезна для оптимизации вашего кода. Подробнее:
https://www.trevorlasn.com/blog/common-causes-of-memory-leaks-in-javascript
#javascript
Скрытые утечки памяти — частая проблема, которая способна вызывать снижение производительности и даже ошибки в работе приложения.
В статье вы узнаете:
— Какие сценарии чаще всего становятся причиной утечек памяти.
— Как выявить эти ошибки и исправить их.
— Как тестировать сервер на высоких нагрузках, чтобы минимизировать риски.
Если вы работаете с JavaScript, эта информация будет полезна для оптимизации вашего кода. Подробнее:
https://www.trevorlasn.com/blog/common-causes-of-memory-leaks-in-javascript
#javascript
Forwarded from Точка входа в программирование
Энтузиаст создал сортировку имени Сталина
Нет, правда! Она так и называется «Милосердная сортировка имени Сталина». И это доработанная версия обычной сортировки имени Сталина, которая отбрасывает элементы, расположенные не по порядку.
В новой сортировке применён рекурсивный метод. Здесь элементы, расположенные по-порядку, сохраняются, а остальные рекурсивно перебираются, пока не будет отсортировано всё.
После всех измерений оказалось, что такой метод быстрее, чем быстрая сортировка и сортировка слиянием.
Более подробно о своём проекте и исследовании рассказал автор на GitHub. Там и про различные бенчмарки, и про сложности с реализацией, и возможные улучшения. Материал интересный и полезный, так что не поленитесь перейти по ссылке и почитать.
#ненормальноепрограммирование #сортировка
Нет, правда! Она так и называется «Милосердная сортировка имени Сталина». И это доработанная версия обычной сортировки имени Сталина, которая отбрасывает элементы, расположенные не по порядку.
В новой сортировке применён рекурсивный метод. Здесь элементы, расположенные по-порядку, сохраняются, а остальные рекурсивно перебираются, пока не будет отсортировано всё.
После всех измерений оказалось, что такой метод быстрее, чем быстрая сортировка и сортировка слиянием.
Более подробно о своём проекте и исследовании рассказал автор на GitHub. Там и про различные бенчмарки, и про сложности с реализацией, и возможные улучшения. Материал интересный и полезный, так что не поленитесь перейти по ссылке и почитать.
#ненормальноепрограммирование #сортировка
Нашли для вас интересную новость из сферы финтеха
А именно — узнали, что ОТП Банк запустил TG-канал для айтишников. Команда строит финтех в международном банке и теперь можно узнавать прямо у них, как они это делают.
На OTP Tech стоит подписаться, чтобы узнавать о внутрянке работы, фичах, которые ребята пилят, как решают разные инфраструктурные задачи и в целом чтобы покайфовать. Мы, например, зависли на этих енотиках. К слову, вакансиями ребята тоже делятся.
Прокачайте свою ленту крутым каналом: OTP Tech
Это #партнёрский пост
А именно — узнали, что ОТП Банк запустил TG-канал для айтишников. Команда строит финтех в международном банке и теперь можно узнавать прямо у них, как они это делают.
На OTP Tech стоит подписаться, чтобы узнавать о внутрянке работы, фичах, которые ребята пилят, как решают разные инфраструктурные задачи и в целом чтобы покайфовать. Мы, например, зависли на этих енотиках. К слову, вакансиями ребята тоже делятся.
Прокачайте свою ленту крутым каналом: OTP Tech
Это #партнёрский пост
Настраиваем аутентификацию в веб-приложениях на Django
Во время аутентификации приложение или сайт проверяет соответствие учётных данных, введённых пользователем, и хранящиеся в системе. Если всё ок — пользователь получает положенный ему доступ, а если что-то не подошло, то отказывает в доступе.
Реализовать такой механизм не тяжело, если вы используете в своём проекте Django. Как это сделать рассказываем в нашей новой статье.
#бэкенд #django #безопасность
Во время аутентификации приложение или сайт проверяет соответствие учётных данных, введённых пользователем, и хранящиеся в системе. Если всё ок — пользователь получает положенный ему доступ, а если что-то не подошло, то отказывает в доступе.
Реализовать такой механизм не тяжело, если вы используете в своём проекте Django. Как это сделать рассказываем в нашей новой статье.
#бэкенд #django #безопасность
TailwindCSS, Bootstrap, Foundation — эти инструменты становятся всё популярнее. Но в среде разработчиков сложилось не однозначное отношение к ним.
Одни называют их спасением: мол, быстрее, удобнее, понятнее. Другие жалуются, что это приводит к «мусорному» коду, где вместо структурного CSS — хаос из классов в разметке.
Сегодня я предлагаю вам обсудить этот вопрос и поделиться своим мнением. Должны ли разработчики полностью переходить на такие подходы? Или же классический CSS и аккуратное разделение стилей останутся золотым стандартом?
#обсуждение #css
Одни называют их спасением: мол, быстрее, удобнее, понятнее. Другие жалуются, что это приводит к «мусорному» коду, где вместо структурного CSS — хаос из классов в разметке.
Сегодня я предлагаю вам обсудить этот вопрос и поделиться своим мнением. Должны ли разработчики полностью переходить на такие подходы? Или же классический CSS и аккуратное разделение стилей останутся золотым стандартом?
#обсуждение #css
This media is not supported in your browser
VIEW IN TELEGRAM
Создаём таймер обратного отсчёта на CSS
Таймеры — это довольно популярный элемент, особенно на продающих лэндингах. Они помогают не только привлечь внимание пользователей, но и помогают быстрее принять решение. Поэтому вам важно уметь создавать их различными способами.
В статье показаны два:
1. С помощью CSS, чтобы быстро добавить анимацию без сложных скриптов.
2. С JavaScript, если требуется полный контроль над логикой и внешним видом.
Подробности реализации доступны в этом руководстве.
#фронтенд #css #javascript
Таймеры — это довольно популярный элемент, особенно на продающих лэндингах. Они помогают не только привлечь внимание пользователей, но и помогают быстрее принять решение. Поэтому вам важно уметь создавать их различными способами.
В статье показаны два:
1. С помощью CSS, чтобы быстро добавить анимацию без сложных скриптов.
2. С JavaScript, если требуется полный контроль над логикой и внешним видом.
Подробности реализации доступны в этом руководстве.
#фронтенд #css #javascript
#простымисловами: Что такое FOUС и как его избежать
FOUC раздражает пользователей, но есть простые и эффективные способы его избежать.
В этом посте мы разобрали для вас, что это такое, почему возникает и как его избежать!
#фронтенд #fouc
FOUC раздражает пользователей, но есть простые и эффективные способы его избежать.
В этом посте мы разобрали для вас, что это такое, почему возникает и как его избежать!
#фронтенд #fouc
Новое CSS-свойство, облегчающее работу с transition
Анимация с помощью
В CSS появилась новая фича
А вы уже пробовали спользоваться этими способами?
#css #фронтенд
Анимация с помощью
Transition
является наиболее простым способом оживить сайт. Но в некоторых случаях это может вызвать трудности. Например, при задействии блоков с установленными размерами в значении auto
или при отображении элемента, имевшего значение свойства display: none
. В CSS появилась новая фича
calc-size()
, которая позволяет справиться с этим. И в этом туториале вы узнаете не только, как воспользоваться ею для настройки переходов, но также свойством interpolate-size
, правилом @starting-rule
и свойством transition-behavior
. А вы уже пробовали спользоваться этими способами?
#css #фронтенд
Большой гайд по миграциям в Django
Макс — автор YouTube-канала PyLounge, о котором вы, возможно, слышали и чьи видео мы иногда выкладываем здесь или в нашем канале по питону. Он уже давно работает с Python в качестве бэкенд-разработчика и накопил достаточно опыта и знаний, связанных не только с разработкой, но и миграцией.
На этот раз он решил рассказать обо всех нюансах и подводных камнях, которые возникают при миграции в Django. В первой части он рассказал о том, что такое миграции, зачем они, как к ним подготовиться, а также избежать конфликтов и других неприятностей. Во второй части речь пойдёт о фиктивном применении, data-миграции, «сухой проверке» и основных проблемах, возникающих у новичков.
Эти материалы пригодятся как начинающих, так и опытным разработчикам, поэтому скорее читайте, либо сохраните себе в избранном, чтобы прочитать потом.
#django #бэкенд
Макс — автор YouTube-канала PyLounge, о котором вы, возможно, слышали и чьи видео мы иногда выкладываем здесь или в нашем канале по питону. Он уже давно работает с Python в качестве бэкенд-разработчика и накопил достаточно опыта и знаний, связанных не только с разработкой, но и миграцией.
На этот раз он решил рассказать обо всех нюансах и подводных камнях, которые возникают при миграции в Django. В первой части он рассказал о том, что такое миграции, зачем они, как к ним подготовиться, а также избежать конфликтов и других неприятностей. Во второй части речь пойдёт о фиктивном применении, data-миграции, «сухой проверке» и основных проблемах, возникающих у новичков.
Эти материалы пригодятся как начинающих, так и опытным разработчикам, поэтому скорее читайте, либо сохраните себе в избранном, чтобы прочитать потом.
#django #бэкенд
Встречайте Limbo — новая компактная и портативная СУБД
По сути, это SQLite, полностью переписанная на Rust. Разрабатывает его команда Turso, которая ранее сделала форк SQLite — libSQL, имеющий 12 тысяч звёзд на GitHub и 85 контрибьюторов.
Limbo направлена на то, чтобы со временем стать полностью совместимой с SQLite, при этом имея нативную поддержку асинхронности.
Сейчас можно посмотреть, как работает версия 0.0.9, протестировать СУБД в связке с JS или Python и, возможно, помочь разработчикам в качестве контрибьютора, если вам такое интересно. Почитать подробнее можно в блоге Turso, а изучить кодовую базу и потестить на GitHub.
#субд #sqlite #limbo #rust
По сути, это SQLite, полностью переписанная на Rust. Разрабатывает его команда Turso, которая ранее сделала форк SQLite — libSQL, имеющий 12 тысяч звёзд на GitHub и 85 контрибьюторов.
Limbo направлена на то, чтобы со временем стать полностью совместимой с SQLite, при этом имея нативную поддержку асинхронности.
Сейчас можно посмотреть, как работает версия 0.0.9, протестировать СУБД в связке с JS или Python и, возможно, помочь разработчикам в качестве контрибьютора, если вам такое интересно. Почитать подробнее можно в блоге Turso, а изучить кодовую базу и потестить на GitHub.
#субд #sqlite #limbo #rust