Node.JS [ru] | Серверный JavaScript
11.5K subscribers
92 photos
6 videos
25 files
3.16K 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
👩‍💻 Как я искал рекомендации аналитиков по покупке российских ценных бумаг в JSON формате

В статье рассказывается о создании системы для поиска недооценённых акций на российском рынке, используя данные аналитиков. Рассматривается, как собирать прогнозы для 89 акций с Московской биржи и анализировать их точность.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2😁1
👩‍💻 Как ускорить создание компонентов с помощью Plop-генератора или автоматизация рутинных задач в React

В статье рассказывается о крупной фронтенд-команде, которая работает с микросервисами и общей дизайн-системой. Несмотря на стандарты, возникали проблемы, и статья подробно раскрывает, как они были решены.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Введение в AI Selfie Background Remover с использованием TensorFlow.js для React-приложений

В статье рассматривается "React Selfie AI Background Remover" — компонент, использующий TensorFlow.js для удаления фона в браузере. Основные фишки: точная сегментация с MediaPipe, легкая интеграция в React и live demo.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
⚙️ Как я создавал онлайн игру «нарды». Сервер

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👩‍💻 Освоение безопасной для типов JSON-сериализации в TypeScript

Предлагаем руководство по использованию TypeScript для безопасной для типов сериализации и десериализации данных в формате JSON. Освоение этой стратегии позволит своевременно обнаруживать потенциальные ошибки во время разработки приложения.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
👩‍💻 Твой JavaScript должен быть проще: 10 приемов современного разработчика

Советы по написанию короткого, лаконичного и чистого кода на JavaScript

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🌟 Не увлекайся «современным ради современного»

Узнал о новой библиотеке и сразу хочешь внедрить её в проект? Но спустя неделю понимаешь, что она только усложнила код.

👉 Совет: всегда задавай себе вопрос: что конкретно улучшит этот инструмент? Если ответ нечёткий — не внедряй. Иногда старые проверенные технологии работают лучше, чем самые новые и модные решения.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥2
⭕️ Я хочу сыграть с тобой в одну игру: пилим «Крестики-нолики» на JavaScript

Хватит теории – пора практиковаться! Мы разберем создание полноценной браузерной игры, затрагивая ключевые концепции frontend-разработки. Идеально для новичков, жаждущих применить свои знания в реальном проекте.

Читать...
👩‍💻 Циклические импорты на фронтенде

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🎯 Выстрелил и забыл: 3 основные стратегии отправки сообщений в Kafka

Какой подход обеспечит вашему проекту идеальный баланс производительности и гарантии доставки: рискованная стратегия «Выстрелил и забыл» или продвинутая асинхронная отправка?

Читать...
👍1
👩‍💻 Задачка по NodeJS

Создайте приложение на Node.js, которое кэширует данные с ограничением по времени. Когда кэш истекает, данные должны автоматически обновляться из внешнего источника (например, из API) при следующем запросе.

➡️ Пример:

node app.js fetch — получает данные из кэша, а если кэш истек, то запрашивает данные заново и обновляет кэш.

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

const fs = require('fs');
const path = require('path');
const fetch = require('node-fetch');

const cacheFile = path.join(__dirname, 'cache.json');
const CACHE_TTL = 60 * 1000; // 1 минута

// Функция для обновления кэша
async function updateCache() {
const data = await fetch('
https://api.example.com/data').then(res => res.json());
const cacheData = { data, timestamp:
Date.now() };
fs.writeFileSync(cacheFile, JSON.stringify(cacheData));
return data;
}

// Функция для получения данных из кэша
async function fetchData() {
if (fs.existsSync(cacheFile)) {
const cache = JSON.parse(fs.readFileSync(cacheFile, 'utf8'));
const isCacheValid =
Date.now() - cache.timestamp < CACHE_TTL;

if (isCacheValid) {
console.log('Данные из кэша:',
cache.data);
return
cache.data;
}
}
console.log('Обновление кэша...');
return await updateCache();
}

// Проверка кэша
fetchData().then(data => console.log('Полученные данные:', data));
Please open Telegram to view this post
VIEW IN TELEGRAM
👎4👍21🔥1
👩‍💻 Как обнаружить изменение атрибутов веб-компонента

Сегодня мы рассмотрим, как обнаружить и реагировать на изменение атрибутов веб-компонента.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👀 Аптайм вахтер: мониторинг веб-сервисов с помощью Globalping и уведомлениями в Telegram

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ История одного компонента

В статье показывают эволюцию простого счётчика — от React до чистого JS без ререндера: годы экспериментов ради компонента, в котором всё прозрачно и управляется только кодом.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
➡️ Среда выполнения JavaScript простым языком: движок, Event Loop и очереди задач

В статье — разбор среды выполнения JavaScript: как она устроена, что происходит с кодом во время исполнения и почему это важно понимать даже тем, кто не пишет чистый JS.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
➡️ Опыт работы с Serverless-архитектурой для Telegram-бота на Vercel и Timeweb Cloud

Автор делится опытом запуска Telegram-бота в Serverless-архитектуре, сравнивая Vercel и Timeweb Cloud по цене, удобству и нюансам работы с OpenAI. Про стек, боль и лайфхаки.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Автовыведение типов в TypeScript: мощь дженериков и функций

Автор делится свежим открытием об автовывода типов в дженериках TypeScript — на реальном примере функции fetchFile. Даже спустя 7 лет язык продолжает раскрывать новые грани.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👎2👍1
⚙️ Что такое fs.promises в Node.js и как его использовать?

fs.promises — это API для работы с файловой системой с использованием промисов, что позволяет писать асинхронный код без коллбеков.

➡️ Пример:

const fs = require('fs').promises;

async function readFile() {
try {
const data = await fs.readFile('example.txt', 'utf8');
console.log('Содержимое файла:', data);
} catch (err) {
console.error('Ошибка чтения файла:', err.message);
}
}

readFile();


🗣️ В этом примере fs.promises.readFile используется для чтения файла асинхронно, делая код чище и проще для обработки ошибок через try-catch.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1