Node.js менен TypeScript
Чыныгы Node тиркемесине статикалык типтердин катмарын кошуңуз жана анын эмне кыларын, эмнени кылбасын түшүнүңүз
tsc алардын ырааттуулугун далилдейт, андан кийин бардык типтерди өчүрүп, Node аткара турган кадимки JavaScript чыгарат. Бир да тип аткаруу учуруна чейин жетпейт -- алардын бүт баасы кармалган каталарда, редактордун акылдуу жардамында жана деплойго чейин коркпой рефакторинг кылууда.
- TypeScript Node тиркемесине эмне кошорун жана, чынын айтканда, эмнени кылбасын түшүндүрө аласыз;
- заманбап Node 18+ сервиси үчүн туура
tsconfig.jsonтүзө аласыз; tscаркылуу куруу мененtsx/ts-nodeаркылуу түз иштетүүнүн ортосунан аңдап тандай аласыз;- Express иштеткичтерин, параметрлерди, суроо-талаптын телесин жана middleware типтештире аласыз, ошондой эле
Requestкеңейте аласыз; - коопсуз, механикалык рефакторингдерде компиляторго таяна аласыз.
1. Node тиркемесине эмне үчүн типтерди кошуу керек
Сиз Express менен REST API'лерди курдуңуз, SQL жана MongoDB туташтырдыңыз, JWT бердиңиз жана Jest тесттерин жаздыңыз. Таза JavaScript'те ар бир чек ара -- суроо-талаптын телеси, базанын сабы, чөйрө өзгөрмөсү -- демейде any тибинде болот: маалыматтын формасы код иштегенде гана билинет, ал эми user.emial сыяктуу ката унчукпай undefined болуп калат. TypeScript бул табууну компиляция учуруна жылдырат.
Сервер коду үчүн конкреттүү пайдасы:
- Каталар деплойго чейин кармалат -- талаалардагы каталар, аргументтердин туура эмес тартиби,
undefinedкайтарып, сиз аны иштеп чыкпаган функция. - Акылдуу редактор --
req,res, сиздин сервис объекттериңиз жана үчүнчү тараптын китепканалары боюнча так автотолуктоо; аныктамага өтүү жана камтылган документтер. - Өзүн-өзү документтеген келишимдер -- суроо-талаптын телеси үчүн
interface-- бул документтин өзү, жана ал эскирбейт, анткени компилятор аны текшерет. - Коркпогон рефакторингдер -- талааны атын өзгөртүңүз же кол тамганы алмаштырыңыз, компилятор өзгөртүү керек болгон бардык жерди тизмелейт.
Салыштыруу. TypeScript -- бул архитектордун чиймесин текшерүү, курулуштагы инспектор эмес. Чиймени текшерүү пландын өзү карама-каршы эместигин кепилдейт -- дубалга ачылган эшик жок, эч нерсе көтөрбөгөн устун жок. Бирок ал алынып келген кирпичтердин чыныгы экенин айтпайт. Кирпичтер (кирүүчү суроо-талаптар) үчүн сиз дагы эле эшикке инспектор коесуз: аткаруу учурундагы текшерүү.