IT Kniga
Интернет-магазин компьютерной литературы

HTML, CSS, Javascript

Мемоизация в React: я почитал документацию вместо вас

JavaScript - habr.ru - Сб, 16/03/2024 - 10:15

В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за вас, постарался выделить самое важное, и дать ссылки для углубленного погружения.  

Так как мы будем рассматривать не самые базовые вещи, касающиеся React, то я не буду останавливаться на таких основах как хуки, состояние, свойства, чистые функции и чистые компоненты, ожидая, что вы ознакомитесь с ними за пределами статьи. А также все рассмотренное ниже относится в первую очередь к React 18. 

Читать далее
Категории: HTML, CSS, Javascript

Путь развития (Roadmap) Frontend разработчика

В этой статье вы узнаете про то как я вижу современную и актуальную карту развития frontend разработчика, я расскажу про основные технологии которые необходимы для старта, и как сделать свои первые шаги в frontend разработке.

Читать далее
Категории: HTML, CSS, Javascript

Путь развития (Roadmap) Frontend разработчика

JavaScript - habr.ru - Пт, 15/03/2024 - 14:30

В этой статье вы узнаете про то как я вижу современную и актуальную карту развития frontend разработчика, я расскажу про основные технологии которые необходимы для старта, и как сделать свои первые шаги в frontend разработке.

Читать далее
Категории: HTML, CSS, Javascript

Как мы создаём редакторы документов. Ядро и его роль в кроссплатформенной разработке

JavaScript - habr.ru - Чт, 14/03/2024 - 10:53

В МойОфис мы создаем ПО для корпоративного пользования, и одни из ключевых продуктов нашей линейки — редакторы документов «МойОфис Текст» и «МойОфис Таблица». Эти приложения представлены на всех популярных платформах, включая мобильные устройства. Они позволяют создавать, изменять, просматривать текстовые и табличные документы различных форматов, а также совместно работать над ними в веб-версии редакторов.

Сегодня мы расскажем об общем технологическом устройстве редакторов МойОфис, с акцентом на их центральный элемент: ядро, написанное на C++. Именно ядро обеспечивает основную функциональность приложений и даёт нам возможность эффективно унифицировать её для разных платформ.

О том, что представляет собой ядро наших редакторов, принципах его работы, преимуществах и специфике, читайте под катом.

Читать далее
Категории: HTML, CSS, Javascript

Интерфейс под один палец. Концепция ONE TOUCH

JavaScript - habr.ru - Ср, 13/03/2024 - 17:02

Сталкивались ли вы с проблемой, когда вам не хватает рук при использовании телефона? Например, у вас одна рука занята пакетами или испачкана в чипсах, а до кнопки "назад" не дотянуться.

72120
Категории: HTML, CSS, Javascript

Material for MkDocs 9.5.x — что нового в этой версии и полезные хаки при работе с документацией на нем

В декабре 23-го года Material for MkDocs обновился до версии 9.5, но из-за регрессов переходить на него многие не решились. Но сейчас версия уже достаточно стабильная и исправленная, поэтому я хотел бы поделиться с вами, что нового привнесла эта версия и какие лайфхаки я применил при переходе на эту версию при работе с документацией (и вам советую перейти также).

Читать далее
Категории: HTML, CSS, Javascript

Безопасность веб-приложений: анализ методов защиты от атак на уровне Backend

JavaScript - habr.ru - Ср, 13/03/2024 - 12:31

В современном мире, где цифровая трансформация становится неотъемлемой частью нашей повседневной жизни, веб-приложения занимают ведущее место, предоставляя доступ к огромному разнообразию услуг и информации. От онлайн-магазинов до банковских систем, от социальных сетей до систем управления данными - веб-приложения охватывают практически все аспекты нашего взаимодействия с цифровым миром.

Однако, с ростом функциональности и сложности веб-приложений, неизбежно возрастает и уровень угроз для их безопасности. Кибератаки становятся все более изощренными и масштабными, нацеленными на различные слои архитектуры приложений. Особенно уязвимым является уровень Backend, который обрабатывает и хранит критически важные данные, такие как данные пользователей, финансовая информация и другие конфиденциальные данные. Несанкционированный доступ к этим данным или их изменение могут привести к серьезным последствиям, как для пользователей, так и для организаций.

Целью данной работы является анализ и оценка методов защиты веб-приложений на уровне Backend от различных видов угроз и атак.

Читать далее
Категории: HTML, CSS, Javascript

WebRTC. Как установить p2p соединение между браузерами

JavaScript - habr.ru - Ср, 13/03/2024 - 07:00

WebRTC позволяет браузерам обмениваться информацией напрямую без сервера. Можно передавать видео, звук и данные. Установить WebRTC соединение можно разными способами. В статье описано как WebRTC соединение устанавливается между пользователями редактора схем dgrm.net.

