Pull to refresh
1
0
Send message

Feature-Sliced Design – альтернативный подход к организации кода приложений

Reading time7 min
Views25K

Feature-Sliced Design — это архитектурная методология, активно набирающая популярность в последнее время. И не зря: организация разработки по её правилам позволяет упростить процессы, сделать их быстрее и гибче. Больше не нужно будет переживать из-за совместной работы в одном домене и конфликтов кода, долго искать ответ на вопрос «А куда же впилить новую фичу, тут и так намешано…» 

О том, как устроена Feature-sliced Design, чем она отличается от «классической» организации кода, плюсах и минусах от её внедрения — в этой статье.

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments20

Отпечаток браузера: что это, как работает, нарушает ли закон и как защититься. Часть 1

Reading time5 min
Views61K
image

От Selectel: эта статья первая в цикле переводов очень детальной статьи об отпечатках браузера и том, как работает технология. Здесь собрано все, что вы хотели знать, но боялись спросить по этой теме.

Что такое отпечатки браузера?


Это метод, используемый сайтами и сервисами для отслеживания посетителей. Пользователям присваивается уникальный идентификатор (отпечаток). Он содержит много информации о настройках и возможностях браузера пользователей, что используется для их идентификации. Кроме того, отпечаток браузера позволяет сайтам отслеживать поведенческие паттерны, чтобы впоследствии еще точнее идентифицировать пользователей.

Уникальность примерно такая же, как у реальных отпечатков пальцев. Только последние собирает полиция для поиска подозреваемых в совершении преступлений. А вот технология отпечатка браузеров применяется вовсе не для отслеживания преступников. Ведь мы же здесь не преступники, верно?
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments16

В России принят новый закон о крипте: запрет на покупку стейблкоинов, и другие новости для криптанов

Level of difficultyEasy
Reading time10 min
Views52K

Депутаты утвердили целый пакет разных законов, призванных заставить российских шифропанков жить по-новому: детально разбираемся в нововведениях с юристом. Теперь в РФ официально можно вести криптобизнес, но рассказывать о нем клиентам строго запрещено. А если вы майните помаленьку – то, наоборот, никак нельзя это утаивать от налоговой и ФСБ!

Читать далее
Total votes 42: ↑31 and ↓11+26
Comments40

React Hook Form: создание сложных форм для начинающих

Level of difficultyEasy
Reading time9 min
Views3.8K

Сегодня рассмотрим важную тему для всех, кто занимается созданием сложных и многошаговых форм в React. Мы все знаем, как это бывает: бесконечные рендеры, тонны кода для валидации и управления состоянием, а также бесконечная борьба за оптимизацию производительности. Но никто уже давно не отчаивается, ведь существует мощное и гибкое решение React Hook Form.

React Hook Form — это библиотека, которая использует концепцию неконтролируемых компонентов, чтобы минимизировать количество повторных рендеров и повысить производительность приложения.

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

Читать далее
Total votes 6: ↑5 and ↓1+7
Comments1

70 вопросов по JavaScript для подготовки к собеседованию

Reading time43 min
Views937K
Доброго времени суток, друзья!

Надеюсь, эта статья будет полезна как начинающим разработчикам, так и опытным.

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

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

Итак, поехали.
Читать дальше →
Total votes 37: ↑34 and ↓3+40
Comments136

Конверсия 1 собеседование на 500 откликов на западном рынке. Как так вышло и чем грозит?

Level of difficultyEasy
Reading time9 min
Views52K

Привет, меня зовут Артур, и это моя вторая публикация на Хабре. Я долго не решался опубликовать эту статью, переписывал её несколько раз и всё-таки в приятный пятничный вечер решил вынести эту тему на всеобщее обсуждение. Мне кажется, тема очень важной и актуальной. Несмотря на то, что она почти полностью посвящена ситуации с наймом на западном рынке, я уверен, что полезна и для нас, кто работает на местном рынке.

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

