Гарын авлагууд

TypeScript гэж юу вэ? Программист биш хүмүүст зориулсан энгийн гарын авлага

TypeScript бол төрөлтэй JavaScript юм. Утга бүр ямар төрлийн өгөгдөл байх ёстойг — тоо, текст, захиалгын жагсаалт гэх мэт — шошгоор тэмдэглэдэг, мөн TypeScript нь кодыг ажиллахаас өмнө таарахгүй байдлыг шалгадаг. TypeScript-ийн сайт үүнийг «төрлийн синтакстай JavaScript» гэж тодорхойлдог; энгийн JavaScript болгон хөрвүүлэхэд төрлүүд авагдаж, дараа нь JavaScript ажилладаг бүх газар ажиллана.

AI-аар бүтээхдээ яагаад чухал вэ

AI загварууд код хурдан бичдэг, хурдан код алдаатай байдаг: нэг файлд customerName, нөгөөд customer_name гэсэн талбар, үнийг тооны оронд текстээр дамжуулах, утгагүй функц дуудах гэх мэт. Энгийн JavaScript-д эдгээр алдааны ихэнх нь хэн нэгэн буруу товч дарах үед л гарч ирдэг.

TypeScript эдгээрийн олонхыг кодыг бичиж байх үед, илүү эрт олдог:

  • AI шууд санал хүлээн авдаг. Төрлийн алдаа яг буруу мөрийг заадаг тул агент таныг харахаас өмнө засаж чадна.
  • Өөрчлөлт аюулгүй болно. Талбарын нэрийг өөрчилбөл TypeScript хуучин нэрийг хэрэглэсэн бүх газрыг тэмдэглэнэ.
  • Код өөрөө тайлбарлана. Төрлүүд функц юу хүлээж, юу буцаахыг баримтжуулдаг; энэ нь та, AI болон дараа нь үүн дээр ажиллах аливаа программистад тустай.
  • Редактор ухаалаг болно. Автоматаар дуусгах, «тодорхойлолт руу очих» илүү сайн ажилладаг, учир нь редактор утга бүрийн төрлийг мэддэг.

Энэ бол олон AI аппликейшн бүтээгч TypeScript-г анхдагчаар ашигладагийн гол шалтгаан.

Өдөр тутмын жишээ

Шошготой тавиуртай агуулахыг төсөөлөөд үз. Тавиур бүр тэмдэгтэй: «Зөвхөн палет», «Хөргөлттэй», «Дээд тал нь 500 кг». Бараа ирэхэд хаалган дээрх шалгагч барааг тэмдэгтэй нь харьцуулдаг. Хөлдөөсөн загасыг хуурай барааны тавиур руу явуулбал хаалган дээр нь зогсоодог, долоо хоногийн дараа үнэртэж мэдэгдэхгүй.

TypeScript бол хаалган дээрх шалгагч. Төрлүүд бол тэмдэгт. Шалгалт нь бараа — таны код — хэрэглэгдэхээс өмнө явагддаг. Бүх зүйл байрандаа орсны дараа тэмдэгтүүдийг авдаг: ажиллаж буй JavaScript-д төрөл үлдэхгүй.

TypeScript хэрхэн ажилладаг вэ

  1. Та (эсвэл AI) .ts эсвэл .tsx файл бичдэг — TypeScript, төрлийн шошготой.
  2. Төрлийн шалгагч кодыг уншиж, таарахгүй байдлыг редактор эсвэл build дээр алдаа болгон мэдээлдэг.
  3. Build алхам төрлүүдийг авч, энгийн JavaScript гаргадаг.
  4. JavaScript хөтөч дээр эсвэл серверт (Node.js, Deno, Bun) ажилладаг.

Нэг чухал үр дагавар: TypeScript нь аппыг ажиллаж байх үед ирдэг өгөгдөлд биш, таны бичсэн кодыг шалгадаг. Гадны API гэнэтийн зүйл буцаавал, та ажиллах үеийн баталгаажуулалт нэмээгүй бол TypeScript үүнийг хардаггүй.

Жишээ: цаг захиалах маягт

Үсчний газарт зориулсан цаг захиалгын апп бүтээж байна гэж бод. Захиалгыг дүрслэх төрөл:

type Booking = {
  id: number;
  customerEmail: string;
  service: "haircut" | "colour" | "blow-dry";
  startsAt: Date;
  price: number;
  notes?: string; // ? тэмдэг нь сонголттой гэсэн утгатай
};

Урьдчилгаа мөнгийг тооцдог функц:

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

Одоо TypeScript юуг олж байгааг харъя.

Буруу бичигдсэн талбар.

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

