В статье рассказывается о реализации ботов для игры "длинные нарды". Автор описывает, как строится архитектура сервера и модули, а также делится особенностями создания ИИ-игроков, которые управляются программой.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2
В Node.js события обрабатываются с помощью объекта
EventEmitter
. Этот объект позволяет объявлять события и реагировать на них с помощью подписок. Когда событие происходит, вызываются все функции, подписанные на него. Это важный механизм для асинхронной архитектуры.const EventEmitter = require('events');
const emitter = new EventEmitter();
emitter.on('event', () => {
console.log('Событие произошло!');
});
emitter.emit('event'); // "Событие произошло!"
🗣️ EventEmitter широко используется в Node.js для асинхронной обработки и реакции на различные события в системе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
Доводы, которые приведены в этой статье, заставят вас раз и навсегда отказаться от написания динамически типизированного кода JavaScript!
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿6🤔5👎2🫡1
Предлагаем руководство по использованию TypeScript для безопасной для типов сериализации и десериализации данных в формате JSON. Освоение этой стратегии позволит своевременно обнаруживать потенциальные ошибки во время разработки приложения.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍7❤2
Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой — JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
Создайте приложение на Node.js, которое принимает CSV-файл с данными пользователей в качестве аргумента командной строки, фильтрует записи по определённому возрастному диапазону и сохраняет результат в новый CSV-файл filtered_users.csv.
•
node app.js filter users.csv 18 30
— фильтрует пользователей в возрасте от 18 до 30 лет и сохраняет результат в filtered_users.csv.•
node app.js print users.csv 18 30
— выводит отфильтрованные данные в консоль.Решение задачи
const fs = require('fs');
const readline = require('readline');
async function filterCSV(file, minAge, maxAge) {
const rl = readline.createInterface({
input: fs.createReadStream(file),
crlfDelay: Infinity,
});
const result = [];
for await (const line of rl) {
const [name, age] = line.split(',');
if (age >= minAge && age <= maxAge) {
result.push(`${name},${age}`);
}
}
fs.writeFileSync('filtered_users.csv', result.join('\n'));
console.log('Результат сохранен в filtered_users.csv');
}
if (process.argv[2] === 'filter') {
const [file, minAge, maxAge] = process.argv.slice(3);
filterCSV(file, minAge, maxAge);
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
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