Каждый Frontend-разработчик знает, что такое объект Window. С самими объектом, вроде бы, все понятно. Но при детальном рассмотрении оказывается, что браузер никогда не отдает этот важнейший глобальный объект напрямую. В этой статье я предлагаю разобраться в спецификации HTML и в том, как именно ведет себя браузер в части глобального контекста.Начать стоит с того, что в документе может быть несколько глобальных объектов Window (например, iframe на странице). Более того, самих документов тоже мо…
Статья является продолжением первой части, в которой была обучена нейронная сеть для решения задачи соревнования Digit Recognizer на Kaggle. В предыдущей статье был использован трюк, который увеличил точность нейронной сети в контексте результатов соревнования (до 0.99 896), в результате чего позиция автора в лидерборде значительно выросла. В данной статье мы рассмотрим каким образом можно интегрировать и использовать обученную модель нейронной сети в систему для распознавания рукописных цифр.…
Приложения, созданные на платформе 1С:Предприятие, могут быть развернуты в трёхзвенной архитектуре (Клиент – Сервер приложений – СУБД). Клиентская часть приложения может работать, в частности, как веб-клиент, в браузере. Веб-клиент – это довольно сложный фреймворк на JavaScript, отвечающий за отображение пользовательского интерфейса и исполнение клиентского кода на встроенном языке. Одна из задач, которая стояла перед нами в ходе разработки веб-клиента – это корректная работа с различного рода…
Введение:В этой статье я расскажу о том, как создать игру "Крестики-Нолики" простыми способами, без необходимости писать код. Для этого мы будем использовать нейросеть ChatGPT3. Понимание игровой логики:Для начала разберемся с самой игрой "Крестики-Нолики". Цель игры - заполнить горизонтальный, вертикальный или диагональный ряд из трех символов, будь то крестики (X) или нолики (O). Игроки чередуются, чтобы ставить свои символы на свободные клетки на игровом поле. Игра заканчива…
Привет, Хабр! Меня зовут Александр Григоренко, я фронтенд-разработчик. В основном, занимаюсь разработкой приложений на React, но также постоянно экспериментирую с различными технологиями.В своей работе я часто создаю собственные или использую уже готовые UI-компоненты. Проблема с такими компонентами заключается в том, что они часто ограничены определённым фреймворком, и их реализация требует написания сложной нестандартизированной логики. В течение долгого времени для базовых UI-компонентов, т…
React как чистое представление в StorybookВ предыдущих статьях мы пришли к выводу, что для того, чтобы UI-код не превращался в легаси, нам нужно отделить представление от бизнес-логики и немного иначе, чем это делают Redux и Elm, так как оба подхода не позволяют сделать это полностью.В данной статье мы порассуждаем о том, как такое разделение сделать.React view как чистая функция состоянияReact изменил наш подход к пользовательскому интерфейсу — его философия основана на простых, но мощных кон…
Привет, Хабр! Меня зовут Андрей, я Frontend разработчик. О статьеПродолжаем погружаться в продвинутый TypeScript. В этой статье рассмотрим conditional types, посмотрим на реализацию с примерами, узнаем какую роль играют ключевые слова extends и infer. Перед прочтением данной статьи рекомендую ознакомиться с базовыми понятиями и возможностями языка, в этом вам поможет одна из моих прошлых статей: TypeScript и все что тебе нужно в разработкеСтатья предназначена для тех, кто хочет научиться увере…
Продолжение перевода статьи «Reimagine Atomic CSS» двухлетней давности одного из членов команды Vue core Anthony Fu, автора UnoCSS, в которой рассматривается уже сам UnoCSS. Часть первая.Введение в UnoCSSUnoCSS — мгновенный (instant) атомарный CSS‑движок с максимальной производительностью и гибкостью.Все началось с нескольких случайных экспериментов во время моих национальных праздников. С мыслью о том, что все делается по требованию (on‑demand), и гибкостью, которую я ожидаю как пользователь,…
Hello world! На днях я баловался с WebAssembly и получил довольно неожиданные результаты, которыми и хочу с вами поделиться в этой небольшой заметке. Хорошо, если вы знаете JS/Node.js и хотя бы слышали о WASM и Rust. Я использовал следующие инструменты: Chrome 119.0.6045.199 Node.js 20.9.0 Rust 1.74.0 VSCode 1.80.2 Начнем с создания Node.js-проекта: # основная директория mkdir js-wasm cd js-wasm # директория с JS-кодом mkdir js-code cd js-code # инициализируем Node.js-проект # это не обя…