Web-разработка

Все что касается web-разработки: Front end, Back end, Full stack; HTML, CSS, JavaScript, фреймворки, технологии, безопасность и многое другое!

JavaScript

Цикл For…of в JavaScript

В JavaScript много операторов цикла: оператор whileоператор do...whileоператор forоператор for...inоператор for...of Их основная функция: повторять действия до тех пор, пока не будет выполнено определенное условие. В этой статье мы узнаем, как работает...
Основы синтаксиса PHP

Основы синтаксиса PHP

Язык PHP предельно прост и подойдет даже тем, кто только постигает науку программирования. В его синтаксисе легко разобраться, однако нужно учитывать некоторые нюансы. Рассмотрим основы синтаксиса PHP.
Как посещать сайты, не заходя в браузер

Как посещать сайты, не заходя в браузер

Узнайте, как взаимодействовать с сайтом без браузера, используя "безголовый" Chrome, простой JavaScript и контейнеры Docker.
React

3 простых шага для написания сложных компонентов

Давайте углубимся в мир чистого React-кода со сложными компонентами. После реализации своего первого сложного компонента в React я стал буквально зависим от этого шаблона. Как...
4 недооцененных API браузера

4 недооцененных API браузера

Познакомимся с 4 полезными API браузера, которые лучше всегда держать под рукой : Battery API, IndexedDB API, Clipboard API и Page Visibility API.
Раскрываем силу JavaScript: сокращение размера пакета NPM на 99%

Раскрываем силу JavaScript: сокращение размера пакета NPM на 99%

Ищете пути повышения производительности приложения? Ознакомьтесь со способами значительного улучшения метрик в Lighthouse и FCP в проектах с использованием пакета дизайн-системы.
Progressive Web Apps

Станут ли прогрессивные веб-приложения заменой нативным?

Когда Стив Джобс представил самый первый iPhone в 2007 году, он также высказал идею о том, что разработчики смогут создавать приложения для iPhone лишь...
10 самых серьезных ошибок в UX/UI-дизайне

10 самых серьезных ошибок в UX/UI-дизайне

Плохо продуманные интерфейсы сильно усложняют нашу жизнь. Если вы отвечаете за разработку интерфейса, старайтесь учитывать эти 10 самых вредных для пользовательского опыта ошибок.
Управление состоянием: Jotai вместо Redux

Управление состоянием: Jotai вместо Redux

Самая утомительное при реализации Redux  —  это написание того объёма шаблонного кода, который нужен для обработки потока данных между компонентами и хранилищем Redux. Сам...
CSS

Решение проблемы с CSS :hover

:hover — псевдокласс, определяющий стиль элемента при наведении на него указателя. Проблемы с псевдоклассом :hover начались еще с тех пор, как на сенсорных устройствах был установлен первый браузер....
Software Development

Новый взгляд на старые истины: принцип «Не повторяйся!» (DRY)

Первый принцип, с которым вы знакомитесь, начиная свой путь в мир разработок ПО и записывая первые строки кода, — это постулат DRY (“Не повторяйся”). А как...
Новые API браузера, необходимые каждому веб-разработчику

Новые API браузера, необходимые каждому веб-разработчику

Современные API браузера повышают производительность разработчиков и даже способны заменить популярные библиотеки для фронтенд-компонентов. Используйте их для создания удобных веб-приложений.
Непрерывная интеграция и развёртывание ПО: лучшие практики

Непрерывная интеграция и развёртывание ПО: лучшие практики

Непрерывная интеграция и развёртывание (CI/CD)  —  это гибкая методология, используемая многими организациями. Она помогает им эффективно и безопасно поставлять своё программное обеспечение.
JavaScript

Состояние микрофронтендов

Одна из наиболее противоречивых тем во фронтенд-разработке — это микрофронтенды. Заслуживают ли они внимания? Стоит ли на самом деле разделять приложение? Нужны ли они вам уже...
Мониторинг сайта: просто, но эффективно

