TypeScript сделал этот проект веселым!!!

В прошлом я уже работал с Node.js, и мне нравилось работать в нем. Это было знакомо, потому что это был просто JavaScript, в отличие от того, чтобы теряться в изучении Back-End и потенциально изучать другой язык для выполнения работы (или освежать знания о языке). Однако моя главная претензия заключалась в том, что меня заставляли писать на ES5 JavaScript. Для тех, кто не знает, Node.js долгое время поддерживал только ES5. Новейшая версия Node поддерживает ES6, но на момент написания этой статьи не является LTS, поэтому я отказался от ее использования. Основная причина, по которой мне нравится JavaScript сейчас, — это множество возможностей, которые вы получаете при использовании ES6. Импорт/экспорт, шаблонные литералы, стрелочные функции и тому подобное сделали JavaScript более удобным в работе и написании. Кроме того, как Front-End инженер, я обычно использовал ES6 для написания кода React, и поэтому я обнаружил, что хотел бы просто писать на ES6 JavaScript.

И тут на помощь приходит TypeScript!

Для тех, кто не знает, TypeScript — это надмножество JavaScript, которое добавляет в него систему типов. TypeScript также имеет компилятор, который компилирует (или транспонирует ваш код, я всегда забываю) ваш код TypeScript в JavaScript (потому что такие вещи, как браузеры и Node, читают только JavaScript, а не TypeScript). В этом процессе вы можете указать компилятору скомпилировать ваш JavaScript-код в любую версию JavaScript, какую вы захотите, чтобы код, который вы в конечном итоге запустите, поддерживался средой, в которой вы его используете. Это означает, что вы можете использовать новейшие возможности JavaScript, а компилятор TypeScript просто сделает это в той версии JavaScript, которая вам нужна. Это сделало работу над проектом гораздо более увлекательной, потому что я получил доступ ко всем возможностям ES6, к которым я привык. Честно говоря, я не думаю, что использовал их в проекте довольно часто, но вы удивитесь, как часто вы пишете что-то, ожидая, что это будет работать, а оно просто не работает. Кроме того, если вы пишете на ES5 JavaScript, вам придется научиться использовать модули для импорта и экспорта, что может быть неприятно, если вы не привыкли их использовать (спойлер: я не привык).

Честно говоря, особенно для начинающих разработчиков TypeScript, иногда это может мешать. Было несколько случаев, когда я писал код, а TypeScript шлепал меня по руке и говорил «Нет!», когда я пытался сделать что-то, что мне казалось простым. Несколько раз во время написания валидаций TypeScript сообщал мне, что переменная, которую я пытался использовать, не соответствует типу того места, где я пытался ее использовать. Это также несколько раз возникало при попытке вернуть изображение после манипуляции с ним. Тем не менее, я ценю строгость, и это действительно помогает уберечь проект от потенциальных ошибок. Я уверен, что проект был бы намного хуже, если бы TypeScript не шлепал меня по рукам время от времени.

Вот ссылка на настройки компилятора, которые я использовал в проекте:

Вот ссылка на коммит при первоначальной настройке проекта: https://github.com/chadstewart/you-go-backend-project/commit/5f3f1c343061ae0d652233e1b7002d2b40258e88.

В следующей статье этой серии я столкнусь с главной проблемой проекта. Работа с изображениями Base64.

Оцените статью
Procodings.ru
Добавить комментарий