Как стать автором
Обновить
236.01
Рейтинг

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Релизим фронтенд несколько раз в день

Блог компании SuperJob Тестирование IT-систем *JavaScript *ReactJS *

Меня зовут Петр Солопов, я руковожу фронтенд-разработкой в SuperJob. В этой статье хочу рассказать об опыте ежедневных релизов у нас в компании, зачем мы это делаем и почему это не так страшно, как кажется.

История разбита на пять частей: что нас к этому привело, как это сделать, сколько нужно тестов и каких, что следует автоматизировать в процессе деплоя и как мониторить продакшн.

Читать далее
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 6.4K
Комментарии 26

Новости

[Redux] Мой любимый устаревший вопрос на собеседовании

JavaScript *ReactJS *

Время от времени мне приходится проводить собеседования. И сегодня я хочу поделиться моими любимыми вопросами на тему Redux. К сожалению, вопросы немного устарели, т.к. они касаются компонента высшего порядка connect, который активно заменяют на хуки. Но connect может уже и не сильно актуален, а принципы на которых он построен абсолютно не изменились. (Данная статья является расшифровкой видео).

Читать далее
Всего голосов 31: ↑24 и ↓7 +17
Просмотры 46K
Комментарии 63

Основные варианты использования CSS-переменных (Custom Properties)

CSS *JavaScript *HTML *

CSS Variables или CSS Custom Properties уже давно используются в разработке и поддерживаются большинством популярных браузеров. Если у вас нет обязательного требования разрабатывать под IE, то вполне вероятно, вы уже успели оценить их преимущества.

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

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 4K
Комментарии 8

Автоматизируем рутину в работе с HTML/CSS/JS

JavaScript *Системы управления версиями *HTML *Облачные сервисы
Из песочницы

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

Курсивом выделены термины, которые описаны в конце статьи.

P.S. В данной статье вы не узнаете углублённо о каждом описанном инструменте, будет рассказываться поверхностная информация. Далее разделы этих статей будут разветвляться на более глубокие и узконаправленные.

Познай великую силу, юный падаван
Всего голосов 7: ↑2 и ↓5 -3
Просмотры 4.7K
Комментарии 20

Хуки — это лучшее, что случилось с React

Блог компании RUVDS.com Разработка веб-сайтов *JavaScript *ReactJS *
Перевод
React — это самая популярная фронтенд-библиотека из экосистемы JavaScript. Она известна простотой использования и читабельностью кода, создаваемого с её применением. Это позволяет организациям самых разных масштабов успешно внедрять данную библиотеку. Но компоненты, основанные на классах, это громоздкие конструкции, с которыми непросто разобраться. Хуки позволяют работать с состоянием компонентов, с методами их жизненного цикла, с другими механизмами React без использования классов.



В этой статье мы поговорим о том, что такое React-хуки, о том, что отличает их от других механизмов библиотеки, и о том, почему они — это лучшее, что случилось с React.
Читать дальше →
Всего голосов 45: ↑35 и ↓10 +25
Просмотры 6.9K
Комментарии 52

О некоторых аспектах сложных Angular проектов

Разработка веб-сайтов *JavaScript *Angular *

Как ранее было отмечено в предыдущем посте концепция рабочего каталога Angular закономерно эволюционировала до поддержки полноценных workspace - проверенный и понятный способ управления сложностью при масштабировании процесса разработки (Visual Studio Solution , SBT Multi-Project builds , Gradle Multi-Project Builds , RushJS , Lerna и др. ).

Для каждого, кто практически сталкивался с Angular проектом средней руки, не будет секретом, что angular.json может легко содержать тысячи строк убористого JSON, с невероятным, даже нарочито избыточным количеством дублирующейся информации. Проблема отнюдь не новая и дающая о себе знать при eмасштабировании процесса разработки сложного продукта. Компактность и человеко-читаемость формата явно не была в приоритетах, и как-бы намекает, что человеку тут и нечего делать. Из этого и будем исходить.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.8K
Комментарии 3

Дайджест свежих материалов из мира фронтенда за последнюю неделю №493 (8 — 14 ноября 2021)

Разработка веб-сайтов *CSS *JavaScript *HTML *
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 5.2K
Комментарии 4

Введение в отладку на примере Firefox DevTools, часть 3 из 4

Firefox Разработка веб-сайтов *JavaScript *Отладка *Браузеры
Перевод

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

Читать про стек вызовов
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 2.7K
Комментарии 3

Создание SSR веб приложения на React и NodeJS с нуля до деплоя (статья 1)

JavaScript *Node.JS *ReactJS *
Из песочницы

Добрейшего времени суток %HABRUSER% и проходящим мимо, в первую очередь я очень рад что ты открыл эту статью, без шуток :)

