Category : javascript

javascript
Vite плагин для удобной работы с Web Workers

Привет, Хабр! Я участвую в разработке крупного Web приложения и мы с коллегами на этапе проработки и планирования архитектуры пришли к выводу о необходимости выносить всю логику приложения в отдельный поток Web Worker, т.к. предполагается большое число фоновых операций и вычислений. К чему это привело? Сложности? Пути их решения? Обо всем попорядку.ВведениеВ современной веб-разработке постоянно ищутся способы оптимизации производительности и обеспечения плавности работы приложений. Одним из на…

  • воскресенье, 10 сентября 2023 г. в 00:00:12
javascript
Как отправлять пользовательский интерфейс по API

Есть приём, позволяющий совершенно по-новому представить работу с пользовательскими интерфейсами (UI). Можно передавать UI на клиент через различные API – так получаются серверно-управляемые пользовательские интерфейсы. Такой метод позволяет выйти на новый уровень гибкости и динамичности, трансформирует традиционные парадигмы разработки UI. Серверно-управляемые UI существуют совсем не только в теории. Их внедряют некоторые крупнейшие игроки технологической индустрии. В качестве примеров мож…

  • суббота, 9 сентября 2023 г. в 00:00:18
javascript
Создатель Ruby on Rails: «Turbo 8 отказывается от TypeScript»

Контекст: Turbo — это как htmx, т.е. с идеей передачи html между бэкендом и фронтендом и управлением состоянием на бэкенде, но от создателя Basecamp (сервиса менеджмента проектов), HEY (email-сервиса) и фреймворка Ruby on Rails. — прим. перевод.По общему мнению, TypeScript стал большим успехом для Microsoft. Я видел множество сияющих от радости людей, напичкавших JavaScript типами, которые могут быть проверены компилятором. Но я никогда не был его поклонником. Ни через пять минут размышлений, …

  • суббота, 9 сентября 2023 г. в 00:00:17
javascript
Проблема код-ревью: ESLint — больше, чем просто «extend»

На код-ревью зачастую тратят слишком много времени и энергии. Перфекционизм часто заставляет размениваться на мелочи вместо сути, а холивары разрушают команды. Хотя есть специальные инструменты, задача которых автоматизировать процесс и убрать лишние споры, это часто не работает. Ведь всё взаимодействие с ESLint сводится к extend’у от популярных конфигурации типа airbnb. Проблема в том, что эти конфигурации не покрывают даже малую часть того, что на самом деле может ESLint.Чтобы исправить ситу…

  • пятница, 8 сентября 2023 г. в 00:00:21
javascript
Повышаем продуктивность разработки: магия общей ESLint конфигурации

Всем привет! Меня зовут Дмитрий Пашкевич, я Frontend разработчик. Эта статья не просто туториал по созданию единой ESLint конфигурации, которую можно переиспользовать между проектами. Это история решения боли диcкуссий о форматировании кода на ревью от проекта к проекту.Статья будет полезна разработчикам: которые хотят унифицировать подход к форматированию кода в разных проектах; ищут проверенное решение для стандартизации кодовой базы.Зачем нужен единый плагин/конфиг ESLint?Единое форматирова…

  • четверг, 7 сентября 2023 г. в 00:00:14
javascript
Ускорение в 30 раз — requestIdleCallback

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

  • четверг, 7 сентября 2023 г. в 00:00:13
javascript
Как грамотный подход аналитиков может сэкономить бюджет компании за счет изменения подхода к реализ…

Привет, Хабр! Меня зовут Лена Махова, я работаю системным аналитиком в РСХБ‑Интех. Бывают ситуации, когда нужно решить проблему бизнеса и сократить время на разработку. Так случилось и у нас, когда пришел заказ от смежников доработать интеграцию в части передачи значения «номер ИД» (исполнительный документ). В материале рассказываю, как мы решили эту задачу, и даю шаблон кода решения, чтобы при желании вы также могли им воспользоваться.Аналитик достаточно часто встречается с ситуациями, когда …

  • четверг, 7 сентября 2023 г. в 00:00:13
javascript
Обертка для indexedDB / localStorage /…

Библиотека storage-facade, о которой пойдет речь в этой статье, предоставляет единый синхронный / асинхронный API хранилища, являющийся абстракцией над реальной реализацией хранилища. Для конечного пользователя она упрощает использование любых хранилищ, для которых абстрактный класс из storage-facade будет реализован. Как автор этой библиотеки, расскажу о её использовании.Есть реализации для IndexedDB, localStorage, sessionStorage, обёртка для Map.Рассмотрим самый простой вариант, storage-faca…

  • четверг, 7 сентября 2023 г. в 00:00:12
javascript
Создаём с нуля своё BIM-приложение для просмотра моделей IFC формата в браузере на основе open-sour…

ВведениеПриложение, о котором пойдёт речь, применимо в архитектурно-строительной области. С развитием информационных технологий, технологий строительства и производства, а также экономической составляющей, появилась необходимость в более эффективном и комплексном подходах в управлении инвестиционно-строительными проектами, что поспособствовало появлению и формированию ТИМ BIM-технологии.BIM (англ. Building Information Model или Информационное моделирование строительных объектов) — это объектно…

  • четверг, 7 сентября 2023 г. в 00:00:11