Основные возможности платформы Hexlet не доступны в вашем браузере.
Пожалуйста, обновитесь. Выбрать браузер.
курс

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

В течение этого курса мы будем писать собственную карточную игру и знакомиться с такими важными концепциями программирования, как пользовательские типы, динамическая диспетчеризация по типу, позволяющая писать ёмкий, универсальный код, полиморфизм, передача сообщений между сущностями и, конечно, основы важнейшей темы — объектно-ориентированного программирования. Также мы перейдем к разработке через тесты (test driven development).

Сначала рекомендуем пройти курс JS: Последовательности

1.

Введение

теория (видео 07:31)

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

2.

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

теория (видео 10:29) / тесты / упражнение

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

3.

Инверсия

теория (видео 05:21) / тесты / упражнение

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

4.

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

теория (видео 09:08) / тесты / упражнение

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

5.

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

теория (видео 19:13) / тесты / упражнение

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

6.

Объекты

теория (видео 07:32) / упражнение

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

7.

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

теория (видео 13:38) / тесты / упражнение

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

8.

Классы

теория (видео 11:26) / тесты / упражнение

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

9.

Полиморфизм

теория (видео 07:25) / тесты / упражнение

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

Испытания

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

Статистика
1830
учащихся
1530
вопросов
и ответов
11
часов
Учитель