Данная серия публикаций посвящена созданию сервиса runwith суть которого вы сможете почитать ниже. Это мой первый независимый проект, поэтому буду очень рад вашим комментариям и конструктивной критике касаемо стиля написания статьи и кода в целом, надеюсь тебе будет полезно и интересно, приятного чтения!

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Просмотры 2K
Комментарии 9

React, AbortController и асинхронные onClick вызовы

JavaScript *ReactJS *
Из песочницы
Перевод

Добрый день, читатели Хабра, представляю вашему вниманию перевод статьи React, Abort Controller and onClick async calls

Что такое Abort Controller в JavaScript Web Apps, как его использовать в React для прерывания асинхронных вызовов? Теория и некоторые примеры использования.

Что в статье?

В самом начале мы поговорим о базовой теории асинхронных функций в JavaScript и о том, как они работают.

Затем немного об Abort Controller и о том, зачем его вообще использовать?

По окончании введения я покажу два варианта использования в React: первый - когда получаете данные при монтировании компонента, а второй - для асинхронных запросов, вызываемых пользовательским действием, например, onClick.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 2.4K
Комментарии 3

Дженерики в TypeScript

Блог компании TINKOFF Разработка веб-сайтов *JavaScript *TypeScript *

Привет, я Сергей Вахрамов, занимаюсь фронтенд-разработкой на Angular в компании Тинькофф. Во фронтенд-разработку вошел напрямую с тайпскрипта, просто перечитав всю документацию. С того момента и спецификация ECMAScript расширилась, и TypeScript сильно подрос. Казалось бы, почему разработчики могут бояться дженериков, ведь бояться там нечего? Мой опыт общения с джуниор-разработчиками говорит, что во многом ребята не используют обобщенные типы просто потому, что кто-то пустил легенду об их сложности.

Эта статья для тех, кто не использует generic-типы в TypeScript: не знают о них, боятся использовать или используют вместо реальных типов — any.

Перестать везде использовать тип "any"
Всего голосов 41: ↑40 и ↓1 +39
Просмотры 14K
Комментарии 13

Ajax-запросы нативными средствами Joomla

Ajax *CMS *Разработка веб-сайтов *JavaScript *Joomla *
Tutorial

Небольшая заметка о том, как делать ajax-запросы штатными средствами без использования дополнительных js-библиотек (jQuery, etc). Joomla 3 и Joomla 4 предоставляют небольшую обёртку для конструирования XMLHttpRequest. В целом синтаксис очень похож на тот же jQuery Ajax, поэтому заменить его будет очень легко.

В <head> страницы можно увидеть core.js, в котором есть немало любопытных функций для работы с фронтом на Joomla. Об одной из них (получение данных из php в js) писалось здесь: Разработка форм обратной связи для магазинов на Joomla 3. Для создания ajax-запросов нам пригодится Joomla.request.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 1K
Комментарии 12

Блокчейн на JavaScript

Блог компании RUVDS.com Децентрализованные сети Разработка веб-сайтов *JavaScript *
Перевод
В последнее время криптовалюты и блокчейн-технологии стали невероятно популярными. Сегодня я расскажу о моём подходе к созданию блокчейн-платформы на JavaScript с использованием всего 60 строк кода. Я — начинающий блокчейн-разработчик, поэтому если я в чём-то ошибаюсь — поправьте меня в комментариях.


Читать дальше →
Всего голосов 40: ↑40 и ↓0 +40
Просмотры 8.9K
Комментарии 11

floorm: орм на фронте и прозрачная лаконичность реакт-приложений

Разработка веб-сайтов *JavaScript *ReactJS *
Из песочницы

Эта статья - экстракт четырёхлетнего опыта разработки на реакте. В начале карьеры я столкнулся с багом библиотеки react-player, пофиксил его, а дальше предложил и реализовал там рефакторинг. Мейнтейнер даже упомянул моё имя отдельно в readme, за что огромное ему спасибо. Давайте рассмотрим идеи, приготовленные в результате охоты на цели frontend-комьюнити сегодня.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 1.1K
Комментарии 2

Next.js: подробное руководство. Итерация первая

Блог компании Timeweb Разработка веб-сайтов *JavaScript *ReactJS *


Привет, друзья!


Хочу поделиться с вами заметками о Next.js (надеюсь, кому-нибудь пригодится).


Next.js — это основанный на React фреймворк, предназначенный для разработки веб-приложений, обладающих функционалом, выходящим за рамки SPA, т.е. так называемых одностраничных приложений.


Как известно, основным недостатком SPA являются проблемы с индексацией страниц таких приложений поисковыми роботами, что негативно влияет на SEO.


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


