Обложка канала

Хекслет

3227 @hexlet_ru

Хекслет - это образовательная платформа для изучения языков программирования и является одной из ведущих онлайн-школ (второе место по популярности по данным карьерного портала Мой круг). Мы обучаем профессиям JS-frontend, JS-backend, PHP-программиста, Pyt

Хекслет

3 года назад
Открыть в
Что такое TypeScript и зачем он нужен TypeScript — это строго типизированный язык программирования, построенный на JavaScript. Он позволяет выявлять ошибки на этапе разработки, облегчает совместную работу в команде и улучшает производительность разработки в больших проектах. Он преобразуется в обычный JavaScript, поэтому код, написанный на TypeScript, может выполняться в любом современном браузере или окружении, поддерживающем JavaScript. В чем разница между TypeScript и JavaScript Бывший джавист ощутит невероятное облегчение, подключив TypeScript: наконец-то он может защитить себя от неопределенности JavaScript. А вот новичок придет в ужас от того, как усложняется код: одних только способов создать тип в TypeScript — семь штук. Разберем еще некоторые отличия этих языков. Типизация В отличие от JavaScript, у TypeScript строгая, статическая типизация. Это значит, что переменные, параметры функций и другие элементы кода должны быть объявлены с указанием типа данных. Статическая типизация позволяет выявлять ошибки на этапе разработки и делает код более надежным. Компиляция TypeScript требует этапа compile time — это сборка или компиляция. На этом этапе исходный код на TypeScript преобразуется в обычный JavaScript и также проверяются типы данных. JavaScript, который получили после сборки, выполняется непосредственно в браузере или на сервере. Дополнительные возможности TypeScript добавляет дополнительные функции, которых нет в JavaScript. Например, в TypeScript есть поддержка перечислений (`enum`), интерфейсов и модификаторов доступа. В целом оба языка широко используются веб-разработчиками, но TypeScript предлагает больше инструментов для разработки проектов, где важна надежность и масштабируемость кода. JavaScript остается более простым и гибким в использовании для создания динамических веб-приложений. Где используют TypeScript и в каких случаях TypeScript работает везде, где работает JavaScript, и доступен для всех его фреймворков — это сильно упрощает его использование. Чаще всего разработчики используют расширенный инструментарий TypeScript в крупных проектах. А для простых браузерных взаимодействий, маленьких интерактивных страничек и консольных утилит TypeScript подходит меньше, чем более простой и гибкий JavaScript. TypeScript используют не только во фронтенд-разработке, но и в бэкенде. Бэкенд на TypeScript обеспечивает обработку запросов от клиента, взаимодействие с базой данных, обработку данных, авторизацию и другие функциональности. Плюсы TypeScript Повышение производительности и обслуживаемости: благодаря статической типизации и другим возможностям, TypeScript помогает улучшить производительность разработчиков. Мощная система типов: это множество типов и множество операций над ними. Когда у нас есть мощная система типов, есть куча возможностей управлять, изменять эти типы на лету, создавая тем самым надежный и предсказуемый код. Расширенный инструментарий: TypeScript поддерживает классы, интерфейсы, наследование, полиморфизм и другие концепции объектно-ориентированного программирования. Минусы TypeScript Нагруженность кода: TypeScript требует добавления типов и аннотаций к существующему коду JavaScript. Это может потребовать значительного времени и усилий при конвертации проекта с JavaScript на TypeScript, а также приводит к небольшому снижению производительности и увеличению размера файлов. Сложность типов: как мы уже сказали ранее, система типов позволяет управлять ими, изменять их. Но часто встречается неправильное использование. Ограниченная экосистема: возможно, вы не найдете библиотеки или плагины с поддержкой TypeScript для некоторых менее популярных JavaScript-фреймворков или библиотек. Чтобы начать разбираться в TypeScript, рекомендуем ознакомиться с основами на Code Basics и в Хекслете
Documentation - Creating Types from Types

An overview of the ways in which you can create more types from existing types.

www.typescriptlang.org