Мониторинг сайта: просто, но эффективно

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

Как веб-серверы обрабатывают запросы

Этот туториал - маст-хэв для инженера-программиста. В нем раскрываются такие понятия, как природа сетевого сокета, этапы пути сетевого запроса, выполнение трехстороннего TCP-квитирования, системные вызовы. Овладение подобными знаниями - лучшая подготовка к непредвиденным ситуациям.
Design

Восемь быстрых советов по улучшению пользовательского интерфейса

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

3 способа улучшить управление состоянием в React

В React разработчики могут совершено свободно управлять состоянием внутри компонента. Существуют два типа компонентов: классовые и функциональные, которые были представлены в React v16. В классовых...
JavaScript

Javascript и функциональное программирование. Часть 2: полноправные функции

Предыдущие части: Часть 1 Добро пожаловать в параллельный мир Вам необходимо кое-что узнать прежде, чем мы начнем... Если вы когда-либо программировали в JS, вы, вероятно, раньше использовали...
Web

Как оптимизация изображений снизила “вес” главной страницы на моем веб-сайте на 62%

Изображения являются чуть ли не самым распространенным типом контента, что встречается в Интернете. Говорят, что одно изображение может заменить тысячу слов. Но, если вы...
GraphQL

Миграция REST API на GraphQL

GraphQL появился относительно недавно, а значит, разработчики API не уверены, писать следующий API на GraphQL или нет. Очевидно, что REST API хорошо знаком программистам...
JavaScript

Почему Lodash по-прежнему полезен?

С выпуском ES6 и более поздними версиями JavaScript появилось множество методов, расширяющих функциональность языка. Например, появились новые методы массивов и строк, а также такие...
JavaScript

Создание тестового фреймворка JavaScript

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

5 простых советов для улучшенного написания стрелочных функций

В ECMAScript2015 была добавлена стрелочная функция. Она более лаконична, чем традиционная функция, и связывает this лексически. Правильное использование стрелочных функций может улучшить качество кода. Однако...
JavaScript

JavaScript Style Guide от Google. 13 примечательных рекомендаций

Для тех, кто ещё не в курсе, Google выпускает руководство, которое излагает лучшие (по мнению Google) стилистические практики для написания чистого и понятного кода...
Rust

Как спроектировать REST API для выполнения системных команд с помощью Actix Rust

Привет! Сегодня я расскажу, как создать REST API для выполнения системных команд на вашем сервере с помощью метода, которым пользуются известные компании.  Представьте, что вы...
Как создать планировщик по управлению недвижимостью с помощью Bryntum и ванильного JavaScript

Как создать планировщик по управлению недвижимостью с помощью Bryntum и ванильного JavaScript

Разработка приложения-планировщика - интересное занятие. Мало кто знает, что такой продукт можно создать и с помощью ванильного JavaScript. Сегодня посмотрим, как сконструировать планировщик по управлению недвижимостью.
Как преобразовать функции JavaScript в генераторы, эффективно использующие память

Как преобразовать функции JavaScript в генераторы, эффективно использующие память

Ключевое слово yield используется в JavaScript для приостановки выполнения функций. При повторном вызове функции ее выполнение продолжается с последнего оператора yield. Функция, возвращающая (yields) значения,...
Micro Frontends

Связь между микро-фронтендами

Слабая связанность Слабая связанность - самый важный аспект реализации любого шаблона связи в микро-фронтендах. Прямой связи необходимо избегать, начиная с бэкендов микросервисов. Однако довольно часто...
Frontend Masters: принципы SOLID в React/React Native

Frontend Masters: принципы SOLID в React/React Native

Принципы SOLID кажутся простыми, но их важность в программировании трудно переоценить. Разберем каждый из принципов SOLID на конкретных примерах и покажем их практическую ценность.
Что такое React.memo и как он работает

Что такое React.memo и как он работает

