Category : javascript

javascript
7 «бесполезных» навыков для начинающих фронтендеров в 2025

Эти навыки не бесполезны в принципе — но для стажеров и джунов, и уж тем более не для тех, кто еще не работает, эти навыки избыточны и не помогут ни устроиться, ни повысить ценность. Оцениваем по двум критериям: польза на работе и спрос на собеседованиях.1. Unit-тестыПольза на работе: ⭐☆☆☆☆ (1/5)В большинстве проектов unit-тесты либо отсутствуют, либо пишутся «для галочки».Для реально полезных тестов нужно знать тонны теории (граничные случаи, mock-объекты), но джунам это почти не пригодится.ИИ…

  • вторник, 12 августа 2025 г. в 00:00:04
javascript
Как собрать npm-пакет в 2025 и не облажаться

Наши кодовые базы растут, и вынос кода в npm-пакеты — один из самых простых и рабочих способов держать этот рост под контролем. Фронтендеры уже освоились со сборкой приложений — мы минифицируем и бандлим код для ускорения загрузки, подключаем полифиллы и транспилируем для поддержки старых браузеров. Есть соблазн для библиотек просто делать все то же самое — но это ошибка, потому что у библиотек совсем другие ограничения. Вот мой топ (нефункциональных) ценностей библиотеки:Работает на всех целев…

  • вторник, 12 августа 2025 г. в 00:00:03
javascript
Как порядок свойств убивает JavaScript?

Привет, Хабаровчане! Во второй статье, хочу поделиться наблюдениями из документации V8 и немного нудной информацией для многих :)Что есть Объект? Казалось бы, объект в JS — это просто набор ключ-значений. Но для движка V8 это структура с жёсткой схемой: каждый объект имеет Hidden Class ( или Map), который описывает:Какие свойства есть у объекта;Их порядок;Смещения в памяти для быстрого доступа.Если структура стабильна, JIT компилятор может сделать доступ к свойствам быстрее, чем если бы структ…

  • понедельник, 11 августа 2025 г. в 00:00:03
javascript
Angular Signals + RxJS: объединяем два реактивных мира в одном стейт-менеджере

Signals против RxJS? Нет, вместе — они сила. Теория, практика и готовый state-manager для Angular 17 и вышеВведениеAngular долгое время ассоциировался с RxJS. Даже слишком: многие разработчики ощущали, что без Observable ничего не работает. Но вот в Angular 17 появляются Signals — синхронная реактивность прямо из коробки. В 17+ — они становятся мейнстримом. Возникает вопрос: а что делать с RxJS? Выбрасывать?Signals и RxJS — не конкуренты, а два мощных инструмента для решения разных задач. И есл…

  • воскресенье, 10 августа 2025 г. в 00:00:09
javascript
Изучаем Go: руководство для JavaScript-разработчиков. Часть 2

После пяти лет работы JavaScript-разработчиком, занимаясь как фронтендом, так и бэкендом, я провел последний год, осваивая Go для серверной разработки. За это время мне пришлось переосмыслить многие вещи. Различия в синтаксисе, базовых принципах, подходах к организации кода и, конечно, в средах выполнения — все это довольно сильно влияет не только на производительность приложения, но и на эффективность разработчика.Интерес к Go в JavaScript-сообществе тоже заметно вырос. Особенно после новости …

  • воскресенье, 10 августа 2025 г. в 00:00:08
javascript
GPT 5 сделал мне 100 игр, 13 даже не запустились

Я потратил 6 часов на этот эксперимент и спешу обрадовать, новая модель от chatgpt не готова заменить программистов.результаты теста Я попросил ChatGPT создать 100 различных версий игры Battle City но на html + css + Js. Даже с платной подпиской весь эксперимент занял у меня почти 6 часов — на генерацию одной игры уходило примерно 3 минуты. В результате хотя бы один полноценный уровень (без появления бонусов) нейросеть осилила меньше чем в половине случаев. А простейший звук появлялся в менее ч…

  • воскресенье, 10 августа 2025 г. в 00:00:06
javascript
CORS для собеседований и работы

Если вы видите эту ошибку — вы не одиноки:Access to fetch at 'https://api.site.com' from origin 'http://localhost:3000' has been blocked by CORS policy.Разберем, почему это происходит, и как это починить. Что такое CORS, и для чего он нужен.1.     Зачем нужен CORS? Безопасность! Пример атаки:Вы вошли на bank.com. Данные для авторизации сохранились в куках.Заходите на evil.com.Сайт evil.com тайно отправляет запрос Get /api/account на bank.com.Браузер автоматически отправляет кук…

  • воскресенье, 10 августа 2025 г. в 00:00:06
javascript
Профессиональная обработка ошибок в TypeScript

Привет, Хаброжители!Ошибки происходят в любом приложении. Говоря об ошибках, первым делом отметим, что все они делятся на два типа: ожидаемые ошибки, обусловленные бизнес-логикой, и неожиданные ошибки. Это различие очень важное, поскольку стратегии обработки ошибок первого и второго типа значительно отличаются.Ожидаемые ошибки, связанные с бизнес-логикой — это «нормальная» часть эксплуатации системы. О таких ошибках в системе должно быть заранее известно пользователям, а вы должны быть способны…

  • суббота, 9 августа 2025 г. в 00:00:11
javascript
Как гуманитарий создал сайт с нуля при помощи DeepSeek. Примеры рабочих промптов

*Статья отражает личный опыт, и не является рекламой. Иногда я читаю Хабр. Совсем недавно под очередной статьей о нейросетях я встретил комментарий, который выражал общий скепсис в отношении лингвистических моделей и чат ботов, в частности. Мол, они не могут сгенерировать ни единой строчки рабочего кода и годны, только чтобы переставлять слова в предложениях. В общем, технологию прямо называли шарлатанской.Я улыбнулся, вернулся на свой сайт, сделанный при помощи DeepSeek, и проверил, всё ли ра…

  • суббота, 9 августа 2025 г. в 00:00:10