курс

JS: Программирование, управляемое данными

3967 студентов
Последнее обновление: 06 мая 2025
Курс JS: Программирование, управляемое данными
3 900 ₽ в месяц
за все курсы Хекслета
Зарегистрироваться
  • Тренажер с практикой
  • Бессрочный доступ к теории
  • Асинхронный формат
    обучения

Включено в курс

9 уроков (видео и/или текст)
11 упражнений в тренажере
35 проверочных тестов
Доступ к остальным курсам платформы

Чему вы научитесь

  • Делать свое ООП с типами и диспетчеризацией
  • Использовать инверсию зависимостей для изменения поведения кода без его переписывания
  • Создавать классы и использовать их в JavaScript
  • Применять полиморфизм для уменьшения количества условных конструкций и дублирования

Описание

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

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

Программа курса

Продолжительность 11 часов
  • 1

    Введение

    Познакомиться с курсом и с проектом карточной игры, над которым мы будем работать в течение всего курса, по ходу знакомясь с важными концепциями программирования.
  • 2

    Игровой дизайн: карточный бой

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

    тесты

    упражнение

  • 3

    Инверсия

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

    тесты

    упражнение

  • 4

    Помеченные данные

    Разобрать недостатки текущей реализации нашей игры. Разобраться с понятием «помеченных данных», которое является одним из важнейших аспектов всего курса.

    тесты

    упражнение

  • 5

    Диспетчеризация по типу. Аддитивность.

    Понять, что такое аддитивные программы и как динамическая диспетчеризация поможет нам строить такие программы. Разобраться, что такое диспетчеризация в контексте программирования и типов.

    тесты

    упражнение

  • 6

    Объекты

    Познакомиться с объектами в контексте современного, общепринятого понятия объектно-ориентированного программирования. Понять, как динамическая диспетчеризация дала возможность работать с объектами в ООП.

    тесты

    упражнение

  • 7

    Нативные объекты

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

    тесты

    упражнение

  • 8

    Классы

    Познакомиться с классом — структурой, которая позволяет создавать объекты. Рассмотреть механизм создания новых объектов с помощью 'new'.

    тесты

    упражнение

  • 9

    Полиморфизм

    Познакомиться с понятием полиморфизма в языках программирования. Разобрать три типа полиморфизма.

    тесты

    упражнение

  • 10

    Дополнительные материалы

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

Формат обучения

Испытания

Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. Обычно мы рекомендуем выполнить 3-5 испытаний. Но если не получается, не отчаивайтесь. Просто вернитесь к ним позже

#
Задание
% завершений

Рекомендуемые программы

профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 5 июня
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 5 июня
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 5 июня
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 5 июня
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 5 июня
профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 5 июня
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 5 июня
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 5 июня
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 5 июня
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 5 июня
профессия
новый
10 месяцев
c опытом
в разработке
Старт 1 августа
профессия
новый
Программирование на JavaScript и PHP, разработка веб-приложений и сервисов используя Laravel, проектирование REST API и работа с базами
16 месяцев
с нуля
Старт 5 июня
профессия
новый
10 месяцев
с нуля
в разработке
Старт 19 июня
профессия
новый
10 месяцев
с нуля
в разработке
Старт 1 августа
профессия
новый
14 месяцев
с нуля
в разработке
Старт 1 июля
профессия
новый
Переменные, константы, функции, типы данных, коллекции в Go, обработка ошибок, горутины, каналы, многопоточность, Fiber
6 месяцев
с нуля
в разработке
Старт 1 июля
профессия
новый
10 месяцев
с нуля
в разработке
Старт 1 августа
профессия
новый
Разработка фронтенд- и бэкенд-компонентов для веб-приложений на Spring Boot и React
16 месяцев
с нуля
Старт 5 июня
профессия
новый
Программирование на JavaScript и Python, разработка веб-приложений и сервисов используя Django, проектирование REST API и работа с базами данных
16 месяцев
с нуля
Старт 5 июня
профессия
новый
10 месяцев
с нуля
в разработке
Старт 1 июля
профессия
новый
10 месяцев
с нуля
в разработке
Старт 15 июля
профессия
новый
6 месяцев
с нуля
в разработке
Старт 1 июля
профессия
новый
10 месяцев
с нуля
в разработке
Старт 1 августа
профессия
новый
4 месяца
c опытом
в разработке
дата определяется
профессия
новый
Автоматизированное тестирование веб-приложений на Python
8 месяцев
с нуля
Старт 5 июня
профессия
новый
Автоматизированное тестирование веб-приложений на Java
8 месяцев
с нуля
Старт 5 июня