Обновить
256K+

JavaScript *

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

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

Следим и вычисляем с Vue 3, или Как использовать watchEffect

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

Привет! Меня зовут Алексей, я frontend-специалист SimbirSoft. В этой статье разберем новый метод слежения за реактивными свойствами watchEffect.

С появлением Vue 3 c Composition API стало доступно два метода слежения — watch и watchEffect. Если «старый» метод watch всем хорошо знаком и не должен вызывать затруднений у Vue-разработчиков, то новый метод стоит изучить подробнее. Материал будет полезен разработчикам, переходящим с Vue 2 на Vue 3 и всем «вьюшникам», которые еще не разобрались с этим методом.

Composition API предоставляет нам два разных метода слежения за реактивными свойствами — watch и watchEffect. Они похожи, но все же каждый полезен в определенных случаях. Рассмотрим, какие сходства и различия существуют у этих методов:

Читать далее

Оптимальный процесс разработки онлайн игр

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

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

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

Читать далее

Как я тоже Понг на JS делал

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

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

Хочу знать больше

Объяснение паттерна Наблюдатель на примере Redux

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

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

Казалось бы, что может избавить нас от мучительной рутины связанной с отслеживанием зависимостей? Есть один паттерн, который нам с этим поможет, и имя ему Наблюдатель. Давайте посмотрим как он реализуется в знакомой библиотеке менеджера состояний Redux.

Читать далее

Монорепозиторий на обед

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

В прошлой статье я рассказывал про библиотеку компонентов и утилит handy-ones. Я задумал её не только чтобы делиться с сообществом своими наработками на постоянной основе, но главное - чтобы понять, как должен выглядеть, собираться, тестироваться и дистрибутироваться современный JavaScript-проект.

Читать далее

Как мы научили тексты на вебе жить по правилам

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

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

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

Читать далее

React: все о новом предложении — хуке use()

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


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


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


Первоклассная поддержка промисов в React — как это должно работать


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

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

Перерождение Lerna. Что нового в Lerna 6?

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

Состоялся релиз Lerna 6!!! В статье собрано все, что вы должны знать о новом опыте, который предлагает Lerna!

Lerna продолжает развиваться. Если вы и так это знаете, то можете не читать дальше. Но многие все еще не слышали, что Lerna вернулась, не устарела и даже получает новые фичи. Мы из Nrwl являемся создателями Nx, и, учитывая нашу экспертизу в монорепозиториях, мы предложили взять на себя развитие Lerna, когда она была объявлена "мертвой" в апреле 2022 года.

Когда мы получили управление над Lerna начались настоящие американские горки. Мы запустили совершенно новый сайт, обновили документацию и сделали Lerna в 10 раз быстрее. И вот, Lerna 6 вышла!

Читать далее

Elm – забава или серьёзный инструмент?

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

Привет, Хабр!

Данный обзор познакомит вас с частичкой мира функциональных языков программирования, а именно с Elm, кто-то узнает про этот инструмент, кто-то про то, что фронтенд – это не только HTML, CSS и JS.

Читать далее

Туториал: Frontity — настройка авторизации для приватных эндпоинтов WordPress

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

Предисловие

Этот туториал предназначен в первую очередь для новичков в разработке на Frontity (React framework для WordPress).

Основная цель

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

Читать далее

JavaScript в связке с Selenium WebDriver. Опыт использования

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

Одной из очень спорных и обсуждаемых тем в автоматизации тестирования является выбор языка программирования. Особенно, когда речь идет о связке с самым популярным инструментом автоматизации – Selenium WebDriver, ведь он  имеет официальную поддержку пяти языков: Java, C#, Python, JavaScript и Ruby. В дополнении к этому существует большое количество реализаций на других языках. Так что же нам  лучше выбрать?

Опытный автоматизатор, хоть раз программирующий с использованием более чем одного языка, без сомнения  скажет, что важна задача, а не инструмент. В этом и состоит большая разница, когда мы говорим “программированием на языке” или “программируем с использование языка.” При программировани с использование языка мы отталкиваемся от цели, для которой мы выбрали какой-либо язык программирования. Приведу пример: мы не хотим программировать на языке Swift,  а хотим разрабатывать IOS приложения (это цель) и тогда, конечно же, мы должны освоить Swift, а не Java. Когда же мы говорим про автоматизацию тестирования,  нашей целью может быть уменьшение времени ручного регресса за счет написания автотестов. Оно  включает разработку многоуровневого фреймворка, подключение сторонних библиотек, оберток для интеграции вспомогательных инструментов, написание PageObjects для декомпозиции и инкапсуляции работы с элементами страницы / экрана приложения. Как видите, эти задачи не привязаны к платформе, технологии и какому-либо языку программирования. Именно поэтому в большинстве случаев в работе тестировщика-автоматизатора язык программирования является вспомогательным фактором.