Читать далее
Total votes 137: ↑90 and ↓47+64
Comments352

Мемоизация в React: я почитал документацию вместо вас

Level of difficultyEasy
Reading time18 min
Views23K

В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за вас, постарался выделить самое важное, и дать ссылки для углубленного погружения.  

Так как мы будем рассматривать не самые базовые вещи, касающиеся React, то я не буду останавливаться на таких основах как хуки, состояние, свойства, чистые функции и чистые компоненты, ожидая, что вы ознакомитесь с ними за пределами статьи. А также все рассмотренное ниже относится в первую очередь к React 18. 

Читать далее
Total votes 15: ↑14 and ↓1+15
Comments2

Рендеринг веб сайтов 101

Reading time7 min
Views49K
Вы вводите название сайта в адресную строку браузера, нажимаете enter, и по привычке видите запрашиваемую страницу. Все просто: ввел название сайта — сайт отобразился. Однако для более любознательных хочу рассказать, что происходит между тем как браузер начинает получать куски сайта (да, сайт приходит кусками, по-другому — чанками) и отображает полностью нарисованную страницу.


Total votes 14: ↑11 and ↓3+12
Comments9

Для каких задач подходят Headless CMS, и как с их помощью сокращается time-to-market разработки

Level of difficultyEasy
Reading time7 min
Views4.3K

Между идеей и готовой для использования разработкой лежит долгий путь из продумывания концепции, формирования продукта, организации разработки и способов продвижения, развития проекта. IT-продукт невозможно создать в два щелчка. Сократить время на разработку и упростить поддержку и масштабирование продукта помогает Headless CMS – инструмент, о котором поговорим в этой статье.

Читать далее
Total votes 4: ↑3 and ↓1+4
Comments0

Немного о том, как работает виртуальный DOM в React

Reading time10 min
Views71K

image


Настоящий или реальный (real) DOM


DOM расшифровывается как Document Object Model (объектная модель документа). Проще говоря, DOM — это представление пользовательского интерфейса (user interface, UI) в приложении. При каждом изменении UI, DOM также обновляется для отображения этих изменений. Частые манипуляции с DOM негативно влияют на производительность.


Что делает манипуляции с DOM медленными?


DOM представляет собой древовидную структуру данных. Поэтому изменения и обновления самого DOM являются достаточно быстрыми. Но после изменения обновленный элемент и все его потомки (дочерние элементы) должны быть повторно отрисованы (отрендерены) для обновления UI приложения. Повторный рендеринг — очень медленный процесс. Таким образом, чем больше у нас компонентов UI, тем более дорогими с точки зрения производительности являются обновления DOM.


Манипуляции с DOM являются сердцем современного интерактивного веба. К сожалению, они намного медленнее большинства JavaScript-операций. Ситуация усугубляется тем, что многие JavaScript-фреймворки обновляют DOM чаще, чем необходимо.


Допустим, у нас имеется список из 10 элементов. Мы изменяем первый элемент. Большинство фреймворков перестроят весь список. Это в 10 раз больше работы, чем требуется! Только 1 элемент изменился, остальные 9 остались прежними.


Перестроение списка — это легкая задача для браузера, но современные веб-сайты могут осуществлять огромное количество манипуляций с DOM. Поэтому неэффективное обновление часто становится серьезной проблемой. Для решения данной проблемы команда React популяризовала нечто под названием виртуальный (virtual) DOM (VDOM).

Читать дальше →
Total votes 27: ↑24 and ↓3+30
Comments5

Как работают this, call, apply и bind в Java Script: разбираемся на примерах

Reading time3 min
Views31K

Привет, Хабр! Эту статью написал Тарас Голомозый, fullstack web-разработчик и преподаватель в школе программирования Эльбрус Буткемп. В своей практике он часто сталкивается с кейсами выпускников, которых на собеседовании просят рассказать о роли ключевого слова this в JavaScript. Простого определения про ссылку на контекст часто оказывается недостаточно, требуется более глубокое погружение в тему. В этой статье он на нескольких примерах разбирает, в каких ситуациях может пригодиться это ключевое слово и как используется call, apply и bind.

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments4