Хотите повысить производительность React-приложений? Воспользуйтесь вызовом компонента React.memo. В результате мемоизации React будет использовать результат последнего рендера, избегая повторного рендеринга.
Создание компонентной дизайн-системы UI

Создание компонентной дизайн-системы UI

Как сделать возможным одновременное сотрудничество дизайнеров и разработчиков и какие есть альтернативы? Ответ на примере крупнейших игроков Web-индустрии.
Angular

Повесть об однонаправленном потоке данных в Angular

У Angular есть свои фишки и причуды. В то время как React реализует модель однонаправленного потока данных по умолчанию, Angular с самого начала точно...
TypeScript

Как создать простую браузерную игру с помощью Phaser 3 и TypeScript

Большую часть своего времени я занимаюсь backend-разработкой, поэтому я не могу похвастаться большим опытом во frontend. Какое-то время назад у меня возникло желание создать...
Как ускорить full-stack разработку, не создавая API

Как ускорить full-stack разработку, не создавая API

Разберемся, как повысить продуктивность за счет автоматизации всех взаимодействий между клиентом и сервером. Большая история проб, ошибок и поисков правильного решения в одной маленькой статье.
Проектирование базы кода API GraphQL в Node.js

Проектирование базы кода API GraphQL в Node.js

GraphQL завоевывает все большую популярность. Спроектируем API на основе этой технологии и запустим сервер, чтобы наглядно разобраться в реализации механизмов модульности и аутентификации.
Лучшие библиотеки и пакеты Next.js 2024 года для любых потребностей

Лучшие библиотеки и пакеты Next.js 2024 года для любых потребностей

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

5 ведущих шаблонов проектирования распределенных систем

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

Оператор Spread и деструктуризация в JavaScript: практическое руководство

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

Введение в веб-скрэпинг с помощью Node.js

Автоматически или вручную? Раньше, когда у меня возникало желание поупражняться в создании веб-сайтов, я просто заходил на веб-страницу, открывал консоль и пытался извлечь нужный мне...
Ember

Ember.js или Vue.js: какой фреймворк выбрать?

Изначально JavaScript создавался для работы с веб-приложениями, однако теперь он используется для создания мобильных приложений. Фреймворки на основе JavaScript популярны среди разработчиков, поскольку они...
Наскучил JavaScript? Достойная альтернатива - Mint

Наскучил JavaScript? Достойная альтернатива - Mint

Недавно я создал небольшое веб-приложение с помощью Mint. Для меня это определенно стало освежающим опытом, который я и вам рекомендую. Mint является относительно малоизвестным...
Как реализовать функциональность перетаскивания с помощью React Beautiful Dnd

Как реализовать функциональность перетаскивания с помощью React Beautiful Dnd

Овладейте искусством создания бесшовных и визуально привлекательных взаимодействий с перетаскиванием в React-приложениях с помощью библиотеки React Beautiful Dnd.
Знакомство с библиотекой Styled Components в React

Знакомство с библиотекой Styled Components в React

Узнаем особенности и преимущества библиотеки Styled Components, а также научимся создавать стилизованный компонент, глобальную тему и передавать свойства.
JavaScript

Полезные JavaScript-модули, на которые стоит обратить внимание

Эта статья представляет собой подборку наиболее полезных модулей и утилит для серверной и клиентской разработки на NodeJS и JavaScript, которые использует в своей работе...
Web Development

Удаленные вызовы процедур с запросом-ответом

За последние два года я много работал с удаленными вызовами процедур (RPC), применяя этот подход для взаимодействия между нашими микро-сервисами. В подобных ситуациях RPC...
Design Patterns

Смертоносные интерфейсы

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

Как разделить монолитное приложение на микрофронтенды

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

Советы по созданию правильных модальных окон

9 простых правил, которые помогут вам создать более удачный дизайн модальных окон Модальное окно  —  это такое окошко, которое появляется поверх родительского экрана. Его называют...
7 каверзных вопросов для проверки знаний о JavaScript

