Классы в TypeScript
Поля, конструкторы, модификаторы доступа, наследование, abstract и static, mixins
Классы в TypeScript
TypeScript расширяет JavaScript-классы мощной системой типов: строгая типизация полей, модификаторы доступа, абстрактные классы и паттерн миксинов. В этой главе мы разберём, как TypeScript превращает классы из синтаксического сахара в полноценный инструмент объектно-ориентированного проектирования.
Подглавы
- Поля, конструкторы и методы — объявление полей,
readonly, конструкторы, методы, геттеры и сеттеры - Модификаторы доступа и наследование —
public,protected,private,implements,extends - abstract-классы и static-члены — абстрактные классы, статические поля и методы,
staticблоки - Mixins и this-типы — паттерн миксинов, this-типы, parameter properties
Что вы узнаете
- Как TypeScript типизирует поля, методы и конструкторы классов
- Чем отличаются
public,protectedиprivateот рантайм#private - Как использовать
implementsиextendsс полной типобезопасностью - Зачем нужны абстрактные классы и когда предпочесть интерфейс
- Как работают статические члены и
staticблоки инициализации - Как реализовать паттерн миксинов в TypeScript
- Как
this-типы помогают строить fluent API
Предварительные знания
- Прототипы в JavaScript — прототипная цепочка и
classкак сахар - Система типов TypeScript — базовые типы, интерфейсы, дженерики