Читать далее
Категории: HTML, CSS, Javascript

Web3 приложение Twitter на React.js + Solidity | часть 2

JavaScript - habr.ru - Втр, 12/03/2024 - 19:03

Hello, в первой части был подготовлен проект, подключены кошельки и написан backend на Solidity, значит пришло время писать frontend на React.

Проект далёк от продакшена и является простым примером для новичков, предназначенным для демонстрации взаимодействия с смарт‑контрактом через веб‑приложение.

Читать далее
Категории: HTML, CSS, Javascript

Выбор технологического стека для digital-продукта в 2024 году

JavaScript - habr.ru - Втр, 12/03/2024 - 14:55

Стек технологий для запуска нового продукта в компании обычно выбирается исходя из того, с чем команда работала до этого и сколько наработок уже имеется.

Однако если вы свободны от необходимости использования какого-либо наследия (набираете новую команду или ищете актуальные технологии для изучения), то эта статья поможет вам выбрать, что стоит использовать для запуска продукта или сервиса. 

Меня зовут Евгений Корнеев и я постараюсь дать разностороннюю оценку с точки зрения зрелости технологии, популярности, доступности специалистов и вакансий, а также того, для каких целей лучше применять конкретный стек.

Читать далее
Категории: HTML, CSS, Javascript

Как в Node.js контролировать потребление памяти при обработке сетевых запросов

JavaScript - habr.ru - Втр, 12/03/2024 - 13:19

Всем привет! Я Виктор Кугай, руководитель команды разработки спецпроектов в Тинькофф. Мы создаем геймификационные проекты, основанные на данных, чтобы познакомить пользователей с экосистемой компании и повысить узнаваемость бренда.

Расскажу, как с помощью Node.js Streams и механизма Back Pressure протокола TCP реализовать пакетную обработку сотен гигабайтов данных на машинах с жестким лимитом памяти.

Читать далее
Категории: HTML, CSS, Javascript

CSS и безопасность данных

Различные компоненты фронтенда традиционно являются вотчиной веб разработчиков и дизайнеров и они не всегда задумываются о безопасности контента. В этой статье я предлагаю поговорить о безопасности CSS.

Для начала вспомним, что такое кросссайтскриптинг (CSS).  XSS это тип атаки на веб-ресурсы, заключающийся во внедрении в выдаваемую сайтом страницу произвольного кода (который будет выполнен на компьютере пользователя при открытии им этой страницы) и взаимодействии этого кода с веб-сервером злоумышленника.

В течение нескольких лет современные браузеры, такие как Chrome или Firefox, пытались защитить пользователей веб-приложений от различных атак, в том числе XSS. Они делали это с помощью XSS-фильтров, которые во многих случаях позволяли им блокировать такие атаки. Однако эти фильтры оказывались все менее и менее эффективными, и браузеры, такие как Chrome, постепенно отключают их в поисках альтернативных методов защиты. Принцип работы XSS-фильтров довольно прост. Когда ваш веб-браузер отправляет запрос на веб-сайт, его встроенный фильтр межсайтовых сценариев проверяет, есть ли в запросе исполняемый JavaScript, например, блок <script> или HTML-элемент со встроенным обработчиком событий. Также проверяется, есть ли исполняемый JavaScript в ответе от сервера

Теоретически это должно хорошо работать, но на практике это легко обойти, и также нет защиты на стороне клиента от XSS-атак.

Давайте посмотрим, как можно украсть конфиденциальные данные с помощью каскадных таблиц стилей (CSS).

Читать далее
Категории: HTML, CSS, Javascript

Web3 приложение Twitter на React.js + Solidity | часть 1

JavaScript - habr.ru - Пнд, 11/03/2024 - 12:31

Hello, в этой статье постараюсь подробно показать процесс создания dApp приложения на примере Twitter. Проект написан на ReactJS и Solidity. Контракт развернут в частной сети с помощью truffle и ganache.

В первой части мы подготовим проект, напишем смарт-контракт и развернем его в частной сети, а также подключим кошельки в MetaMask.

Во второй части будет написано web-приложение для взаимодействия с контрактом.

Читать далее
Категории: HTML, CSS, Javascript

Модульность в JavaScript: CommonJS, AMD, ES Modules

JavaScript - habr.ru - Пнд, 11/03/2024 - 08:49

Привет, Хабр!

Начало истории в модульности в JavaScript положил хаос: глобальные переменные, конфликты имен и сложности с зависимостями. Со временем сообщество предложило несколько подходов для организации модулей, начиная от CommonJS, которое легло в основу Node.js, до AMD, предпочтительного для асинхронной загрузки кода в браузерах. И приближаясь к настоящему времени появился ES Modules стандартизированный и встроенный в язык механизма модулей, который стал частью ECMAScript в 2015 году.

В этой статье рассмотрим кратко про CommonJS, AMD, и наконец - как появился ES Modules.