7 каверзных вопросов для проверки знаний о JavaScript

Понимание тонкостей JavaScript позволяет избегать его подводных камней, создавая более надежный и предсказуемый код. Правильно ответив на эти 7 вопросов, вы подтвердите свое владение JavaScript и получите представление о его менее интуитивно постижимых аспектах.
Как запустить несколько приложений React на одном порту Nginx с Docker

Как запустить несколько приложений React на одном порту Nginx с Docker

Разместим на одном порту два приложения React с Nginx и Docker. Настроим Docker, добавим конфигурацию Nginx глобально и файл docker-compose.yml.
Как работает JavaScript Proxy

Как работает JavaScript Proxy

Раскройте для себя возможности JavaScript Proxy, углубившись в настройку операций с объектами и контроль над ними. Используя JavaScript Proxy, вы будете создавать надежные и безопасные приложения.
Внутренняя жизнь React Native

Внутренняя жизнь React Native

React Native  —  это библиотека JavaScript для создания мобильных приложений, работающих как на Android, так и на iOS. Как говорят создатели: “Научитесь однажды  — ...
JavaScript

Где (и почему) следует использовать стрелочные функции ES6, а где не следует

Стрелочные функции (или «толстые стрелочные функции»), без сомнения, одна из самых популярных фич ES6. Это новый способ краткой записи функций. Так, выглядит синтаксис функции с...
Собеседование по Angular: ответы на часто задаваемые вопросы

Собеседование по Angular: ответы на часто задаваемые вопросы

Тщательная подготовка к собеседованию по Angular значительно повысит ваши шансы на успех. Чтобы произвести впечатление на интервьюера, нужно изучить не только основы, но и продвинутые концепции. Предлагаем ответы на главные вопросы собеседования и советы от профессионалов.
TypeScript: расширение возможностей JavaScript

TypeScript: расширение возможностей JavaScript

Знакомство с TypeScript - расширенной версией JavaScript - необходимо каждому программисту. Изучите базовые понятия TypeScript: типы, интерфейсы, дженерики и многое другое. Предлагаемый материал изложен простым доходчивым языком, без сложных определений и воды. 
Web Design

9 лучших примеров макетов сайта и идей для веб-дизайна в 2018

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

Как находить уязвимости в коде на PHP?

Сегодня я наткнулся на вот этот пост Intigriti в Twitter: «Мы только что написали потрясающий фрагмент кода, но… Наша команда разработки утверждает, что он небезопасен....
Java Script

Почему мы не используем лучшие практики CI/CD

Или причины избегать npm и отказаться от Google Play В Kalisio мы разрабатываем геопространственное программное обеспечение с открытым исходным кодом — то есть программное обеспечение, которое управляет геолокационными...
Обработка аутентификации и авторизации пользователей после балансировки нагрузки веб-приложения

Обработка аутентификации и авторизации пользователей после балансировки нагрузки веб-приложения

Балансировка нагрузки необходима, если в приложении ожидается или уже есть большой объем трафика, но дело усложняется, когда доходит до разработки потока аутентификации и авторизации. Зачем...
notebookJS: JavaScript и D3 в Jupyter Notebook

notebookJS: JavaScript и D3 в Jupyter Notebook

Вы когда-нибудь задумывались о том, как здорово было бы использовать визуализацию данных с помощью D3 или React в Jupyter Notebook? Много раз, скорее всего....
Как создать эффективную систему логирования с использованием Aspect и Spring Cloud Sleuth

Как создать эффективную систему логирования с использованием Aspect и Spring Cloud Sleuth

Логирование крайне важно для оперативного отслеживания ошибок в приложении и установления причины этих ошибок. Разберемся, как без особых усилий настроить фреймворк для логирования в приложении Spring Boot.
Совмещение Typescript и GraphQL Code Generator

Совмещение Typescript и GraphQL Code Generator

