Rokasgrāmatas

Kas ir TypeScript? Vienkārša rokasgrāmata bez programmēšanas zināšanām

TypeScript ir JavaScript ar tipiem. Jūs pievienojat iezīmes, kas norāda, kāda veida datiem katrai vērtībai jābūt — skaitlim, tekstam, pasūtījumu sarakstam —, un TypeScript pārbauda jūsu kodu, vai nav neatbilstību, pirms tas vispār tiek palaists. TypeScript vietne to apraksta kā „JavaScript ar sintaksi tipiem”; tipi tiek noņemti, kad kods tiek pārvērsts parastā JavaScript, kas pēc tam darbojas visur, kur darbojas JavaScript.

Kāpēc tas ir svarīgi, veidojot ar AI

AI modeļi raksta kodu ātri, bet ātrs kods satur kļūdas: lauks customerName vienā failā un customer_name citā, cena nodota kā teksts, nevis skaitlis, funkcija izsaukta bez vērtības. Parastā JavaScript daudzas no šīm kļūdām parādās tikai tad, kad kāds noklikšķina uz nepareizās pogas.

TypeScript daudzas no tām notver agrāk — kamēr kods tiek rakstīts:

  • AI saņem tūlītēju atgriezenisko saiti. Tipu kļūdas norāda tieši uz nepareizo rindu, tāpēc aģents to var salabot, pirms jūs to redzat.
  • Izmaiņas ir drošākas. Pārdēvējiet lauku, un TypeScript atzīmē katru vietu, kur vēl tiek izmantots vecais nosaukums.
  • Kods pats sevi paskaidro. Tipi dokumentē, ko funkcija sagaida un atgriež, kas noderēs jums, AI un jebkuram izstrādātājam, kas to vēlāk strādās.
  • Redaktori kļūst gudrāki. Automātiskā pabeigšana un „iet uz definīciju” darbojas labāk, jo redaktors zina, kas ir katra vērtība.

Tas ir liels iemesls, kāpēc daudzi AI lietotņu veidotāji pēc noklusējuma izvēlas TypeScript.

Ikdienas salīdzinājums

Padomājiet par preču noliktavu ar iezīmētām nodalījumu zonām. Katrai zonai ir zīme: „Tikai paletes”, „Dzesējamās preces”, „Maks. 500 kg”. Kad ierodas piegāde, pie durvīm pārbaudītājs salīdzina preces ar zīmi. Saldēta zivs, kas paredzēta sausās preču zonai, tiek apturēta pie durvīm, nevis atklāta nedēļu vēlāk, kad jau smaka.

TypeScript ir pārbaudītājs pie durvīm. Tipi ir zīmes. Pārbaude notiek pirms tam, kad preces — jūsu kods — tiek nodotas lietošanā. Un, kad viss ir savā vietā, zīmes tiek noņemtas: darbojošajā JavaScript vairs nav neviena tipa.

Kā darbojas TypeScript

  1. Jūs (vai AI) rakstāt .ts vai .tsx failus — TypeScript ar tipu iezīmēm.
  2. Tipu pārbaudītājs nolasa kodu un ziņo par neatbilstībām kā kļūdām redaktorā vai būvēšanā.
  3. Būvēšanas solis noņem tipus, ģenerējot parastu JavaScript.
  4. JavaScript darbojas pārlūkprogrammā vai serverī (Node.js, Deno, Bun).

Svarīgas sekas: TypeScript pārbauda kodu, ko uzrakstījāt, nevis datus, kas nonāk, kamēr lietotne darbojas. Ja ārējais API atsūta kaut ko negaidītu, TypeScript to neredz, kamēr nepievienojat validāciju izpildes laikā.

Darba piemērs: rezervācijas veidlapa

Pieņemsim, ka veidojat rezervāciju lietotni frizētavai. Šeit ir tipa apraksts rezervācijai:

type Booking = {
  id: number;
  customerEmail: string;
  service: "haircut" | "colour" | "blow-dry";
  startsAt: Date;
  price: number;
  notes?: string; // ? nozīmē, ka lauks nav obligāts
};

Un funkcija, kas aprēķina depozītu:

function depositFor(booking: Booking): number {
  return booking.price * 0.2;
}