Читать далее

JavaScript: Zoom как в картах для SVG/HTML

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

dgrm.net | GitHub

Как сделан zoom в редакторе блок-схем dgrm.net.
Zoom-ить можно:

колесиком мышки,
touchpad-ом
и двумя пальцами на телефонах и планшетах.

Готовая функция zoom-а SVG для ваших проектов прилагается. Для HTML можно переделать.

Читать далее

WebSocket ориентированое Api на Nest.js

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

В этой статье я расскажу как создал модуль под Nest.js позволяющий писать классическое RESTFull API со swagger'ом но клиент будет полностью на WebSocket'ах, звучит странно не так ли? Но зато очень быстро и удобно по итогу)

Идея состоит в том, что вы пишите классическое документированное апи, со всеми типами и плюшками.

Читать далее

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

Немного о WebEngine — low-code IDE для разработки современных веб-приложений

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

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

С огромной гордостью, хочу анонсировать WebEngine - IDE и набор технологий для создания современных сайтов на React, а в дальнейшем Angular, Vue, тем для WordPress, приложений на Electron и многое другое.

Эта статья содержит много текста, включая технического, абстрактного, критику устоев мироздания и главное - в ней не будет ссылок на beta-билд. А в конце статьи будут советы как делать не надо. Все атрибуты высорейтинговой и интересной статьи на месте.

td;lr

Алгоритмы для веб-разработчиков простыми словами (часть 3)

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

Здравствуйте, друзья!

Мы продолжаем разбирать максимально простым языком алгоритмы и структуры данных на JavaScript. Тема нашей сегодняшней статьи — рекурсия. Для многих разработчиков рекурсия кажется чем-то очень сложным и непонятным, но не переживайте, не так страшен черт, как его малюют.

И сегодня мы узнаем, как устроена рекурсия, а также разберем алгоритм сортировки массива под названием Quick Sort или, как еще его называют, быстрая сортировка Хоара. Как вы уже догадались, этот алгоритм рекурсивный.

Если вы еще не читали нашу первую статью (про алгоритмы поиска и Big O нотацию), то можете найти ее здесь.

Ссылку на вторую статью (про алгоритмы сортировки и оценку сложности алгоритмов по скорости и памяти) вы можете найти здесь.

А сейчас давайте перейдем к теме статьи.

Рекурсия

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

Давайте взглянем на простой пример.

Читать далее

Анатомия ошибки в JavaScript

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

Автоматически генерируемые ошибки JavaScript – почему они происходят


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

TypeScript 4.9: что нас ожидает

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

В сентябре Microsoft анонсировал TypeScript 4.9 beta. В бета-версии появились любопытные нововведения и исправления: новый оператор, оптимизация производительности, улучшения существующих типов… Разбираем самые интересные фичи этого анонса. 

Читать далее

О чём расскажут на HolyJS 2022 Autumn

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

Как получить от ESLint максимум пользы? Что можно впихнуть в библиотеку на два килобайта? Как выжать больше производительности, когда очевидные оптимизации уже сделаны? Почему слоны умные и параноидальные? Всё это будет в программе HolyJS (да-да, про слонов тоже). Собрали описания всех докладов в этом хабрапосте и разделили на тематические блоки.

Конференция в этот раз пройдёт в два этапа: сначала два дня будут полностью онлайновыми, а вот в третий день можно будет хоть прийти на офлайн-мероприятие в Москве, хоть подключиться удалённо. Другие подробности (вроде точного расписания) и билеты — на сайте.

Читать далее

Следующий этап развития Веба

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


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


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


Веб состоит из технологий, появившихся более 25 лет назад. HTTP, HTML, CSS и JS были стандартизированы в середине 90-х (когда мне было 8 лет). С тех пор веб эволюционировал в вездесущую платформу приложений. Одновременно с эволюцией веба развивалась и архитектура разработки соответствующих приложений. Сегодня существует большое количество архитектур, которые можно использовать для разработки веб-приложений. В настоящее время самой популярной из них является "Одностраничное приложение" (Single Page App, SPA), но сейчас наблюдается переход к новой улучшенной архитектуре.

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

Пишем бота на JavaScript для Minecraft (1.8-1.18) / Часть 1-9

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

Создавай ботов для Minecraft с помощью библиотеки mineflayer.

Читать далее