GraphQL  —  это открытый язык запросов и управления данными для API. Нам больше не нужно играть в догадки, как в случае с REST, поскольку этот...
11 ключевых принципов эргономики в UI-дизайне

11 ключевых принципов эргономики в UI-дизайне

Сегодня эргономичность пользовательского интерфейса - один из критериев его качества. Поэтому каждому разработчику, особенно начинающему, следует освоить основные принципы эргономики в UI-дизайне.
JSON

Подробнее о JSON RPC

Не хочу разводить очередной холивар на эту тему. Поэтому, если вкратце, то GraphQL — это сложно, RPC — быстро, REST — некий медиум, но не хватает batch-запросов. И если у...
Топ-10 библиотек React для создания высокопроизводительных веб-приложений в 2023 году

Топ-10 библиотек React для создания высокопроизводительных веб-приложений в 2023 году

Не все решения React предоставляются в готовом виде "из коробки". Поэтому приходится обращаться к дополнительным инструментам. Чтобы не тратить время на поиски подходящего фреймворка, воспользуйтесь обзором лучших библиотек React, помогающих эффективно решать различные проблемы.
Почему не стоит писать простой код JavaScript?

Почему не стоит писать простой код JavaScript?

Доводы, которые приведены в этой статье, заставят вас раз и навсегда отказаться от написания динамически типизированного кода JavaScript!
Angular

Четыре сигнала нехватки концептуальных знаний в Angular

1. Злоупотребление setTimeout(() => { … }) setTimeout(() => { ... }), вероятно, является наиболее популярным хаком для решения некоторых распространенных проблем рендеринга в Angular,...
JavaScript

Javascript и функциональное программирование. Часть 3. Чистые функции

Предыдущие части: Часть 1, Часть 2 Мотивация Столько ошибок зарыто в IO, мутациях данных и посторонних эффектах существующего кода. Они появляются в разных местах по всей...
Современное приложение выбирает… Redux, Context или Recoil?

Современное приложение выбирает… Redux, Context или Recoil?

Поскольку веяния в управлении глобальным состоянием постоянно меняются, то выбор в пользу того или иного варианта может оказаться затруднительным. Долгое время таким предпочтительным вариантом...
Файл package-lock.json: полное руководство

Файл package-lock.json: полное руководство

Файл package.json - ключевой элемент баз кода для многих приложений, основанных на экосистеме Node.js. Это своего рода манифест проекта. Предлагаем подробный гайд по использованию этого файла и решению связанных с ним проблем.
Подробно о перечислениях в Typescript

Подробно о перечислениях в Typescript

Углубимся в тему перечислений в TypeScript и рассмотрим их в рабочей среде React: виды, особенности, случаи применения.
Управляйте приложением React с помощью голоса

Управляйте приложением React с помощью голоса

Не так давно я реализовал с помощью TensorFlowJS модель распознавания голоса. Даже несмотря на то, что задача была очень интересной, ее расширение могло вызвать...
Создание приложения для отслеживания фильмов с помощью HTML, CSS и JavaScript

Создание приложения для отслеживания фильмов с помощью HTML, CSS и JavaScript

Ознакомьтесь с разработкой веб-приложения MovieVerse. Эта удобная платформа позволит пользователю без труда изучать обширную коллекцию постеров к фильмам, добавляя выбранные фильмы в список просмотра.
4 типичные ошибки разработчиков Node.js

4 типичные ошибки разработчиков Node.js

Растущее комьюнити Node.js - свидетельство надежности и эффективности этого инструмента. Однако не всем удается извлечь из него максимальную выгоду. Рассмотрим самые распространенные ошибки разработчиков Node.js.
Node

Фильтруем баги. Как реализовать тестовое покрытие в TypeScript под Node.js с помощью Jest

Я обожаю писать программы. Да что уж там: я не могу представить себя, занимающимся чем-то другим. Шутки шутками, но есть у меня один страх,...
Что такое Next.js App Router и готов ли он к использованию в производстве