TypeScript prise гэдэг нь мэдэгдэж буй шинж чанар биш, price дутуу гэж мэдээлнэ. Энгийн JavaScript-д энэ нь чимээгүй NaN (тоо биш) урьдчилгаа тооцох байсан.

Буруу төрлийн утга.

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

TypeScript тооны оронд текст ашиглах боломжгүйг мэдээлнэ. Үүнгүйгээр "40" * 0.2 санамсаргүй зөв ажиллах ч, "40" + 5 нь "405" болдог — нэхэмжлэх дээр гарч ирдэг төрлийн алдаа.

Байхгүй үйлчилгээ.

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

TypeScript "perm" зөвшөөрөгдсөн үйлчилгээний нэг биш гэдгийг мэдээлнэ. Дараа нь салон perm нэмбэл та төрөлд нэмнэ, TypeScript шинэчлэх шаардлагатай газар бүрийг — үнийн жагсаалт, маягт, календарийн өнгө — харуулна.

Юуг олж чадахгүй вэ. Хэрэв захиалгын маягт price: "40"-ийг хөтчөөс серверт илгээвэл, серверийн TypeScript үүнийг ажиллах үед харахгүй. Тийм учраас сайн бүтээгдсэн аппууд ирж буй өгөгдлийг мөн баталгаажуулдаг, ихэвчлэн хэлбэрийг шалгаж зөв Booking болгон хөрвүүлдэг баталгаажуулалтын сангаар.

TypeScript болон JavaScript-ийг харьцуулах

JavaScriptTypeScript
Юу вэХөтөчүүдийн ажиллуулдаг хэлJavaScript нэмээд төрлийн синтакс
Хөтөч дээр шууд ажилланаТиймЭхлээд JavaScript болгон хөрвүүлнэ
Төрлийн алдааг олдогАжиллах үед, олдволБичиж байхад, ажиллахаас өмнө
ТохиргооБайхгүйBuild алхам (ихэвчлэн Vite эсвэл Next.js гэх мэт хэрэгслээр)
ТохиромжтойЖижиг скриптүүд, хурдан туршилтӨсч, өөрчлөгдөх аппууд
Файлын өргөтгөл.js, .jsx.ts, .tsx

Гол нэр томъёо

Нэр томъёоУтга
Төрөл (type)Утга юу байж болохыг тодорхойлох: тоо, текст, тодорхой объектын хэлбэр.
Төрлийн тэмдэглэгээКодонд бичсэн шошго, жишээ нь price: number.
Төрлийн дүгнэлт (inference)TypeScript шошгогүйгээр төрлийг өөрөө олох.
Interface / type aliasОбъектын хэлбэрийн нэртэй тодорхойлолт, жишээ нь Booking.
Union төрөлХэд хэдэн сонголтын аль нэг байж болох утга, жишээ нь "haircut" | "colour".
Сонголттой шинж чанарДутуу байж болох талбар, ? тэмдгээр тэмдэглэгддэг.
anyУтгын шалгалтыг унтраадаг төрөл — цөөн ашиглах ёстой гарц.
Төрлийн алдааTypeScript-ийн таарахгүй зүйлийн тухай мэдэгдэл.
Compile / transpileTypeScript-ийг JavaScript болгон хөрвүүлэх.
.tsxJSX агуулсан TypeScript файл, React аппуудад ашиглагддаг.
tsconfig.jsonTypeScript төслийг хэр чангаар шалгахыг тохируулах файл.
Ажиллах үеийн баталгаажуулалтАппыг ажиллаж байх үед ирж буй жинхэнэ өгөгдлийг шалгах.

Түгээмэл алдаа, буруу ойлголт

  • «TypeScript кодыг алдаагүй болгодог.» Энэ нь өгөгдлийн хэлбэрийн таарахгүй байдлыг олдог, буруу логикийг биш. 20%-ийн оронд 2% урьдчилгаа нь төрлийн шалгалтаар тэнцэнэ.
  • «Төрлүүд намайг буруу оролтоос хамгаална.» Төрлүүд ажиллах үед алга болдог. Хэрэглэгч, маягт, API-аас ирсэн өгөгдлийг баталгаажуул.
  • Бүх газар any. AI гацахад алдааг дарахын тулд any эсвэл // @ts-ignore руу хандаж болно. Энэ нь асуудлыг засах биш нуудаг.
  • Урьдчилан харах ажиллаж байгаа тул төрлийн алдааг үл тоох. Зарим хэрэгсэл төрлийн алдаатай кодыг ажиллуулсаар байдаг. Алдаанууд нь гарч ирэх гэж буй баг хэвээр.
  • «TypeScript удаан.» Төрлүүд ажиллахаас өмнө авагддаг; ажиллах JavaScript нь үндсэндээ адил.
  • «Зөвхөн том багт зориулагдсан.» Ганцаараа бүтээгчид ч ашигладаг, ялангуяа AI ихэнх засварыг хийж байгаа үед.

