Deno JavaScript платформын хувилбар 1.16

Deno 1.16 JavaScript платформ нь JavaScript болон TypeScript дээр бичигдсэн програмуудыг дангаар нь (хөтөч ашиглахгүйгээр) гүйцэтгэхэд зориулагдсан. Төслийг Node.js-ийн зохиолч Райан Дал боловсруулсан. Платформын код нь Rust програмчлалын хэл дээр бичигдсэн бөгөөд MIT лицензийн дагуу түгээгддэг. Линукс, Windows болон macOS-д зориулж бэлэн бүтээцүүдийг бэлтгэдэг.

Төсөл нь Node.js платформтой төстэй бөгөөд V8 JavaScript хөдөлгүүрийг ашигладаг боловч Node.js-ийн зохиогчийн хэлснээр энэ нь өмнөх үеийн архитектурын хэд хэдэн алдааг засч залруулж, дараах нюансаараа ялгаатай юм. :

  • Rust хэлийг үндсэн хэл болгон ашиглах нь хөгжүүлэгчдийн үзэж байгаагаар санах ойн доод түвшний менежменттэй холбоотой эмзэг байдлын эрсдлийг бууруулдаг (буферийн хэт ачаалал, үнэгүй ашиглах гэх мэт);
  • Дено нь npm багц менежер болон package.json-г ашигладаггүй бөгөөд энэ нь суулгах модулийн URL эсвэл замыг зааж өгөх замаар хэрэглэгчээс модулиудыг суулгахыг шаарддаг. Гэсэн хэдий ч төсөл нь гуравдагч талын модулиудтай ажиллах ажлыг хялбаршуулах хэд хэдэн хэрэгслийг санал болгодог;
  • Програмууд хамгаалагдсан хязгаарлагдмал орчинд тусад нь ажилладаг бөгөөд тодорхой зөвшөөрөлгүйгээр сүлжээ, орчны хувьсагч болон файлын системд хандах эрхгүй;
  • Архитектур нь Deno систем болон ердийн хөтөч дээр ажиллах боломжтой бүх нийтийн вэб програмуудыг үүсгэх боломжийг олгодог;
  • "ES модулиудыг" ашиглаж байгаа бөгөөд шаардлагатай () дэмжлэг байхгүй;
  • Программист зохицуулаагүй вэб програмын аливаа алдаа нь түүнийг албадан зогсооход хүргэдэг;
  • JavaScript-ээс гадна TypeScript-ийн дэмжлэг;
  • Ашиглахад бэлэн платформын бүрэн хэмжээ нь 84 MB (zip архивт - 31 MB) нэг гүйцэтгэгдэх файл хэлбэрээр;
  • Энэхүү хэрэгсэл нь хамаарал болон форматын кодыг шийдвэрлэх системийг санал болгодог;
  • Өндөр гүйцэтгэлтэй програмууд дээр анхаарлаа төвлөрүүл.

Дино үйл явдалд суурилсан архитектурт суурилсан өндөр гүйцэтгэлтэй програмуудыг бүтээхэд зориулагдсан Tokio платформыг ашиглан хүсэлтийг блоклохгүйгээр боловсруулдаг. Деногийн суулгасан HTTP серверийг төрөлх TCP залгуурууд дээр TypeScript дээр суулгасан нь сүлжээний үйл ажиллагааны гүйцэтгэлд эерэгээр нөлөөлдөг нь бас сонирхолтой юм.

Шинэ хувилбарт дараахь зүйлийг тэмдэглэв.

  • Гүйцэтгэлийг оновчтой болгох (4 засвар);
  • 15 гаруй алдааг зассан, ялангуяа TLS клиент одоо HTTP/2-г дэмждэг, кодчилолын дэд систем нь нэмэлт кодчилолын тэмдгийг дэмждэг гэх мэт;
  • Өмнө нь туршиж байсан Deno.startTls болон Deno.TestDefinition.permissions дэд системүүдийг тогтворжуулж, V8 JS хөдөлгүүрийг 9.7 хувилбар болгон шинэчилж, React 17 JSX хувиргалтыг дэмжсэн хорь гаруй шинэлэг зүйлүүдийг дурдаж болно.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх