Обновить
238.87

JavaScript *

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

Сначала показывать
Порог рейтинга
Уровень сложности

Телепортируем мемы в telegram, или как вернуть нажитое непосильным трудом

Время на прочтение13 мин
Охват и читатели4.8K

По разным причинам я уже как пару лет я не использовал ВК для связи с друзьями/коллегами - все ушли в telegram. Но в ВК все равно приходилось заходить, так как там осталось самое дорогое - группы с мемами, картиночками, анекдотами и всякое такое. Самому смотреть неудобно, друзьям - не отправить. Если интересно, как я решил эту проблему за один вечер - добро пожаловать под кат.

Читать далее

Redux в Angular. Туда и обратно

Время на прочтение29 мин
Охват и читатели11K

Пару лет назад из каждого утюга можно было услышать про redux. Сейчас redux является чем-то обыденным в фронтенд разработке. На пороге 2023 года я хочу поделиться своим опытом использования redux в Angular, поговорить о разных реализациях, и рассказать к каким выводам я пришел за это время.

Читать далее

Лучшие практики безопасности Node.js

Время на прочтение11 мин
Охват и читатели9.9K

Назначение

Этот документ призван расширить текущую модель угроз и предоставить подробные рекомендации по обеспечению безопасности приложения Node.js.

Читать далее

Точка с запятой в JavaScript: Действительно ли она вам нужна? [Руководство 2022]

Время на прочтение8 мин
Охват и читатели27K

В JavaScript точки с запятой являются необязательными.

Да, вы не ослышались.

Читать далее

Создание сервера для онлайн ММО игр на PHP ч. 5 — LUA и JavaScript

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.9K

Продолжая серию статей про разработку сервера для онлайн игр (адрес проекта http://mmogick.ru) на языке PHP в это части я хочу рассказать про безопасное добавления пользовательского кода для добавления функционала игровых механик. В статье я опишу существующие решения для PHP , сравню скорость работы приведу видео примеры.

Для тестов будет использовано следующее железо:

Читать далее

Разработка и тестирование сортируемых компонентов Drag and Drop. Часть 1 — Разработка

Время на прочтение6 мин
Охват и читатели3.6K

Разработка и тестирование сортируемых компонентов Drag and Drop. Часть 1.

В этой серии статей мы рассмотрим задачу разработки и тестирования сортируемых компонентов Drag-and-Drop.

Читать далее

Немного о Fastify

Время на прочтение7 мин
Охват и читатели9.6K

Почти 15 лет назад Райан Томайко (Ryan Tomayko) написал книгу "The Thing About Git" (Про Git). Это было время, когда SVN (Subversion - система управления версиями) все еще активно использовался. Мало кто понимал, почему Git такой особенный, и тогда я тоже не принадлежал к их числу. Статья Райана уловила суть Git'а и убедила меня перейти на него.

Уже было написано множество статей о том, почему и как следует принимать Fastify, но сейчас 2022 год, а Express - самый традиционный фреймворк веб-сервера для Node.js - по-прежнему имеет примерно в 49 раз больше еженедельных загрузок npm, чем Fastify:

Читать далее

RTK query: что мы от него хотим и зачем

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели85K

Redux Toolkit Query — это мощный инструмент для взаимодействия с API, который из коробки реализует такие полезные фишки, как отображение состояния загрузки, кэширование, дедупликацию запросов, полинг, ревалидацию при различных условиях, а также весьма удобна в использования за счёт готовых хуков. 

Привет, меня зовут Антон Степанов, я — frontend-разработчик в Альфа-Банке. В статье расскажу какие задачи при работе с API frontend-разработчику приходится решать чаще всего, к каким идеям рано или поздно это может привести, и как их можно реализовать в RTK query, собственно.

Под катом много кода и убеждений.

Читать далее

Геометрия объектной модели документа: исчерпывающее руководство

Время на прочтение12 мин
Охват и читатели6.6K



Я не считаю, что DHTML — cool, просто картинка хорошая)


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


Представляю вашему вниманию перевод этой замечательной статьи.


Знаете ли вы, что кроме интерфейсов, определенных спецификациями объектной модели документа (Document Object Model, DOM) и объектной модели каскадных таблиц стилей (Cascading Style Sheets (CSS) Object Model, CSSOM), существует также набор свойств и методов, определяемых в модуле отображения CSSOM (CSSOM View Module)? Этот интерфейс предназначен для определения и манипулирования геометрией элементов DOM.

Читать дальше →

MobX c MVVM хорош, но с DI ещё лучше

Время на прочтение6 мин
Охват и читатели6.6K

