Хочу рассказать про один из моих любимых 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-прилож…
ВведениеДанную заметку можно рассматривать как приложение к официальной документации. С одной стороны я решил, что стоит развернуть примеры из документации, а с другой показать роль never в выражениях типов. Последнее в документации отражено между делом.Предложенная структура и содержимое заметки могут быть интересны как начинающим, так и опытным специалистам.ДокументацияВ документации never в основном описан в следующих разделах:В разделе о сужении типовВ разделе о функцияхНесмотря на то, что …
Данная статья является переводомNode.js быстро стал стандартом для создания веб-приложений и системного ПО благодаря возможности использовать JavaScript на серверной стороне. Популярные фреймворки, такие как Express, и инструменты вроде Webpack способствуют его широкому распространению. Несмотря на существование конкурентов, таких как Deno и Bun, Node остается ведущей платформой для серверной разработки на JavaScript.Мультипарадигмальная природа JavaScript позволяет использовать различные стили…