Читать далее
Категории: HTML, CSS, Javascript

Как сверстать письмо, чтобы оно дошло до получателя таким, как задумано

JavaScript - habr.ru - Пнд, 11/03/2024 - 07:29

В статье расскажу и покажу, как сверстать письмо, чтобы оно наверняка правильно отображалось во всех почтовых клиентах — особенно в Outlook, который до сих пор возглавляет подборки по популярности в РФ.

В конце — пример целого письма в HTML.

Читать далее
Категории: HTML, CSS, Javascript

Сборка мусора в V8

JavaScript - habr.ru - Пнд, 11/03/2024 - 06:00

В этой статье мы детально разберем процесс сборки мусора движком V8. Познакомимся с понятиями поколений, Minor и Major Garbage Collection, посмотрим, как аллоцируются, трассируются и маркируются объекты в памяти. Что происходит с пустыми областями после очистки, и как выполняется сборка мусора в фоновом режиме. 

Читать далее
Категории: HTML, CSS, Javascript

GitHub Copilot ➜ OpenAI API прокси. Serverless

JavaScript - habr.ru - Пнд, 11/03/2024 - 02:43
Демо

Демо здесь.


Зачем
GitHub Copilot доступен бесплатно для подтверждённых учащихся, преподавателей и мейнтейнеров популярных проектов с открытым исходным кодом.

Даже если вы не подходите под указанные выше критерии, стоимость платной подписки
(Individual) более доступна, чем аналогичное предложение от OpenAI.
Она стоит всего 10 долларов и при этом обеспечивает доступ к GPT-4.


Если вышеперечисленные варианты вам не подходят — попробуйте полностью бесплатную альтернативу: openai-gemini.
Для чего

GitHub Copilot чат доступен исключительно в избранных IDE.


Проект openai-github-copilot позволяет использовать его с намного более широким спектром инструментов: предоставляется общий API, совместимый с OpenAI, который можно развернуть бесплатно.
(Однако подписка на GitHub Copilot всё так же требуется.)

Читать дальше →
Категории: HTML, CSS, Javascript

Необычный RxJS

JavaScript - habr.ru - Вс, 10/03/2024 - 14:52

Всем привет! А вы знали, что RxJS содержит в себе более 100 операторов? Но если ваш проект использует эту библиотеку - скорее всего вы с трудом насчитаете у себя больше пары десятков. Интересная ситуация, да? Не знаю почему так получается, но сегодня я хочу поделиться реальными примерами использования “редких” операторов. Приступаем!

Читать далее
Категории: HTML, CSS, Javascript

Дизайн-разбор ссылок в вёрстке

Привет! Это первая статья из серии разборов элементов веб-вёрстки для дизайнеров интерфейсов (и немного аналитиков). Разберём атрибуты разных тегов, свойства, которые можно к ним применить, поведение в разных обстоятельствах. А главное – как они влияют на то, что видит пользователь на экране (и слышит), и какие неочевидные моменты можно продумать в дизайне заранее.

Начнём со ссылок, которые обозначаются в HTML тегом <a></a>.

Читать далее
Категории: HTML, CSS, Javascript

Где изучать Javascript в 2024. Бесплатные курсы, книги и ресурсы

JavaScript - habr.ru - Сб, 09/03/2024 - 20:21

Изучение JavaScript в 2024 году по открытым ресурсов имеет несколько преимуществ:

1. Востребованность: JavaScript остается самым популярным языков программирования в мире. Знание JavaScript открывает двери к множеству возможностей в IT-индустрии.

2. Бесплатный доступ: Благодаря бесплатным онлайн-курсам, вы можете изучать JavaScript без необходимости тратить деньги на платные обучающие материалы.

3. Актуальные материалы: Многие бесплатные курсы по JavaScript постоянно обновляются и содержат актуальную информацию о новых технологиях и подходах к разработке.

Почему не стоит покупать курсы и тратить деньги:

1. Доступность ресурсов: В интернете существует огромное количество бесплатных ресурсов, которые позволяют изучать JavaScript на высоком уровне. Покупка курсов не всегда является необходимой.

2. Качество бесплатных курсов: Некоторые бесплатные курсы могут предоставлять высококачественное обучение, сопоставимое с платными аналогами.

3. Мотивация и самодисциплина: Самое важное при изучении языка программирования – это ваша мотивация и самодисциплина. При достаточной мотивации и усердной работе можно достичь успеха в изучении JavaScript, не тратя деньги на покупку курсов.

Таким образом, изучение JavaScript по бесплатным курсам в 2024 году имеет множество преимуществ, особенно при наличии достаточной мотивации и самодисциплины.

Список ресурсов для бесплатного изучения JS.

Читать далее
Категории: HTML, CSS, Javascript

Большая распродажа компьютерной литературы

Полный список здесь

RSS-материал