Tagad paskatieties, ko TypeScript notver.

Nepareizi uzrakstīts lauks.

depositFor({ id: 1, customerEmail: "lena@example.com", service: "haircut",
  startsAt: new Date(), prise: 40 });

TypeScript ziņo, ka prise nav zināma īpašība un price trūkst. Parastā JavaScript tas klusi aprēķinātu depozītu NaN (nav skaitlis).

Nepareizs vērtības veids.

const booking: Booking = { ...otherFields, price: "40" };

TypeScript ziņo, ka tekstu nevar izmantot tur, kur gaidīts skaitlis. Bez tā "40" * 0.2 gadījumā nostrādā, bet "40" + 5 dod "405" — tāda veida kļūda, kas parādās rēķinā.

Pakalpojums, kas neeksistē.

const booking: Booking = { ...otherFields, service: "perm" };

TypeScript ziņo, ka "perm" nav atļauts pakalpojums. Kad frizētava vēlāk pievieno jaunu pakalpojumu, jūs to pievienojat tipā, un TypeScript parāda katru vietu, kurai jāatjaunina — cenu saraksts, veidlapa, kalendāra krāsas.

Ko tas nevar notvert. Ja rezervācijas veidlapa no pārlūkprogrammas uz serveri nosūta price: "40", serverī TypeScript to izpildes laikā neredz. Tāpēc labi veidotas lietotnes arī validē ienākošos datus, bieži ar validācijas bibliotēku, kas pārbauda struktūru un pārvērš to pareizā Booking.

TypeScript pret JavaScript

JavaScriptTypeScript
Kas tas irValoda, ko palaiž pārlūkprogrammasJavaScript plus tipu sintakse
Darbojas tieši pārlūkprogrammāsJāVispirms tiek pārvērsts JavaScript
Notver tipu kļūdasIzpildes laikā, ja vispārRakstīšanas laikā, pirms palaišanas
IestatīšanaNav nepieciešamaBūvēšanas solis (parasti to apstrādā rīki, piemēram, Vite vai Next.js)
PiemērotsMaziem skriptiem, ātriem eksperimentiemLietotnēm, kas augs un mainīsies
Failu paplašinājumi.js, .jsx.ts, .tsx

Biežāk lietoti termini

TerminsKo tas nozīmē
TipsApraksts tam, kas vērtība var būt: skaitlis, teksts, konkrēta objekta forma.
Tipa anotācijaIezīme, kas ierakstīta kodā, piemēram, price: number.
Tipa secināšanaTypeScript pats nosaka tipu bez iezīmes.
Interfeiss / tipa aliasNosaukts objekta formas apraksts, piemēram, Booking.
Savienības tipsVērtība, kas var būt viena no vairākām iespējām, piemēram, "haircut" | "colour".
Neobligāta īpašībaLauks, kas var nebūt, atzīmēts ar ?.
anyTips, kas izslēdz pārbaudi vērtībai — avārijas izeja, ko lietot taupīgi.
Tipa kļūdaTypeScript ziņojums, ka kaut kas neatbilst.
Kompilēt / transpilētTypeScript pārvēršana JavaScript.
.tsxTypeScript fails, kas satur JSX un tiek izmantots React lietotnēs.
tsconfig.jsonIestatījumu fails, kas nosaka, cik stingri TypeScript pārbauda projektu.
Validācija izpildes laikāReālo ienākošo datu pārbaude, kamēr lietotne darbojas.

Biežākās kļūdas un nepareizi priekšstati

  • „TypeScript padara kodu bez kļūdām.” Tas notver neatbilstības datu formā, nevis nepareizu loģiku. 2% depozīts 20% vietā tipu pārbaudi iztur.
  • „Tipi pasargā mani no nepareiziem ievades datiem.” Tipi izpildes laikā pazūd. Validējiet datus no lietotājiem, veidlapām un API.
  • any visur. Kad AI iestrēgst, tas var pieķerties pie any vai // @ts-ignore, lai apklusinātu kļūdas. Tas slēpj problēmas, nevis tās novērš.
  • Tipu kļūdu ignorēšana, jo priekšskatījums darbojas. Daži rīki joprojām palaiž kodu ar tipu kļūdām. Kļūdas joprojām ir kļūdas, kas gaida, lai notiktu.
  • „TypeScript ir lēnāks.” Tipi tiek noņemti pirms palaišanas; darbojošais JavaScript ir būtībā tāds pats.
  • „Tas ir tikai lielām komandām.” Arī vienas personas veidotāji gūst labumu, īpaši, ja lielāko daļu izmaiņu veic AI.