Что такое Next.js App Router и готов ли он к использованию в производстве

Представляем App Router - новое решение последней версии Next.js. По ряду характеристик App Router превосходит классический Next.js Pages Router. Но можно ли его использовать при разработке крупных производственных приложений? Ознакомьтесь с опытом одного из первоиспытателей App Router.
Возможности и перспективы WebAssembly

Возможности и перспективы WebAssembly

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

Как сократить время начальной загрузки веб-приложения

Время начальной загрузки сильно влияет на первое впечатление пользователя о веб-приложении. Предлагаем руководство по оптимизации этого показателя.
JavaScript Essentials

JavaScript Essentials: Типы и структура данных

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

Официальный CLI GitHub

GitHub — самый известный провайдер Git хостинга долгие годы существовал, не имея официального инструмента CLI (интерфейс командной строки). Это весьма удивительно, учитывая, что сам GitHub является...
Очистка операторов импорта TypeScript с помощью псевдонимов путей

Очистка операторов импорта TypeScript с помощью псевдонимов путей

В мире программирования особенно ценятся кодовые базы, которые легко поддаются чтению. "Незасоренные" операторы импорта во многом способствуют этой цели. Сегодня поговорим о том, как сделать их чище с помощью псевдонимов путей.
Возможности контроля в JavaScript: методы AbortSignal.timeout() и AbortSignal.any()

Возможности контроля в JavaScript: методы AbortSignal.timeout() и AbortSignal.any()

Представляем два малоизвестных, но очень полезных метода управления асинхронными задачами: AbortSignal.timeout() и AbortSignal.any(). Оба эти метода поддерживаются основными веб-браузерами и позволяют корректно прервать асинхронные операции.
Node.js

Веб-скрапинг с помощью Node.js — Часть 2

Предыдущие части: Часть 1 В предыдущей статье я рассказывал о том, как извлекать статические данные с помощью Node.js. В настоящее время сайты приобретают более динамический характер,...
Базовые команды при работе с узлами K8s

Базовые команды при работе с узлами K8s

В данной статье мы вспомним основы, чтобы прояснить суть ряда операций при работе с узлами кластера.  Тестовый кластер  Рассмотрим только что созданный кластер kubeadm, состоящий из...
FastAPI, Flask или Streamlit: что выбрать для веб-разработки?

FastAPI, Flask или Streamlit: что выбрать для веб-разработки?

FastAPI, Flask и Streamlit - отличные инструменты, применяемые в веб-разработке на Python и в области науки о данных. Выбор наиболее подходящего Python-фреймворка зависит не столько от ваших предпочтений, сколько от требований проекта.
Как упростить автоматизированное тестирование компонентов React

Как упростить автоматизированное тестирование компонентов React

Чтобы создать надежное ПО, нужен надежный тест. Рассказываем о тестировании приложений React: как устранить распространенные проблемы и ускорить этот процесс.
Node

Отладка Node.js с помощью Google Chrome

Отладка (debugging) — это процесс выявления и устранения ошибок в программных приложениях, который представляет собой нечто большее, чем просто просто вывод значений переменных. Задача этой статьи...
Стратегии обнаружения изменений в Angular  -  «onPush» и «Default»

Стратегии обнаружения изменений в Angular  -  «onPush» и «Default»

В Angular есть две стратегии обнаружения изменений  —  «Default» и «onPush». Рассмотрим преимущества и недостатки этих стратегий. Что такое «обнаружение изменений» в Angular? Механизм обнаружения изменений в...
Реализация VR-пространства в браузере

Реализация VR-пространства в браузере

Предлагаю начать с основ, а именно с фреймворка A-Frame, поскольку он упрощает работу на основе уже имеющихся знаний об HTML5 и JavaScript. Совместим ли...
Путешествие строки скомпилированного кода

Путешествие строки скомпилированного кода