AI builder-таасаа юу хүсэх вэ

  • «TypeScript-ийг strict горимтойгоор ашигла.»
  • «Гол бүртгэлүүдийнхээ — Customer, Booking, Invoice — хуваалцсан төрлүүдийг тодорхойл, frontend болон backend дээр хоёуланд нь ашигла.»
  • «Алдааг давахын тулд any эсвэл @ts-ignore бүү ашигла; үндсэн асуудлыг засаад юу байсныг надад хэл.»
  • «Бүх ирж буй өгөгдлийг серверт баталгаажуул, зөвхөн төрлөөр бүү хязгаар.»
  • «Төрлийн шалгагчийг ажиллуулж, дууссан гэж хэлэхээс өмнө бүх алдааг засаарай.»
  • «Талбарын нэрийг өөрчилбөл TypeScript тэмдэглэсэн газар бүрийг шинэчил.»
  • «Энэ төрлийн алдааг энгийн үгээр тайлбарла.»

AI-ийн бүтээсэн зүйлийг шалгах талаар дэлгэрэнгүйг AI-ийн бүтээсэн кодыг хэрхэн шалгах вэ болон AI-аар бүтээсэн аппыг хэрхэн дебаг хийх вэ хуудаснаас үзнэ үү.

Mythex дээрх TypeScript

Тодорхой зүйл хүсээгүй бол Mythex шинэ төслүүдээ Vite + React + TypeScript + Tailwind дээр эхэлдэг. Код засварлагч хэл ойлголтыг агуулдаг — TypeScript болон JavaScript-д автоматаар дуусгах, оношлогоо, тодорхойлолт руу очих гэх мэт — тиймээс төрлийн алдаа зөвхөн урьдчилан харахад биш, кодонд харагддаг. Засварлагч Free дээр зөвхөн унших, Pro дээр бүрэн засах боломжтой. Эхний зааварт өөр тохиргоо хүсч болно; технологийг хэрхэн сонгодог docs хуудсанд тайлбарласан, кодын засварлагчийн docs нь засварлагчид юу харуулдгийг тайлбарладаг.

Асуултууд

TypeScript гэж энгийнээр юу вэ?

TypeScript бол төрөлтэй JavaScript юм. Утга бүр ямар төрлийн өгөгдөл байх ёстойг — тоо, текст эсвэл харилцагчийн бүртгэл гэх мэтийг — шошголдог, TypeScript нь код ажиллахаас өмнө таарахгүй байдлыг шалгадаг. Дараа нь энгийн JavaScript болгон хөрвүүлэгдэнэ.

TypeScript нь JavaScript-ээс өөр хэл үү?

Энэ нь JavaScript-ийн өргөтгөл: JavaScript дээр төрлийн нэмэлт синтакс. TypeScript-ийн сайтад үүнийг «төрлийн синтакстай JavaScript» гэж тодорхойлдог. Код ажиллуулахын тулд JavaScript болгон хөрвүүлэх үед төрлүүд устгагдана.

Яагаад AI аппликейшн бүтээгчид TypeScript ашигладаг вэ?

Төрлүүд нь AI-д болон түүний эргэн тойрны хэрэгслүүдэд алдааг хурдан олох арга өгдөг, жишээ нь тоо хүлээж байгаа газарт текст дамжуулах эсвэл талбарын нэрийг буруу бичих. Алдаа хэрэглэгчид тулгарахаас өмнө гарч ирдэг тул AI-аар бичигдсэн кодыг шалгаж, өөрчлөхөд хялбар болдог.

TypeScript аппыг алдаагүй болгодог уу?

Үгүй. Энэ нь өгөгдлийн хэлбэрийн тухай бүхэл бүтэн төрлийн алдааг олдог, гэхдээ буруу бизнесийн логикийг олдоггүй, мөн хэрэглэгч эсвэл API-аас ирэх ажиллах үеийн өгөгдлийг баталгаажуулалт нэмээгүй бол шалгадаггүй.

TypeScript-ийг хэн бүтээсэн бэ?

TypeScript бол Microsoft-ийн хөгжүүлсэн нээлттэй эх кодтой хэл юм. Хөтчүүд, Node.js, Deno, Bun зэрэг JavaScript ажилладаг бүх газар ажиллана.

Mythex · Pricing · AI-аар юуг ч бүтээ · Вэбсайт болон аппын загварууд · Mythex-ийн харьцуулалт · AI-аар апп бүтээх тайлбар толь · 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ų Latviešu Македонски മലയാളം मराठी 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 简体中文 繁體中文(香港) 繁體中文(台灣)