Ko prasīt no sava AI veidotāja

  • „Izmantojiet TypeScript ar ieslēgtu stingro režīmu.”
  • „Definējiet kopīgus tipus mūsu galvenajiem ierakstiem — Customer, Booking, Invoice — un izmantojiet tos gan priekšpusē, gan aizmugurē.”
  • „Neizmantojiet any vai @ts-ignore, lai apietu kļūdas; labojiet pamatproblēmu un pastāstiet, kas tā bija.”
  • „Validējiet visus ienākošos datus serverī, ne tikai ar tipiem.”
  • „Palaidiet tipu pārbaudītāju un izlabojiet katru kļūdu, pirms paziņojat, ka tas ir gatavs.”
  • „Kad pārdēvējat lauku, atjauniniet katru vietu, ko TypeScript atzīmē.”
  • „Paskaidrojiet šo tipu kļūdu vienkāršā valodā.”

Lai uzzinātu vairāk par AI radītā rezultāta pārbaudi, skatiet kā pārskatīt AI ģenerētu kodu un kā atkļūdot ar AI veidotu lietotni.

TypeScript Mythex

Ja neprasāt kaut ko konkrētu, Mythex jaunus projektus sāk ar Vite + React + TypeScript + Tailwind. Koda redaktorā ir valodas atbalsts — pabeigšana, diagnostika un iešana uz definīciju TypeScript un JavaScript un citām valodām —, tāpēc tipu kļūdas ir redzamas kodā, nevis tikai priekšskatījumā. Redaktors Free plānā ir tikai lasāms, bet Pro plānā pilnībā rediģējams. Pirmajā uzvednē joprojām varat prasīt citu iestatījumu; dokumentācijas lapa par kā tiek izvēlēts tehnoloģiju steks paskaidro, kā, un koda redaktora dokumentācija apraksta, ko redaktors parāda.

Jautājumi

Kas ir TypeScript vienkāršiem vārdiem?

TypeScript ir JavaScript ar tipiem. Jūs iezīmējat, kāda veida datiem katrai vērtībai jābūt — piemēram, skaitlim, tekstam vai klienta ierakstam —, un TypeScript pārbauda kodu, vai nav neatbilstību, pirms tas tiek palaists. Pēc tam kods tiek pārvērsts parastā JavaScript.

Vai TypeScript ir cita valoda nekā JavaScript?

Tā ir JavaScript paplašinājums: JavaScript plus papildu sintakse tipiem. TypeScript vietne to apraksta kā JavaScript ar sintaksi tipiem. Kad kods tiek pārvērsts JavaScript, lai to palaistu, tipi tiek noņemti.

Kāpēc AI lietotņu veidotāji izmanto TypeScript?

Tipi dod AI un ap to esošajiem rīkiem ātru veidu, kā notvert kļūdas, piemēram, teksta nodošanu tur, kur gaidīts skaitlis, vai lauka nosaukuma pārrakstīšanu. Kļūdas parādās, pirms lietotājs tās sastop, tāpēc AI ģenerētu kodu ir vieglāk pārbaudīt un mainīt.

Vai TypeScript padara lietotni bez kļūdām?

Nē. Tas notver veselu kļūdu klasi par datu struktūru, bet ne nepareizu biznesa loģiku, un tas nepārbauda datus, kas lietotājiem vai API nonāk izpildes laikā, ja vien nepievienojat validāciju.

Kas izstrādā TypeScript?

TypeScript ir atvērtā koda valoda, ko izstrādā Microsoft. Tā darbojas visur, kur darbojas JavaScript, tostarp pārlūkprogrammās, Node.js, Deno un Bun.

Mythex · Pricing · Veidojiet jebko ar AI · Tīmekļa vietņu un lietotņu veidnes · Mythex salīdzinājumā · AI lietotņu veidošanas glosārijs · Bezmaksas rīki lietotņu veidošanai ar AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)