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
👩‍💻 Твой 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
🤔 Почему я исправляю баги бесплатно и как это изменило мою карьеру

Покажу, как участие в open source началось с фикса чужой опечатки, привело в core команду крупной библиотеки и почему это до сих пор один из лучших способов расти как разработчик.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍1
🎮 Делаешь pet-проект? Ограничь его правилами

Pet-проекты часто превращаются в бесконечные «песочницы», которые никогда не заканчиваются.

👉 Совет: перед стартом задай себе рамки: цель, ограничение по времени, минимум фич. Работай над проектом как над продуктом. Тогда это будет и полезно, и завершено.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥5
⚙️ Как я создал мини-реддит на базе Telegram

Автор с нуля создаёт Reddit-подобное сообщество в Telegram, несмотря на нулевой опыт с ботами. Много граблей, но ещё больше фана и кода

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
⚙️ ReCAPTCHA Enterprise: подробный разбор способы распознавания и варианты обхода, какие решатели капчи существуют

Автор разбирает, как работает продвинутая reCAPTCHA Enterprise, зачем она нужна сайтам и почему автоматизаторам она как кость в горле

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Pocupochki: когда лень писать список покупок, но есть 2 часа и доступ к Gemini

Рассказываю, как с помощью Google Stitch за 30 секунд получил готовый дизайн приложения, а потом с Gemini за пару часов превратил его в работающий сервис с голосовым вводом

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