Кроме того, существуют специальные инструменты, такие как react-snap, позволяющие превратить React-SPA в многостраничник путем предварительного рендеринга приложения в статическую разметку. Метаинформацию же можно встраивать в head с помощью таких утилит, как react-helmet. Однако Next.js существенно упрощает процесс разработки многостраничных и гибридных приложений (последнего невозможно добиться с помощью того же react-snap). Он также предоставляет множество других интересных возможностей.



Обратите внимание: данная статья предполагает, что вы обладаете некоторым опытом работы с React. Также обратите внимание, что заметки не сделают вас специалистом по Next.js, но позволят получить о нем исчерпывающее представление.


Заметки состоят из 2 частей. Это часть номер раз.


Итерация вторая.

Читать дальше →
Всего голосов 14: ↑13 и ↓1 +12
Просмотры 5.4K
Комментарии 3

JavaScript: заметка о requestAnimationFrame и requestIdleCallback

Блог компании Timeweb Разработка веб-сайтов *JavaScript *Браузеры


Привет, друзья!


Можете ли вы ответить на вопрос о том, в чем заключается разница между requestAnimationFrame и requestIdleCallback?


Если можете, то я завидую глубине ваших знаний. Я не смог, когда меня об этом спросили. Более того, в тот момент я даже не знал о существовании интерфейса requestIdleCallback. Теперь знаю и хочу с вами этими знаниями поделиться.


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


Что касается поддержки, то с requestAnimationFrame все хорошо, а с requestIdleCallback, в основном из-за Safari, этого современного IE, ситуация хуже.


Рассматриваемые интерфейсы позволяют разработчикам получать доступ к процессу рендеринга страницы. Также они очень тесно связаны с циклом событий (event loop) браузера.

Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 4.8K
Комментарии 4

Учись глазами. Как айтрекер помогает обездвиженным

Блог компании LINKa JavaScript *Компьютерное железо
Привет, я Иван Бакаидов.

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

За эти годы я пришел к использованию устройств отслеживания положения взгляда Tobii для коммуникации с тяжелыми формами инвалидности. 

В прошлом году я начал сотрудничать с фондом “Близкие Другие”. У нас был интересный опыт, когда несколько десятков семей научились работать с айтрекером с использованием моих open-source программ.

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

Юра Дудь пробует LINKa смотри, на разработку которон он выделял деньги.
Юра Дудь пробует LINKa смотри, на разработку которой он выделял деньги.
Читать дальше →
Всего голосов 32: ↑28 и ↓4 +24
Просмотры 3K
Комментарии 2

Улучшаем производительность vue с помощью selective-object-reuse

JavaScript *VueJS *
Tutorial

Одна из причин тормозов vue приложения - излишний рендеринг компонентов. Разбираемся, с чем это обычно связано в vue2 и vue3, а затем применяем одну простую технику, которая лечит все эти случаи и не только их. Данная техника уже пол года хорошо работает в продакшене.

Примеры этой статьи собраны в двух репозиториях (один для vue2, другой для vue3), с идентичным исходным кодом.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 2.3K
Комментарии 2

Книга «{Вы пока еще не знаете JS} Область видимости и замыкания. 2-е межд. издание»

Блог компании Издательский дом «Питер» JavaScript *Профессиональная литература
image Привет, Хаброжители! Вы пока еще не знаете JS. И Кайл Симпсон признается, что тоже его не знает (по крайней мере полностью)… И никто не знает. Но все мы можем начать работать над тем, чтобы узнать его лучше. Сколько бы времени вы ни провели за изучением языка, всегда можно найти что-то еще, что стоит изучить и понять на другом уровне. Вы уже прочитали «Познакомьтесь, JavaScript»? Тогда откройте вторую книгу серии «Вы пока еще не знаете JS», чтобы познакомиться поближе с первым из трех столпов JavaScript — системой областей видимости и функциональными замыканиями, а также с мощным паттерном проектирования «Модуль». Пора освоить правила лексических областей видимости для размещения переменных и функций в правильных позициях. И заглянуть на более низкий уровень, ведь магия с хранением состояния модулей базируется на замыканиях, использующих систему лексических областей видимости.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 2.5K
Комментарии 6

Анимация при прокрутке с помощью WAAPI и ScrollTimeline

Блог компании SkillFactory Разработка веб-сайтов *CSS *JavaScript *Программирование *
Перевод
Tutorial

Спецификация W3C Scroll-linked Animations — это экспериментальное дополнение, которое позволяет связать развитие эффекта анимации с прокруткой. Подробностями делимся под катом, пока у нас начинается курс по Frontend-разработке.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 1.6K
Комментарии 0

Вклад авторов

Работа