Блог

Webpack. Начало работы, часть 1 из 2

По большей части, сайты больше не пишутся на чистом HTML с небольшим количеством JavaScript — часто они создаются только с помощью JavaScript. Поэтому возникает необходимость в сборке, минификации и транспиляции кода. Вот здесь webpack и приходит на помощь разработчику. Вебпак — это сборщик модулей.
Категория: Web-разработка • Разное

GitHub Actions. Начало работы, часть 2 из 2

Хорошо, общее представление о GitHub Actions у нас есть, теперь хотелось бы применить эти знания на практике. Давайте создадим небольшой проект, выложим его на GitHub, создадим для него workflow-файл, который будет запускать проверку кода линтером, выполнять сборку и деплоить на production сервер.
Категория: Web-разработка • Разное

GitHub Actions. Начало работы, часть 1 из 2

GitHub Actions — бесплатная для публичных репозиториев система непрерывной интеграции. Позволяет запустить проверку кода линтером и тестами, выполнить деплой проекта, опубликовать новую версию пакета, отправлять оповещения в мессенджер о событиях в репозитории и многое другое.
Категория: Web-разработка • Разное

JavaScript. Event Loop — макрозадачи и микрозадачи

Поток выполнения в браузере, равно как и в Node.js, основан на событийном цикле. Есть бесконечный цикл, в котором движок JavaScript ожидает задачи, исполняет их и снова ожидает появления новых. Движок JavaScript большую часть времени ничего не делает и работает, только если требуется исполнить скрипт/обработчик или обработать событие.

JavaScript. Promise API

Объект Promise используется для отложенных и асинхронных вычислений. Представляет собой обёртку для значения, неизвестного на момент создания промиса. Он позволяет обрабатывать результаты асинхронных операций так, как если бы они были синхронными. Вместо конечного результата асинхронного метода возвращается обещание…

JavaScript. Асинхронный код — callback, promise и async/await

По умолчанию код в JavaScript выполняется последовательно — в одном потоке, синхронно. То есть таким образом, когда каждая следующая операция ждёт завершения предыдущей. Но часто встречаются задачи, для выполнения которых требуется значительное время. Если их реализовать с помощью синхронного кода, то это может привести…

SSH как SOCKS сервер

Допустим, нам нужен доступ к сайту, который заблокирован на территории России. Тогда нам потребуется ssh-сервер с белым ip-адресом где-то за границей. Можно настроить VPN-сервер, чтобы выходить в интернет через него. Но можно обойтись без установки дополнительного программного обеспечения, а использовать возможности ssh-сервера.
Категория: ОС Linux • Разное
Теги: Bash • DNS • HTTP • HTTPS • Linux • SSH • Клиент • Настройка • Сервер • Сокет

Скрипты — атрибуты async и defer

Когда браузер загружает HTML и доходит до тега <script>…<script>, он не может продолжать строить DOM. Он должен сначала выполнить скрипт. То же самое происходит и с внешними скриптами <script src="…"></script> — браузер должен подождать, пока загрузится скрипт, выполнить его, и только затем обработать остальную страницу.

JavaScript. Простой слайдер

Простой слайдер на чистом css и javascript, не имеет практической ценности, исключительно для практики. Несколько картинок, возможность автопрокрутки, кнопки вперед и назад, индикатор текущего слайда. Для начала подготовим простую страницу, создадим html-разметку и файл стилей — а потом напишем js-класс Slider.

Плавная прокрутка, библиотека hsnaydd/moveTo

При клике по якорной ссылке браузер автоматически устанавливает положение страницы так, чтобы якорный элемент оказаля в самом верху видимой области. Но у этого метода есть существенный недостаток — прокрутка осуществляется мгновенно, так что трудно понять — что вообще произошло. Сделать прокрутку плавной очень просто…
Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.