JS
Статьи о JavaScript — инструкции, советы, полезные руководства.
Установка Node.js на Windows и macOS
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Node.js помогает JavaScript взаимодействовать с устройствами ввода-вывода через свой API и подключать разные внешние библиотеки (главное, делать это без фанатизма).
Перейдите на официальный сайт и скачайте последнюю стабильную версию с припиской LTS. На сайте есть версии и для Windows, и для macOS. Выглядит это примерно так:
После загрузки запустите установщик и установите Node.js как любую другую программу (то есть Далее—Далее—Далее). Чтобы проверить, что Node.js установилась, и узнать версию, откройте терминал и введите две команды node -v
и npm -v
.
Вот и всё — можете пользоваться.
- 24 мая 2023
Жадные алгоритмы: короткий обзор
Программистам часто приходится решать задачи оптимизации. В таких задачах мы ищем лучшее решение среди всех возможных вариантов. «Лучшее» может означать самое большое или самое маленькое. Например, найти кратчайший путь между точками на карте в навигаторе — задача оптимизации.
Жадные алгоритмы — это подход к решению задач оптимизации, в котором мы делаем лучший выбор на каждом шаге, надеясь, что это приведёт к лучшему решению в итоге. Это простые для понимания алгоритмы, которые ещё и быстро работают.
Проблема в том, что иногда этот подход срабатывает, а иногда нет.
Чтобы не погружаться в скучную теорию, давайте сразу посмотрим на несколько задач, которые можно решить с помощью жадных алгоритмов. Начнём с задачи о выборе задач, с которой обычно не возникает никаких проблем.
👉 Важное уточнение: статья описывает только основы и простые примеры жадных алгоритмов. Теория, подробности и глубинная математика — в учебниках и на курсе «Алгоритмы и структуры данных» от HTML Academy.
- 2 мая 2023
5 книг по паттернам проектирования, которые улучшат ваш код
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Паттерны проектирования — это шаблонные решения задач в программировании. Они помогают разработчикам создавать код, который удобно поддерживать и масштабировать. При этом на разработку тратится меньше времени, чем при решении задачи с нуля.
В этой статье мы собрали пять популярных книг про паттерны. В каждой — примеры на разных языках программирования, поэтому вы точно подберёте подходящий вариант.
- 18 апреля 2023
Интерфейсы и типы TypeScript: в чём разница
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Помимо базовых типов, TypeScript предоставляет разработчикам операторы для определения интерфейсов (interface
) и псевдонимов для типов (type
). В актуальных версиях TypeScript эти операторы во многих случаях взаимозаменяемы. Может сложиться впечатление, что кроме написания никаких различий между ними нет. На самом деле это не так. Разберёмся на примерах.
- 14 апреля 2023
XSS-уязвимости и как их избежать
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Аббревиатура XSS расшифровывается как Cross-Site Scripting (межсайтовый скриптинг). Если особо не погружаться в детали, смысл атаки заключается во внедрении вредоносного кода в страницу. Атака не затрагивает серверную часть, но напрямую влияет на клиентскую — на пользователей уязвимого сервиса.
А какой код можно внедрить в страницу? У страницы же нет доступа к базе данных или другому серверному компоненту, где можно получить данные пользователей. Речь идёт о зловредном JavaScript-коде.
Вам хорошо известно: для выполнения JavaScript-кода на странице (в контексте фронтенда) необходимо разместить его между тегами <script></script>
. Про этот способ мы рассказывали в первой главе учебника. Атака XSS в этом и заключается. Злоумышленник внедряет в страницу зловредный JavaScript-код. Пользователь переходит на эту страницу, код выполняется и конфиденциальные данные пользователя отправляются злоумышленнику.
- 7 апреля 2023
3 способа валидации форм
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Валидация формы — это проверка данных, которые ввёл пользователь. Если на вашем сайте есть форма без валидации, пользователи будут заполнять её как захотят. Кто-то пропустит важное поле, кто-то неправильно введёт телефон или номер банковской карты. В результате обрабатывать такие данные станет сложнее, да и небезопасно.
- 4 апреля 2023
Операторы spread и rest в React
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Если вы работали с ванильным JavaScript или React, то могли видеть в коде три точки — ...
. Так обозначаются операторы spread и rest. Они используют одинаковый синтаксис, но решают разные задачи.
- 31 марта 2023
Авторизация и аутентификация: в чём разница
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Авторизацию и аутентификацию легко спутать, но это разные вещи. Их нужно различать и понимать, как использовать, чтобы обезопасить свои данные или данные пользователей.
👉 Аутентификация — это проверка, что вы действительно тот человек, за которого себя выдаёте.
Вот простой пример из жизни: представьте, что вам написал друг и попросил занять денег до понедельника. Чтобы убедиться, что это не мошенник, вы проводите аутентификацию — звоните приятелю. И если ваш друг подтвердит, что это ему нужны деньги, он пройдёт проверку.
👉 Авторизация — это получение права доступа к чему-то. Например, ваш друг получит доступ к деньгам и потратит их.
- 21 марта 2023
Обзор редакторов кода для фронтендеров
🚀 Вам бесплатно доступен тренажёр по HTML и CSS.
Самые популярные редакторы кода — Visual Studio Code, Sublime Text, Atom и WebStorm. Они ускоряют разработку и помогают быстро находить ошибки, работать с Git и получать удовольствие от процесса.
У каждого редактора есть обязательные функции, без которых сложно представить работу с кодом. Давайте поговорим о них.
- 6 марта 2023
Как работать с Vue 3 Router
☝ Предполагается, что к моменту прочтения этой статьи вы уже знаете, как создавать простое Vue-приложение. Также предполагается, что приложение открывается по адресу localhost:8080
.
- 28 февраля 2023