javascript- все статьи тега


Руководство по созданию настольного приложения в Electron

Если вы занимаетесь веб-разработками, то, вероятно, наслышаны об Electron. Для тех же, кто не в курсе, скажу, что это достаточно противоречивый фреймворк для создания приложений, совместимых с Windows, macOS и Linux, на основе веб-технологий и единой базы кода. Несмотря на то, что его приложения могут уступать нативным в скорости и легковесности, ...

Как создать адаптивную галерею для интернет-магазина

В этой статье вы узнаете, как создать адаптивную галерею с помощью простенького JavaScript-фреймворка Stimulus для HTML-страницы вашего будущего интернет-магазина. Stimulus  —  это мощная альтернатива SPA, которая позволяет разработчикам воплощать в жизнь их задумки по созданию веб-приложений. Stimulus Components  —  это проект с открытым исходным...

Мы снова написали самый быстрый JS-фреймворк UI

Я выработал четкий алгоритм, который применяю практически ко всем видам возникающих передо мной задач. Шаг 1. Определить задачу. Этот этап нередко оказывается самым длительным, потому что критически важно отчетливо понять саму задачу, учесть все заинтересованные стороны и понять ее важнейшие деталями. Шаг 2. Выработать идеальное решение любой цено...

3 совета, как стать мастером Йода по JavaScript

Увидев в проекте на Angular или React устаревший код JavaScript, код-ревьюер сразу определит, что разработчик  —  новичок. Но если вы воспользуетесь 3 советами из статьи, вас будут считать профессионалом по современному JavaScript. Итак, начнем наше путешествие! Как использовать spread Оператор spread …  —  мой любимый в JavaScript. В основно...

Что нового ожидать в ES2021

В июне 2021 года намечен выход ES2021 или ES12. Вот некоторые функции, которые предположительно внесет технический комитет 39 (TC39) в ESMAScript: · Метод String.prototype.replaceAll · Метод Promise.any · Слабые ссылки (WeakRef) и финализатор · Операторы логического присваивания · Разделение чисел на разряды В этой статье мы разберем каждую функци...

Что такое Hoisting в JavaScript

И как пользоваться этим “поднятием” Возможно, вы уже знаете, что переменные могут “подниматься”. “Hoisting” переводится с английского как “поднятие” и означает понятие, которое было придумано для того, чтобы можно было говорить о замыканиях в JavaScript без указания области видимости переменных. Перед тем как начать, следует ознакомиться с термина...

Рендеринг на стороне сервера против статической генерации сайта

В техническом пространстве разбрасывается много модных слов. Два из них  —  статическая генерация сайтов (SSG) и рендеринг на стороне сервера (SSR). Изображение автора В этой статье я попытаюсь демистифицировать SSR и SSG и узнать, где они могут нам помочь. Начнем с истории, а затем перейдем к некоторым реальным примерам и технологиям, таким как N...

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

Поскольку веяния в управлении глобальным состоянием постоянно меняются, то выбор в пользу того или иного варианта может оказаться затруднительным. Долгое время таким предпочтительным вариантом была Redux. Однако после того, как Context API с возможностью управления состоянием стал частью React, многие поспешили объявить о преждевременной кончине R...

4 секрета читаемого и производительного кода JavaScript

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

Три точки (…) в Javascript

Синтаксис spread—  это новое дополнение в JavaScript ES6. Он принимает итерируемый объект (например, массив) и расширяет его на отдельные элементы. Синтаксис spread часто используется для поверхностного копирования объектов JS, делая код компактным, лаконичным и более удобным для восприятия человека. Синтаксис Синтаксис spread обозначается тремя т...

Паттерн проектирования «Наблюдатель»: объект под прицелом

В книге “Приемы объектно-ориентированного проектирования: паттерны проектирования” Эриха Гамма описываются 23 классических паттерна, которые предлагают решения часто встречающихся задач в разработке ПО.   В данной статье речь пойдет о паттерне “Наблюдатель”, принципах его работы и случаях применения.  “Наблюдатель”: основная идея&nb...

5 основных рекурсивных задач на собеседованиях по программированию

В информатике и математике рекурсия является эффективной базовой концепцией. В математике она применяется в таких разделах, как числовые последовательности и функции. При решении задач по информатике полезно использовать метод “разделяй и властвуй” и динамического программирования. При подобном подходе конкретная задача разбивается на более мелкие...

Лучшие JavaScript-фреймворки и тенденции веб-разработки в 2021 году

В прошлом году весь мир сильно пострадал от пандемии COVID-19. Этим беспрецедентным кризисом до сих пор охвачены абсолютно все сферы человеческой деятельности. Негативные последствия вируса сказываются и на сфере веб-разработки, но это одна из тех глобальных отраслей, которая двигалась вперёд в 2020 году. Сейчас самое время взглянуть на основные т...

Аспектно-ориентированное программирование в JavaScript

Кто из программистов JavaScript не знает об объектно-ориентированном (ООП) или функциональном программировании (ФП)?! Но вот слышали ли вы об аспектно-ориентированном (АОП)?  Что самое интересное, АОП можно без труда сочетать с ООП или ФП по аналогии с их комплексным применением в JavaScript. Поэтому целесообразно понять, в чем суть этой пара...

Битва трендов: React vs Angular vs Vue

Не знаю как вы, а я обожаю пиццу, особенно вместе с чесночными палочками от «Папа Джонс». И когда мне пришло это сообщение после последнего заказа, я был на седьмом небе от счастья: “Пройди наш опросник и получи бесплатные чесночные пицца-палочки или картофельные шарики на следующий онлайн заказ!”  Бесплатная еда! Я должен пройти этот оп...

Лучшие генераторы статических сайтов для React в 2019 году

Не знаю как вы, а я обожаю пиццу, особенно вместе с чесночными палочками от «Папа Джонс». И когда мне пришло это сообщение после последнего заказа, я был на седьмом небе от счастья: “Пройди наш опросник и получи бесплатные чесночные пицца-палочки или картофельные шарики на следующий онлайн заказ!”  Бесплатная еда! Я должен пройти этот оп...

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

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

Подробнее о функциях высшего порядка

В прошлую пятницу мне на почту пришло приглашение попробовать бета-версию GitHub Codespaces! Я сразу же взял один из своих примерных проектов на Flutter (Fluttersaurus) и создал для него Codespaces (кодовое пространство). Смог установить расширения VS Code в браузере, настроить любимую тему (тёмный режим как никак!) и перешёл, собственно, к VS Cod...

Использование вебсокетов в промис-стиле

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

Почему вам нужно учить больше языков программирования

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