Как крипто-индустрия переиграла традиционный мир разработки

Level of difficultyMedium
Reading time11 min
Views4.4K

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

В крипте время летит очень быстро: то что в реальном секторе проходит за 5 лет, тут может пройти за одно лето. Крипта — это мир где Open source, который удался.

Читать далее
Total votes 55: ↑31 and ↓24+16
Comments30

ТОП горячих клавиш VS Code для начинающего джуна

Level of difficultyEasy
Reading time3 min
Views178K

«Поговорим не про Vim», олдам, сеньорам и тру-си-разработчикам на проверку: пользуетесь ли вы такими сочетаниями VS Code? Если же вы только начинаете программировать, влетаете в айти на реактивном самолете курсов по Питону, или просто не знаете ничего про хоткеи VS Code, возможно вам точно пригодится парочка сочетаний :)

Читать далее
Total votes 26: ↑16 and ↓10+11
Comments30

Как составить эффективное резюме через нейросети

Reading time13 min
Views19K

В эпоху цифровизации трудоустройства, когда рекрутинговые агентства и HR-отделы переходят на автоматизированные системы обработки резюме, важность составления эффективного CV выходит на новый уровень. Первое впечатление о кандидате складывается за считанные секунды. Плюс не забываем о количестве кандидатов, претендующих вместе с вами на одну и ту же должность. Такова реальность современного рынка труда, где у нас есть два варианта: сдаться или принять этот вызов.

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

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

Приятного чтения!

Читать далее
Total votes 14: ↑12 and ↓2+13
Comments8

Как торговаться на собеседовании, чтобы получить максимум и не потерять оффер

Reading time9 min
Views35K

Как бы это неприятно ни звучало, собеседование — это всегда история про «продажу себя». И тут важно понимать то, что цену, конечно, устанавливает работодатель, но часто ее можно увеличить в свою пользу. Подробнее рассказывает наш герой:

Меня зовут Михаил Карпов, я сам успешно торгуюсь на собеседованиях и стараюсь по мере сил помогать с этим людям. Хочу рассказать, как вообще устроены эти «торги», с чем приходится сталкиваться на практике и как в итоге получить максимально выгодный для себя оффер.

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

Читать далее
Total votes 55: ↑48 and ↓7+55
Comments95

Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 1

Level of difficultyEasy
Reading time20 min
Views60K

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

Читать далее
Total votes 10: ↑6 and ↓4+2
Comments24

Бесплатные VPN | ТОП 15 Лучших VPN для ПК и телефона

Reading time12 min
Views647K

Топ бесплатных VPN-сервисов для компьютеров и телефонов в 2023 - обзор лучших VPN для использования в России, доступных для загрузки на Windows, MacOS, iPhone, Android, а также для браузеров Google Chrome, Opera, FireFox, Яндекс.

Проанализировал более 100 VPN-приложений для разных платформ и провел тестирование каждого из них, чтобы составить рейтинг 15 наиболее надежных и эффективных, подтвержденных работоспособностью в России на данный момент и с перспективой функционирования в 2024 году.

Читать далее
Total votes 24: ↑9 and ↓15-6
Comments48

CSS :has() селектор

Reading time8 min
Views35K

Вы когда-нибудь задумывались о селекторе CSS, где вы проверяете, существует ли конкретный элемент внутри родителя? Например, если у компонента карты есть миниатюра, нам нужно добавить к нему display: flex. Это было невозможно в CSS, но теперь у нас будет новый селектор CSS :has, который поможет нам выбрать родителя определенного элемента и многое другое.

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

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments2
1

Information

Rating
Does not participate
Registered
Activity

Specialization

Frontend Developer
Intern
JavaScript
React