На высоком уровне мы рассмотрим вывод каждой стадии компиляции простой программы C++ при использовании Clang. При этом мы также проследим код в дизассемблированном виде...
Интуитивно понятное объяснение конструкции Async/await в JavaScript

Интуитивно понятное объяснение конструкции Async/await в JavaScript

Как избежать "ада обратных вызовов"? Всегда ли полезны промисы? В чем сила синтаксической конструкции Async/await? Ответим на эти вопросы и научимся проектировать мощные асинхронные конвейеры для эффективной обработки данных.
Движки JavaScript. Часть 2: генерация кода и базовые оптимизации

Движки JavaScript. Часть 2: генерация кода и базовые оптимизации

В этой части продолжим разговор о том, как работают движки JavaScript. Поговорим о компиляторах, этапах создания кода и основных оптимизациях.
JavaScript

Лучшие практики и инструменты для микрофронтендов

Сегодня микрофронтенды больше не являются доказательством концепции. В интернете можно найти множество примеров их использования. Кроме того, большинство этих веб-приложений уже работает, что демонстрирует...
Топ-5 способов стилизации React-приложений в 2024 году

Топ-5 способов стилизации React-приложений в 2024 году

Использование библиотек для стилизации React-приложения может сэкономить много времени. Изучите возможности лучших из них: StyleX, Styled Components, Sass, Tailwind и Emotion. Алгоритмы реализации и демо-версии каждой библиотеки значительно облегчат работу.
JavaScript

10 вещей, которые надо знать, чтобы стать мастером JavaScript

Полагаю, вы веб-разработчик. Надеюсь, ваши дела идут хорошо, у вас отличная работа, возможно вы работаете на себя или в качестве фрилансера. Будущее этой сферы...
Пользовательские структурные директивы в Angular

Пользовательские структурные директивы в Angular

Что такое структурные директивы? Структурные директивы в Angular отвечают за манипулирование элементами, их изменение и удаление внутри шаблона компонента. Структурная директива применяется к основному элементу,...
CSS

Преимущества использования препроцессора (Sass) при написании CSS

В сети ведётся много споров о том, стоит ли использовать CSS-препроцессор в разработке. По моему личному мнению, препроцессор излишен для маленьких веб-проектов и приложений. Тем...
Краткий обзор нововведений TypeScript 4.1

Краткий обзор нововведений TypeScript 4.1

Я работаю с TypeScript уже не первый год и считаю, что он достаточно прост, особенно для людей с опытом разработки на Java. Тем не...
Получение общих данных в Next.js одним запросом

Получение общих данных в Next.js одним запросом

Просматривая процесс сборки своего текущего проекта, я обратил внимание на то, что при генерировании страниц с использованием getStaticProps выдается много запросов к одной конечной...
18 советов по созданию чистого и эффективного кода JavaScript

18 советов по созданию чистого и эффективного кода JavaScript

Освойте 18 самых распространенных хаков, раскрывающих продвинутые возможности JavaScript. Опытные разработчики, в отличие от новичков, постоянно используют эти приемы, чтобы сделать код намного проще, чище и эффективней.
Java Script

JavaScript Symbols. Новый тип примитивов

Введение В JavaScript есть два основных типа значений. Первый тип — это примитивы, а второй — объекты (в том числе функции). Примитивы — это простые типы, например числа (integer, float, infiniti,...
Хитрости и приемы эффективного программирования на Kotlin

Хитрости и приемы эффективного программирования на Kotlin

Проведем краткий обзор крутого функционала Kotlin. Начнем писать код по-котлиновски, сделав его более лаконичным и удобным для человеческого восприятия.
JavaScript

9 убийственных приемов для JavaScript разработчиков в 2019 году

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

Основы аутентификации для начинающих

Без аутентификации не обойтись, пожалуй, почти ни в одном реальном проекте, рассчитанном на людей. Рассмотрим два основных подхода к аутентификации пользователей: как они работают, в чем их преимущества и недостатки.