We may earn an affiliate commission when you visit our partners.
Course image
Антон Ларичев

Обновлено до TypeScript 5.0

Read more

Обновлено до TypeScript 5.0

TypeScript - это язык программирования, являющийся надмножеством JavaScript, компилирующимся в него. Благодаря системе типов и дополнительным возможностям, он позволяет писать большие масштабируемые приложения, которые просто поддерживать и развивать. Вместо отлова ошибок в runtime вы получаете быструю проверку вашего кода в compiletime и тесную интеграцию с IDE для быстрого написания кода. При этом вы можете переводить ваши приложения на TypeScript постепенно, улучшая типизацию и качество кода. Сейчас уже сложно встретить большое приложение для frontend или backend без использования TypeScript. Язык уже является стандартом разработки и может быть использован с любым framework.

В курсе мы разберём TypeScript с нуля, потому от вас будет требоваться только базовое знание JavaScript. В курсе мы не просто изучим все особенности TypeScript, но и попрактикуемся на упражнениях и написании финального проекта - расширяемую утилиту исполнения команд. При этом важной частью курса буду паттерны проектирования, где мы изучим поведенческие, порождающие и структурные паттерны объектно ориентированного программирования. И даже для тех, кто уже изучал TypeScript многие разделы будут полезны, так как захватывают продвинутые темы, с которыми вы возможно не так часто сталкивались ранее. В курсе мы детально изучим:

  • Основные типы

  • Types и interfaces

  • Специальные типы: Enums, Tuples, never и unknown

  • Работу с классами

  • Композицию и наследование

  • Настройку компилятора TypeScript для проекта

  • Использование Generic в функциях, классах и интерфейсах

  • Index Access Types

  • Conditional Types

  • Mapped Types

  • Template Literal Types

  • Специальные служебные типы

  • Работу и написание декораторов

  • Reflect metadata

  • Модульность TypeScript

  • Работу и типизацию сторонних библиотек

  • Порождающие паттерны

  • Структурные паттерны

  • Поведенческие паттерны

Лекции содержат как теоретическую часть, так и live-code, где мы вместе будем писать код, разбираю особенности работы TypeScript. В конце каждого модуля вас ожидает тест, который позволит укрепить ваши знания. Так же в этом курсе сделан особый акцент на упражнениях, которые позволят закрепить полученные знания на практике.

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

Enroll now

What's inside

Learning objectives

  • Основным и продвинутым типам typescript
  • Работе с классами и интерфейсами
  • Настройке проекта для работы typescript
  • Написанию typeguards
  • Generics
  • Conditional types и mapped types
  • Использованию служебных типов
  • Работе декораторов
  • Устройству модульности в typescript
  • Типизации библиотек
  • Паттернам проектирования в typescript
  • Писать расширяемый и поддерживаемый код на примере проекта
  • Show more
  • Show less

Syllabus

Введение
Почему TypeScript?
Как устроен курс?
Обзор проекта
Read more
Update - Обзор курсов
Курс с наставником
Настройка окружения
Подготовка окружения
Установка NodeJS
Настройки VSCode
Основные типы
Вводное видео
Подготовка проекта
Использование типов
Типы в функциях
Объекты
Упражнение - Типизируем объект
Массивы
Tuples
Readonly
Enums
Упражнение - Типизируем функцию
Тест - Основные типы
Продвинутые типы
Конструктор
Union
Literal Types
Type Aliases
Interfaces
Types или Interfaces?
Optional
Упражнение - Типизируем ответ сервера
Void
Unknown
Never
Null
Приведение типов
Type Guard
Упражнение - Делаем typeguard ответа
Asserts
Тест - Продвинутые типы
Классы
Создание класса
Методы
Упражнение - Перегрузка методов
Getter и Setter
Implements
Extends
Особенности наследования
Композиция против наследования
Видимость свойств
Упражнение - Делаем корзину товаров
Статические свойства
Работа с this
Типизация this
Абстрактные классы
Упражнение - Делаем абстрактный logger
Тест - Классы
Компилятор TypeScript
Включение и исключение файлов
Вывод компиляции
Язык и окружение
Модули
Strict режим
Проверки кода
Generics
Пример встроенных generic
Пишем функцию с generic
Упражнение - Функция преобразования в строку
Использование в типах
Ограничение generic
Упражнение - Функция сортировки id
Generic классы
Mixins
Тест - Generics
Манипуляция с типами
Keyof
Упражнение - Пишем функцию группировки
Typeof
Indexed Access Types
Conditional Types
Infer
Mapped Types
Упражнение - Валидация форм
Template Literal Types
Тест - Манипуляции с типами
Служебные типы
Partial, Required, Readonly
Pick, Omit, Extract, Exclude
ReturnType, Parameters, ConstructorParameters
Awaited
Тест - Служебные типы
Декораторы

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Курс подойдет практикующим и начинающим разработчикам с базовым знанием JavaScript, которые хотят изучить один из самых востребованных языков программирования, используемый как на сервере, так и на клиенте для разработки масштабируемых и надежных решений
Курс детально рассматривает основные конструкции TypeScript, типы данных, работу с классами и интерфейсами, а также паттерны проектирования, что позволяет разработчикам не только освоить язык, но и погрузиться в принципы написания надежного и структурированного кода
Курс уделяет особое внимание написанию кода с использованием передовых функций TypeScript, таких как дженерики, условные типы и сопоставленные типы, что позволяет разработчикам создавать более гибкие и эффективные решения
Курс включает практические упражнения и финальный проект, что позволяет закрепить теоретические знания и отработать практические навыки
Курс ведут опытные специалисты, которые совмещают теорию с практическими примерами, что позволяет сделать обучение более эффективным и наглядным

Save this course

Save TypeScript с нуля - полный курс и паттерны проектирования to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in TypeScript с нуля - полный курс и паттерны проектирования with these activities:
Пишем блог о паттернах проектирования
Поможет систематизировать и закрепить знания о паттернах проектирования, а также улучшить навыки письменного изложения.
Browse courses on SOLID
Show steps
  • Разбейте материал на отдельные темы
  • Изучите каждый паттерн вглубь
  • Напишите статью или серию статей
Show all one activities

Career center

Learners who complete TypeScript с нуля - полный курс и паттерны проектирования will develop knowledge and skills that may be useful to these careers:

Reading list

We haven't picked any books for this reading list yet.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to TypeScript с нуля - полный курс и паттерны проектирования.
Стратегии коммуникации в виртуальную эпоху
Most relevant
Системное администрирование и службы IT-инфраструктуры
Most relevant
Принятие решений в маркетинге на основе анализа данных
Most relevant
Как создать график реализации проекта в Google Таблице
Most relevant
Проектирование интерактивных дашбордов в Tableau
Most relevant
Эпигенетика. Краткий курс по управлению генами
Most relevant
Умения работы с Excel для бизнеса: уровень Intermediate I
Most relevant
Введение в HTML5
Most relevant
Введение в приложение Google Docs
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser