add typescript

This commit is contained in:
2025-02-28 14:39:31 +03:00
parent 7d94ca6021
commit 99dffd0a1d
135 changed files with 1098 additions and 349 deletions

View File

@@ -0,0 +1,60 @@
---
sidebar_position: 1
---
# Зачем нужен TS
TypeScript — это язык программирования, который расширяет JavaScript, добавляя статическую типизацию и другие возможности.
Вот основные причины, зачем он нужен:
1. **Статическая типизация:**
- TypeScript позволяет определять типы переменных, параметров функций и возвращаемых значений. Это помогает находить ошибки на этапе разработки, а не во время выполнения кода.
- Например, если вы случайно передадите строку вместо числа, TypeScript выдаст ошибку.
2. **Улучшение читаемости и поддержки кода:**
- Типы делают код более понятным и самодокументируемым. Легче понять, какие данные ожидаются и возвращаются в функциях.
- Это особенно полезно в больших проектах или при работе в команде.
3. **Инструменты разработки:**
- TypeScript интегрируется с современными IDE (например, Visual Studio Code), предоставляя автодополнение, навигацию по коду и подсказки на основе типов.
- Это ускоряет разработку и уменьшает количество ошибок.
4. **Совместимость с JavaScript:**
- TypeScript — это надмножество JavaScript, поэтому любой валидный JS-код является валидным TypeScript-кодом.
- Вы можете постепенно внедрять TypeScript в существующие проекты.
5. **Поддержка современных возможностей:**
- TypeScript поддерживает современные функции ES6+ (например, классы, модули, стрелочные функции), даже если целевая среда выполнения (например, старые браузеры) их не поддерживает. TypeScript компилирует их в совместимый код.
6. **Повышение надежности:**
- Статическая типизация и проверка типов снижают вероятность ошибок, связанных с неправильным использованием данных.
- Это особенно важно в больших и сложных приложениях.
7. **Поддержка ООП:**
- TypeScript предоставляет более мощные инструменты для объектно-ориентированного программирования, такие как интерфейсы, абстрактные классы, модификаторы доступа (`public`, `private`, `protected`).
8. **Экосистема и сообщество:**
- TypeScript активно развивается и поддерживается Microsoft. Он широко используется в индустрии, особенно в крупных проектах (например, Angular, React, Node.js).
TypeScript помогает писать более надежный, читаемый и поддерживаемый код, особенно в больших проектах. Он сочетает гибкость JavaScript с преимуществами статической типизации.
TypeScript также включает в себя транспилятор, который преобразует TypeScript-код в JavaScript.
Как работает TypeScript:
1. **Проверка типов:**
- TypeScript сначала проверяет типы в коде. Если есть ошибки (например, передача строки вместо числа), компилятор выдаст ошибку.
2. **Транспиляция:**
- После проверки типов TypeScript преобразует TypeScript-код в JavaScript. При этом он удаляет все типы и аннотации, так как они не нужны в рантайме.
3. **Генерация кода:**
- TypeScript генерирует JavaScript-код, который может быть выполнен в любой среде, поддерживающей JavaScript.
### Babel и TypeScript вместе
Babel и TypeScript могут использоваться вместе. Например:
1. **TypeScript для проверки типов:**
- TypeScript используется только для проверки типов, а транспиляцию выполняет Babel.
- Это позволяет использовать все возможности Babel (например, экспериментальные функции JavaScript).
2. **Babel для транспиляции:**
- Babel может транспилировать TypeScript-код с помощью плагина `@babel/preset-typescripts`. Этот плагин удаляет типы и преобразует код в JavaScript.