Уроки
Уроки
TypeScript добавляет в JavaScript типы и находит ошибки до запуска программы. Вы создадите инвентарь и журнал квестов для ролевой игры.
Уроки
Урок 1
Пусть TypeScript проверит ваш JavaScript: научитесь читать его ошибки и видеть выведенные типы.
За урок вы получите 85 XP
Урок 2
Аннотации типов для string, number и boolean, а также массивы вроде string[] и кортежи.
За урок вы получите 140 XP
Урок 3
Типы параметров и результатов функций, void, необязательные параметры, map и filter.
За урок вы получите 150 XP
Мини-проект
Подсчитайте результаты соревнования по стрельбе из лука: попадания, очки, медали и победителя.
За урок вы получите 30 XP
Вывод
Участник: КираПопаданий: 5 из 6Очки: 40В яблочко: 2 (бонус 10)Счёт: 50Медаль: золотоУчастник: БруноПопаданий: 4 из 5Очки: 36В яблочко: 2 (бонус 10)Счёт: 46Медаль: золотоПобедитель: Кира
Урок 5
Описываем объекты через type и interface, включая необязательные и readonly-свойства.
За урок вы получите 160 XP
Урок 6
Объединяйте типы вроде string | number, сужайте их с помощью typeof и работайте с null и undefined.
За урок вы получите 145 XP
Урок 7
Размеченные объединения, switch с never для проверки всех видов и Record для таблиц.
За урок вы получите 100 XP
Мини-проект
Ведите книгу заказов кузнеца: считайте цены, скидки постоянных клиентов и стоимость гравировки.
За урок вы получите 30 XP
Вывод
Кира: ковка, Наконечники стрел (сталь), цена 30 (скидка 5)Бруно: ремонт, Боевой топор, цена 15 (новый клиент)Лена: заточка, Кинжал, цена 8Бруно: ковка, Щит (бронза), цена 20 (новый клиент)Кира: гравировка КИРА, Эльфийский лук, цена 7 (скидка 5)Итого: 80Ковок: 2, ремонтов: 1, заточек: 1, гравировок: 1
Урок 9
Функции и типы для любых типов с помощью <T> и ограничения для T через extends.
За урок вы получите 120 XP
Урок 10
Создаём классы с конструктором, методами и приватными полями и строим на них новые через extends.
За урок вы получите 115 XP
Мини-проект
Пишем программу банка авантюристов: классы счетов, вклады, снятия и хранилище с комиссией.
За урок вы получите 30 XP
Вывод
Кира: золото 120Бруно: золото 40Лена: золото 75 (хранилище)В банке золота: 235.Бруно вносит золото: 30. Баланс: 70Кира снимает золото: 50. Баланс: 70Бруно снимает золото: 100. Отказ: не хватает золотаМира вносит золото: 10. Отказ: нет счётаЛена снимает золото: 60. Баланс: 13Кира: золото 70Бруно: золото 70Лена: золото 13 (хранилище)В банке золота: 153.
Урок 12
Создавайте новые типы из готовых с помощью Partial, Pick и Omit и защищайте данные с помощью Readonly.
За урок вы получите 110 XP
Урок 13
Соберите инвентарь и журнал квестов Киры: размеченные объединения, обобщённый поиск и Record.
За урок вы получите 95 XP
Вывод
Кира, следопыт, уровень 3, здоровье 34/50, золото 120Инвентарь:- Целебное зелье (лечит на 20)- Серебряный меч (урон 12)- Старый ключ (открывает склеп)- Свиток света (заклинание: Свет)Кира пьёт «Целебное зелье»: здоровье 50/50Кира берёт в руку «Серебряный меч»Кира не нашла предмет «Драконье яйцо»Квесты:[выполнено] Волки в лесу: золото +50[активно] Потерянная корона[провалено] Спасти мельника: мельница сгорела[выполнено] Мост гоблинов: золото +30
TypeScript добавляет в JavaScript типы и находит ошибки до запуска программы. Курс проходит путь от основных типов и функций до типов объектов, объединений и сужения типов, моделирования данных, обобщений и классов и заканчивается вспомогательными типами — инструментами, которые встречаются в каждом большом проекте на TypeScript.
Курс рассчитан на тех, кто знает JavaScript. Вы пишете программы для соревнования по стрельбе из лука, кузнеца и банка авантюристов, а в итоговом проекте — инвентарь и журнал квестов следопыта. Типы вашего кода проверяются, а сам код запускается прямо в браузере.