В своей прошлой статье я рассуждал о том, как использование паттерна MVVM позволяет упростить процесс разработки. Паттерн был реализован с применением библиотеки MobX. Эту библиотеку я считаю в разы удобнее Redux, аргументы в пользу чего я также привел в статье. Однако, у нее имеется серьезный недостаток - излишняя свобода действий, в следствие наличия которой разработчики не всегда знают как писать код "хорошо". Паттерн MVVM же диктует несколько простых правил по использованию MobX, благодаря которым разработчики могут реже наступать на грабли. Однако, он не решает всех проблем. И в этой статье я бы хотел показать, как можно дополнить паттерн MVVM и сделать процесс разработки ещё приятнее.

Читать далее

Как применять Module Federation для шеринга виджетов из UI-kit

Время на прочтение5 мин
Охват и читатели2.3K

В последнее время все активнее в обиход входит понятие экосистемы. Многие IT-компании предлагают различные цифровые решения для людей и бизнеса под одним брендом - от заказа еды до онлайн-сделок по покупке недвижимости. 

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

В ДОМ.РФ мы создаем продукты для рынка недвижимости, в частности предназначенные для электронного взаимодействия между застройщиками, банками и государственными органами. Задачи и цели систем отличаются друг от друга, но их объединяет общий дизайн. Безусловно, создание библиотеки UI-компонентов с нуля в каждом новом сервисе является крайне сомнительной идеей по следующим причинам: 

Читать далее

Qooxdoo 6.0 — JavaScript фреймворк для тех, кто любит кодить

Время на прочтение4 мин
Охват и читатели9K

Создать полноценное веб приложение с помощью только Javascript без HTML и CSS? Написать код с использованием ООП, которое превосходит возможности даже стандарта ES7? Звучит впечатляюще? И это далеко не все, что вас ожидает! Также мы добавили оптимизирующий ваш код компилятор, тестовый фреймворк, улучшенную темизацию, больше виджетов и полную поддержку многоязычных приложений. Все это идет с установкой всего лишь одного npm пакета.

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

Читать далее

Создание расширения браузера Google Chrome для извлечения всех изображений web-страницы. Часть 2

Время на прочтение25 мин
Охват и читатели28K

Представляю вашему вниманию вторую часть статьи о создании расширения web-браузера Chrome, которое позволяет извлечь все изображения с web-страницы.

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

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

Читать далее

Ближайшие события

NestJS для разрастающейся разработки: зачем так сложно и почему всё-таки да

Время на прочтение8 мин
Охват и читатели15K

Привет, Хабр. Меня зовут Денис Былинин, я архитектор в компании Сравни. 

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

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

Читать далее

Весенние конференции JUG Ru Group: много офлайна и много онлайна

Время на прочтение2 мин
Охват и читатели1.5K

Помните доисторические времена вроде 2019 года, когда ещё не было пандемии? Тогда мы проводили офлайновые конференции, и обычно они длились дня два с утра до вечера: можно успеть и доклады послушать, и наобщаться вволю.

В эпоху онлайн-конференций многие ностальгировали по этому и просили «вернуть как было». Однако другие участники успели полюбить удобство онлайна (например, те, кто живёт далеко от Москвы/Петербурга). И просто вернуть прежний формат означало бы сделать им хуже.

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

Читать далее

Как собрать, покрыть тестами и опубликовать TypeScript-пакет в npm в 2022 году

Время на прочтение6 мин
Охват и читатели11K

В этой статье мы с вами создадим с нуля и опубликуем в  NPM TypeScript-пакет, не забыв про Jest для покрытия тестами.

Мы инициализируем проект, настроим TypeScript, напишем для него тесты в Jest и опубликуем его в NPM.

Читать далее

Вся боль undefined

Время на прочтение4 мин
Охват и читатели12K

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

Читать далее

React: работа с 3D-графикой

Время на прочтение8 мин
Охват и читатели21K


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


В данном туториале я покажу вам самый простой и быстрый, хотя и не очень оптимальный с точки зрения размера сборки, способ рендеринга 3D-объектов и моделей в React.


Мы решим 3 интересные задачи:


  • рендеринг самописного 3D-объекта;
  • рендеринг готовой 3D-модели;
  • совместный рендеринг объекта и модели.

Знание вами основ работы с трехмерной графикой в браузере является опциональным.


Источником вдохновения для меня послужила эта замечательная статья.


Если вам это интересно, прошу под кат.

Читать дальше →

Создаем свой babel плагин и публикуем в npm

Время на прочтение4 мин
Охват и читатели2.9K

Сегодня мы рассмотрим процесс написания своего собственного плагина babel и опубликуем его в npm.

Читать далее

Брендан Эйх о создании JavaScript за 10 дней и о том, что сегодня он сделал бы по-другому

Время на прочтение6 мин
Охват и читатели15K

Миллионы современных разработчиков активно используют язык программирования, который родился буквально за 10 дней в период экспоненциального развития интернета. Создатель JavaScript Брендан Эйх не так давно заново обратился к истокам созданного им языка и рассказал о том, как семена, посеянные им в 1995 году, теперь наконец-то взошли.

Читать далее

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