Я продолжаю описывать собственное погружение в мир телеграм-ботов, начатое в предыдущей публикации. Тогда я создал простого бота на Node.js с тремя стандартными командами (/start, /help, /settings) с использованием библиотеки grammY, который мог работать в режимах long polling и webhook. В этот раз я разработал бота, который манипулирует данными в базе по шаблону CRUD + List (CRUDL) с помощью аргументов команд. Из-за своей простоты, граничащей с примитивностью, это решение не подходит для комме…
Освоить JavaScript – значит приблизиться к миру веб-разработки. Это перспективно: владение данным языком программирования – большой плюс, ведь с его помощью специалисты создают современные сайты, пишут расширения для браузеров и даже разрабатывают мобильные приложения. Спешим отметить: с легкостью освоить JS могут даже подростки 12 лет и старше, поэтому если у ребенка есть интерес к теме, то можно развивать его с ранних лет.Все чаще встречается мнение, согласно которому учить детей программиров…
Хочу рассказать про один из моих любимых Opensource проектов: Tauri. Это среда для создания десктопно-мобильных приложений на JavaScript, но быстрых и легковесных. С опциональными дополнениями на Rust, а через него и на всех других языках.Достоинства.Поддерживается Линь, Вынь и Дрюнь и всякое Ябло. EXEшник HelloWorld весит 1 мегабайт ( ну 5, если не ужиматься в угол как сирота в барском доме ). В памяти занимает на Win 11 200 Мб. (Из них >90% приходится на системные компоненты, расшаренные …
Поговорим про введение в TypeScript и то, как с помощью него мы можем сделать наше программирование и наш код на JavaScript более надежными и прогнозируемыми. Меня зовут Александр Чернов, я фронтенд-разработчик в Альфе, веду подкаст «ТИНОИД», обожаю плавание и влюблён в веб и фронтенд-разработку.Всё ли так хорошо в мире программирования на JavaScript? Представим, что у нас есть простая функция add, которая принимает два неких параметра и выполняет сложение или конкатенацию, если мы передаем стр…
Приветствую, Хабравчане!Написать статью меня побудил один момент на сайте дзен. Точнее отсутствие определенного функционала, о котором и пойдет речь ниже. Как могло такое произойти?Важное замечание. Цель статьи привлечь внимание общественности к данной проблеме, чтобы рейтинг статьи и её бурное обсуждение каким-то образом дошло до менеджеров дзена и они-таки завели тикет и взяли его в работу. Потому, что отсутствие данного функционала, просто непростительная недоработка. За гранью здравого смыс…
Современная разработка на JavaScript часто сталкивается с задачами асинхронной работы и обработки ошибок. Как правило, для этих целей используются конструкции try-catch и async-await. Однако они могут утяжелять код и усложнять его восприятие. Чтобы решить эту проблему, был предложен новый оператор безопасного присваивания ?=, который значительно упрощает обработку ошибок и улучшает читаемость кода. В этой статье мы рассмотрим, как работает этот оператор, его особенности и преимущества для разра…
В жизни бывают обстоятельства, которые требуют обязательного ежедневного выполнения одного действия — от утренней зарядки до приема лекарственных средств. Если пропустить зарядку или сделать ее дважды, это не критично. С лекарствами все сложнее: забыл выпить или выпил, но не помнишь? «Если это действительно важно, то отмечайте даты на упаковке, используйте таблетницу или заведите будильник на телефоне», — скажете вы. Да, это решение. Но у меня есть фитнес-браслет, который, как заявляется, сле…
В этой статье я расскажу об одном из стандартных API JavaScript, о котором, вы, возможно не слышали. Это AbortController. ❯ Что такое AbortController? AbortController — это глобальный класс в JS, который можно использовать для прерывания любых асинхронных операций. const controller = new AbortController() controller.signal controller.abort() После создания экземпляра контроллера мы получаем две вещи: Свойство signal — экземпляр AbortSignal. Это модульная часть, которую можно предоставить л…
Всем привет! Меня зовут Михаил Парфенов, я являюсь главным архитектором по информационной безопасности в DPA Analytics. Довольно часто встречаю утверждение о том, что настроенная Content Security Policy (CSP) – достаточное и надежное средство защиты frontend-приложений от большинства существующих угроз. Поговорим о задачах CSP и на практике проверим, защитит ли CSP от кражи данных с web-страницы js-сниффером.ОсновыContent Security Policy – механизм безопасности, позволяющий создателю web-прилож…