Компиляция Sass может быть узким местом в сборке, но это больше не так.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👎1
Если необходимо создать npm пакет и гарантировать, что его смогут использовать все желающие, нужно, чтобы он поддерживал CommonJS (CJS) и ECMAScript Modules (ESM). Рассмотрим, как создать такой пакет используя TypeScript.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Создайте приложение на Node.js, которое принимает URL из аргумента командной строки и проверяет, доступен ли этот URL (возвращает ли HTTP код 200). Если URL доступен, приложение должно вывести "URL доступен", если нет — "URL недоступен".
Решение задачи
const https = require('https');
const url = process.argv[2];
https.get(url, (res) => {
if (res.statusCode === 200) {
console.log('URL доступен');
} else {
console.log('URL недоступен');
}
}).on('error', (e) => {
console.log('URL недоступен');
});
Please open Telegram to view this post
VIEW IN TELEGRAM
🤮2😭2👎1
Ознакомьтесь с 10 малоизвестными сайтами, предназначенными для веб-разработки. Передовые технологии, используемые этими ресурсами, - от потрясающих возможностей UI/UX до молниеносных бэкенд-решений - поднимут ваши проекты на новый уровень.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
В IT возникают ситуации, требующие решения логических задач. Одна из таких задач касается управления доступом к информационным ресурсам. Рассмотрим задачу, связанную с управлением доступом к серверу.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👎2👍1
В этой статье мы рассмотрим различные фреймворки JavaScript и поможем новичкам определиться с выбором инструмента для своих проектов.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👌3
Worker Threads
— это модуль в Node.js, который позволяет создавать несколько потоков для выполнения JavaScript кода параллельно. Это полезно для CPU-интенсивных операций, так как основной поток Node.js работает в однопоточном режиме и не подходит для вычислительно сложных задач.const { Worker, isMainThread, parentPort } = require('worker_threads');
if (isMainThread) {
const worker = new Worker(__filename);
worker.on('message', (message) => {
console.log(`Сообщение от воркера: ${message}`);
});
} else {
parentPort.postMessage('Выполняется в воркере');
}
🗣️ Worker Threads позволяет выполнять тяжёлые задачи параллельно основному потоку, повышая производительность в многопроцессорных системах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Подборка опенсорсных библиотек на все случаи жизни – от создания графиков и диаграмм до масштабирования проекта с помощью распределенного выполнения задач и кэширования вычислений.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Недавно я узнал о corepack, инструменте, работающем с Node.js и решающем множество проблем с менеджерами пакетов. С этого момента буду использовать его в своём процессе разработки.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Веб-приложениям не всегда нужна запись в файловую систему, но Node.js предоставляет для этого обширный интерфейс прикладного программирования (API). Это может понадобиться, если вы ведёте логи отладки, передаёте файлы на сервер или с сервера, или создаёте инструменты командной строки.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7⚡1🔥1
Создайте приложение на Node.js, которое работает как таймер обратного отсчёта. Программа должна принимать количество секунд в качестве аргумента командной строки и каждую секунду выводить сообщение с оставшимся временем: "Осталось X секунд". Когда отсчёт завершится, программа должна вывести "Время вышло!" и остановиться.
Осталось 10 секунд
Осталось 9 секунд
...
Осталось 1 секунда
Время вышло!
Решение задачи
const seconds = parseInt(process.argv[2]);
if (isNaN(seconds) || seconds <= 0) {
console.log('Введите корректное количество секунд.');
process.exit(1);
}
let remainingTime = seconds;
const countdown = setInterval(() => {
if (remainingTime > 0) {
console.log(`Осталось ${remainingTime} секунд`);
remainingTime--;
} else {
console.log('Время вышло!');
clearInterval(countdown);
}
}, 1000);
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤1
• Как мы заработали 100 000 рублей за 3 месяца, запустив простой конвертер картинок в США
• Дело было вечером или Создаем веб-приложение за 5 часов
• Разработка архитектуры хранения данных для сайта на «Битрикс»
• Как не гундеть, а доработать веб-сервис самому без помощи разработчиков
• Трассировка OpenTelemetry в 200 строк кода
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Исторически сложилось так, что в Node.js отсутствовал интегрированный прогонщик тестов, что вынуждало разработчиков полагаться на сторонние фреймворки, такие как Jest или Mocha
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2
На «ванильном» JavaScript сейчас почти никто не пишет, но кроме мощных фреймворков есть и небольшие библиотеки с интересными возможностями. В наш список попали наиболее полезные из них, часто применяемые веб-разработчиками.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱1🌚1
Child Processes — это модуль в Node.js, который позволяет запускать дочерние процессы для выполнения команд в операционной системе. Это полезно для выполнения многозадачных операций, таких как запуск команд оболочки или параллельные вычисления.
ls
в терминале и вывода результата в консоль.const { exec } = require('child_process');
exec('ls', (error, stdout, stderr) => {
if (error) {
console.error(`Ошибка: ${error.message}`);
return;
}
if (stderr) {
console.error(`stderr: ${stderr}`);
return;
}
console.log(`Результат команды:\n${stdout}`);
});
🗣️ Child Processes позволяет запускать системные команды и выполнять параллельные операции вне основного потока Node.js.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
Одним из главных нововведений стало то, что Deno теперь практически полностью совместим с пакетами npm. Это значит, что разработчики могут легко интегрировать модули пакета в свои Deno-проекты.
Таким образом, прямо сейчас более 2 млн npm-модулей доступны для использования без необходимости перехода на Node.js.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣9👍2😁2❤1🦄1
Способность понимать Node по-прежнему остаётся важным навыком, если вы фронтэнд разработчик. Deno появился как ещё один способ запуска JavaScript вне браузера, но огромная экосистема инструментов и программного обеспечения Node, означают, что в ближайшее время он никуда не денется.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
Предположим, что мы сделали обновление, но
npm publish
выдаёт ошибку. Как исправить ошибку: "You cannot publish over the previously published versions"Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Vue.js – один из самых популярных фреймворков для фронтенд-разработки и один из самых простых в изучении. Рассказываем, на что нужно обратить внимание желающим освоить его с нуля новичкам.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👎6👍3❤2
Создайте приложение на Node.js, которое эмулирует систему регистрации и входа пользователей. Программа должна принимать два аргумента командной строки: "register" или "login" и имя пользователя. Если пользователь регистрируется, программа должна сохранить его в текстовый файл (
users.txt
). Если пользователь пытается войти в систему, программа должна проверить, зарегистрирован ли этот пользователь в файле, и вывести соответствующее сообщение.•
node app.js register Alice
— добавляет пользователя Alice в файл.•
node app.js login Alice
— проверяет, существует ли Alice в файле, и выводит сообщение об успешном входе или ошибке.Решение задачи
const fs = require('fs');
const action = process.argv[2];
const username = process.argv[3];
const filePath = 'users.txt';
if (!action || !username) {
console.log('Используйте: node app.js <register|login> <username>');
process.exit(1);
}
// Функция для регистрации пользователя
function registerUser(username) {
fs.appendFile(filePath, `${username}\n`, (err) => {
if (err) {
console.error('Ошибка регистрации:', err);
process.exit(1);
}
console.log(`Пользователь ${username} зарегистрирован.`);
});
}
// Функция для входа пользователя
function loginUser(username) {
fs.readFile(filePath, 'utf8', (err, data) => {
if (err) {
console.error('Ошибка чтения файла:', err);
process.exit(1);
}
const users = data.split('\n').map(user => user.trim());
if (users.includes(username)) {
console.log(`Пользователь ${username} успешно вошёл в систему.`);
} else {
console.log(`Пользователь ${username} не найден.`);
}
});
}
// Логика обработки команд
if (action === 'register') {
registerUser(username);
} else if (action === 'login') {
loginUser(username);
} else {
console.log('Неизвестное действие. Используйте "register" или "login".');
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁2❤1