Backend-разработчик (Junior)
Junior Node.JS developer
Junior Backend Разработчик
Junior front-end developer
Backend (NodeJS) или fullstack разработчик в студию
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡7❤5🔥2🤬2🤯1
Создайте приложение на Node.js, которое принимает путь к директории, находит все файлы внутри этой директории и сортирует их по дате создания. Программа должна выводить отсортированный список файлов и сохранять его в файл
sorted_files.json
.•
node app.js sort /path/to/folder
— выводит отсортированные файлы в консоль и сохраняет в файл sorted_files.json
.Решение задачи
const fs = require('fs');
const path = require('path');
function getFilesSortedByDate(directory) {
const files = fs.readdirSync(directory);
const sortedFiles =files.map (file => {
const filePath = path.join(directory, file);
return { file, time: fs.statSync(filePath).mtime.getTime() };
}).sort((a, b) => a.time - b.time);
fs.writeFileSync('sorted_files.json', JSON.stringify(sortedFiles.map (f => f.file), null, 2));
console.log('Отсортированные файлы:',sortedFiles.map (f => f.file));
}
if (process.argv.length !== 3) {
console.log('Используйте: node app.js sort <путь к директории>');
} else {
getFilesSortedByDate(process.argv[2]);
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👎1
Junior-разработчик
Веб-разработчик React + Node.js + TypeScript (middle level, full stack)
Frontend/Fullstack JavaScript разработчик
Frontend-разработчик (React, Junior/Middle)
Full-stack разработчик Node.js / React
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡8❤3❤🔥1
Советы по написанию короткого, лаконичного и чистого кода на JavaScript
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤1🔥1
Создайте приложение на Node.js, которое принимает URL, отправляет запрос к этому URL, и сохраняет заголовки ответа в файл
headers.json
. Программа должна также уметь выводить заголовки в консоль.•
node app.js fetch https://example.com
— выводит заголовки в консоль и сохраняет их в файл headers.json
.Решение задачи
const https = require('https');
const fs = require('fs');
function fetchHeaders(url) {
https.get(url, (res) => {
const headers = JSON.stringify(res.headers, null, 2);
console.log(headers);
fs.writeFileSync('headers.json', headers);
}).on('error', (err) => console.error('Ошибка:', err));
}
// Использование
const url = process.argv[2];
if (url) fetchHeaders(url);
else console.log('Укажите URL.');
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👎2
В серверных приложениях на Node.js правильное управление ошибками является критически важным для обеспечения стабильности и безопасности. Ошибки могут возникать в асинхронных операциях, таких как работа с базами данных или сторонними API.
const express = require('express');
const app = express();
app.get('/', async (req, res, next) => {
try {
const result = await someAsyncOperation();
res.send(result);
} catch (err) {
next(err);
}
});
app.use((err, req, res, next) => {
console.error('Ошибка:', err.message);
res.status(500).send('Ошибка сервера');
});
app.listen(3000, () => {
console.log('Сервер запущен');
});
🗣️ В серверных приложениях важно использовать глобальные обработчики ошибок и middleware, чтобы не допустить краха сервера при возникновении исключений в асинхронных запросах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🤔1
Ведущий разработчик Golang, NodeJS
Senior BackEnd Developer (Node.JS)
Senior Fullstack NodeJS Developer
NodeJS Middle+/Senior Developer
Senior Fullstack Developer (nodejs/react/typescript)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
❌⭕️ Я хочу сыграть с тобой в одну игру: пилим «Крестики-нолики» на JavaScript
Хватит теории – пора практиковаться! Мы разберем создание полноценной браузерной игры, затрагивая ключевые концепции frontend-разработки. Идеально для новичков, жаждущих применить свои знания в реальном проекте.
Читать...
Хватит теории – пора практиковаться! Мы разберем создание полноценной браузерной игры, затрагивая ключевые концепции frontend-разработки. Идеально для новичков, жаждущих применить свои знания в реальном проекте.
Читать...
Tech Lead
Tech Lead (TypeScript+React+Node.js) в продуктовую компанию
Tech Lead (Node.js)
Tech Lead developer GameDev (node.js/Js)
Tech Lead (PHP/Laravel + Vue.js)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2🤡2
В статье рассматриваются проблемы, которые создают рекурсивные зависимости на фронте. Обсуждаются способы их обнаружения и решения, ведь часто разработчики даже не знают, что в проекте есть циклические зависимости.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
В мире, где всё меняется быстрее, чем ты успеваешь обновлять резюме, держаться за одну карьерную траекторию — всё равно что пытаться угнаться за горизонтом. Умение перестраиваться, пробовать новое и брать на себя задачи, которые немного пугают, — вот что реально важно. И это не про «выйди из зоны комфорта», а про осознанный выбор расти и не цепляться за привычное.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Backend разработчик NodeJS
Senior Node.js, React.js Developer
Backend Developer (Node.js), Billing Team
Senior Node.js, React.js Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡3👏1
🎯 Выстрелил и забыл: 3 основные стратегии отправки сообщений в Kafka
Какой подход обеспечит вашему проекту идеальный баланс производительности и гарантии доставки: рискованная стратегия «Выстрелил и забыл» или продвинутая асинхронная отправка?
Читать...
Какой подход обеспечит вашему проекту идеальный баланс производительности и гарантии доставки: рискованная стратегия «Выстрелил и забыл» или продвинутая асинхронная отправка?
Читать...
👍1
Создайте приложение на 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 );
returncache.data ;
}
}
console.log('Обновление кэша...');
return await updateCache();
}
// Проверка кэша
fetchData().then(data => console.log('Полученные данные:', data));
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤1
• Быстрее пули: как найти счастье с PostgreSQL
• Куда движется Laravel? Обзор интервью с Taylor Otwell
• Nexus-IoC — хорошо знакомый незнакомец в мире TypeScript и DI
• Как сделать React Server Components в Electron с помощью Next.js и без открытых портов
• 10 не самых очевидных причин, чтобы уволиться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Сегодня мы рассмотрим, как обнаружить и реагировать на изменение атрибутов веб-компонента.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Создайте приложение на Node.js, которое считывает большой текстовый файл построчно и анализирует количество слов в каждой строке. Приложение должно использовать потоковое чтение (streams), чтобы эффективно обрабатывать большие файлы, не загружая их целиком в память.
•
node app.js analyze filename.txt
— считывает файл filename.txt построчно, подсчитывает слова в каждой строке и выводит их общее количество для каждой строки в консоль.Решение задачи
const fs = require('fs');
const readline = require('readline');
const path = require('path');
function analyzeFile(filePath) {
const lineReader = readline.createInterface({
input: fs.createReadStream(filePath),
crlfDelay: Infinity
});
lineReader.on('line', (line) => {
const wordCount = line.trim().split(/\s+/).filter(Boolean).length;
console.log(`Строка: "${line}" - Количество слов: ${wordCount}`);
});
lineReader.on('close', () => {
console.log('Анализ файла завершён.');
});
}
const filePath = process.argv[2];
if (!filePath) {
console.error('Укажите путь к файлу для анализа.');
process.exit(1);
}
const fullPath = path.resolve(filePath);
analyzeFile(fullPath);
Please open Telegram to view this post
VIEW IN TELEGRAM
Node.js разработчик Junior+
Junior JavaScript разработчик
Junior Backend - разработчик Node.JS
Junior Node.js Engineer
Please open Telegram to view this post
VIEW IN TELEGRAM