Node.JS [ru] | Серверный JavaScript
11.4K subscribers
92 photos
6 videos
25 files
3.17K links
Все о разработке backend части на JavaScript (Node JS).
А так же: Express JS, Next JS, Nest, Socket.IO

Канал на бирже - https://telega.in/c/we_use_js

По вопросам рекламы или разработки: @g_abashkin

РКН: https://vk.cc/cJPGOP
Download Telegram
⚙️ Как создать сетевой API с помощью Express.js, Bun и MongoDB

С появлением Bun - среды выполнения JavaScript, заменившей Node.js, - создавать высокопроизводительные API стало гораздо проще. Предлагаем пошаговое руководство по разработке сетевого API с помощью Express.js, MongoDB и Bun.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 5 популярных баз данных для веб-приложений

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по NodeJS

Калькулятор light. Получить 2 аргумента, перемножить их и вывести результат в консоль:

nodejs script.js 2 3
Result: 6

Решение задачи ⬇️

// Получение аргументов командной строки
const args = process.argv.slice(2);

// Проверка на наличие двух аргументов
if (args.length !== 2) {
console.error('Please provide exactly two arguments.');
process.exit(1);
}

// Преобразование аргументов в числа
const num1 = parseFloat(args[0]);
const num2 = parseFloat(args[1]);

// Проверка на корректность числовых значений
if (isNaN(num1) || isNaN(num2)) {
console.error('Both arguments must be valid numbers.');
process.exit(1);
}

// Перемножение чисел
const result = num1 * num2;

// Вывод результата в консоль
console.log(`Result: ${result}`);
Please open Telegram to view this post
VIEW IN TELEGRAM
События на стороне сервера: к чему должен быть готов разработчик

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
💬 Создание базовой чат-системы с использованием node.js и socket.io

Пошаговое руководство поможет создать простейшее чат-приложение с помощью серверной платформы node.js и библиотеки socket.io. Чат-бот сможет отвечать на заданные вопросы и послужит для заказа билетов, еды и прочих продуктов или услуг.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Механизм повторных попыток в Spring Boot: Retryable и Recover

Реализуем обработку временных сбоев в Spring Boot, рассмотрим аннотации для соответственных поведений. Проверим механизм в действии, отправив HTTP-запрос.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как при помощи JavaScript определить, включен ли Caps Lock

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по NodeJS

Advanced калькулятор: Получите 3 аргумента: 1 число, мат. операцию и 2 число. Выполните операцию и выведите результат в консоль.

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

nodejs script.js 2 "*" 3
Result: 6

nodejs script.js 2 "-" 3
Result: -1

nodejs script.js 2 "+" 3
Result: 5

nodejs script.js 2 "/" 3
Result: 0.6666666


Решение задачи ⬇️

// Получение аргументов командной строки
const args = process.argv.slice(2);

// Проверка количества аргументов
if (args.length !== 3) {
console.log("Usage: node script.js <number1> <operation> <number2>");
process.exit(1);
}

// Парсинг аргументов
const num1 = parseFloat(args[0]);
const operation = args[1];
const num2 = parseFloat(args[2]);

// Проверка на корректность чисел
if (isNaN(num1) || isNaN(num2)) {
console.log("Both arguments must be valid numbers.");
process.exit(1);
}

// Выполнение математической операции
let result;
switch (operation) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
result = num1 / num2;
break;
default:
console.log("Invalid operation. Use one of +, -, *, /");
process.exit(1);
}

// Вывод результата
console.log(`Result: ${result}`);
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Асинхронные итераторы в JavaScript

В дополнение к таким API, как Promise.finally, ECMAScript 2018 принес нам еще один способ работы с итераторами. Это асинхронные итераторы.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Как работает Supabase  —  альтернатива облачной платформе Firebase

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Самый «скользкий» механизм в Redux – useSelector

Redux вроде как изучили вдоль и поперек, но от этого он не стал идеальным. В данной статье мы детально разберем один из самых неприятных механизмов в Redux, которым многие стреляют себе в ногу – useSelector.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Безопасность Node.js в продакшене: экспертные рекомендации для разработчиков

Подробно разберем передовые методы обеспечения безопасности, дадим идеи для их реализации. Попробуем выстроить многоуровневую линию обороны.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👀 Разделение состояния между окнами без сервера

Давайте создадим проект, в котором разные окна одного приложения будут реагировать друг на друга. Для этого у них будет разделяемое состояние.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по NodeJS

Вывести в консоль букву Y нарисованную звёздочками. Размер 5Х5 символов:

*   *
* *
*
*
*


Решение задачи ⬇️

function drawY(size) {
let output = '';
for (let i = 0; i < size; i++) {
for (let j = 0; j < size; j++) {
if ((i < size / 2 && (i === j || j === size - 1 - i)) || (i >= size / 2 && j === Math.floor(size / 2))) {
output += '*';
} else {
output += ' ';
}
}
output += '\n';
}
console.log(output);
}

drawY(5);
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
👩‍💻 Как занять первое место в поисковой выдаче: добавляем SSR в Vue 3 + Vite приложение

При разработке на реактивных фреймворках многие забывают о том, что итоговое приложение – это что-то ближе к SPA, а не классический сайт как «на Wordpress». И когда дело доходит до SEO-продвижения, многие хватаются за голову, потому что поисковые системы плохо работают с такими ресурсами. Поэтому давайте сегодня познакомимся с технологией SSR, которая решит данную проблему.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔞 Пишем Telegram-бота для фильтрации нецензурной лексики в чате

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
💻 PostgreSQL или MySQL: что лучше подойдет для вашего проекта

PostgreSQL и MySQL – самые популярные реляционные СУБД. Обе обеспечивают надежное хранение и эффективное извлечение данных, и потому сделать выбор между ними не так-то просто. В этой статье мы углубимся в сравнение PostgreSQL и MySQL: рассмотрим их особенности, основные отличия, функциональность и производительность, a также обсудим типичные сценарии использования, чтобы определить, какая из них лучше подходит для конкретного проекта.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как установить Node.js в Ubuntu

В этой статье я покажу вам, как установить последнюю LTS-версию Node в операционной системе Ubuntu.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM