Programování

Deno 1.0 dorazí, aby vyzval Node.js

Deno, běhové prostředí JavaScriptu / TypeScript slibující silnější zabezpečení a vynikající vývojářské prostředí pro Node.js, dosáhlo stavu vydání 1.0 13. května 2020.

Vytvořil Ryan Dahl, který také vytvořil Node.js, byl Deno navržen tak, aby řešil řadu nedostatků Node, zejména bezpečnost. (Deno je přesmyčka Node.) Projekt se stal veřejným asi před dvěma lety.

Na rozdíl od Node Deno nepoužívá správce balíčků NPM; místo toho načte moduly odkazem na adresy URL nebo cesty k souborům. Filozofií společnosti Deno je sloužit jako produktivní a bezpečné skriptovací prostředí pro moderního programátora. Může to být náhrada za obslužné skripty, které mohou být napsány v Pythonu nebo Bashi. Pokyny pro instalaci Deno najdete na deno.land.

Mezi hlavní body Deno patří:

  • Deno je běhové prostředí pro provádění JavaScriptu a TypeScriptu mimo prohlížeč v jediném spustitelném souboru (denocode).
  • Deno je ve výchozím nastavení zabezpečeno, pokud není výslovně povoleno, bez přístupu k souborům, síti nebo prostředí.
  • Deno umírá na nevychytané chyby.
  • Všechny asynchronní akce v Denu vrátí slib.
  • Skripty Deno lze spojit do jednoho souboru JavaScriptu.
  • Deno má vestavěný inspektor závislostí (deno infocode) a formátovač kódu.
  • Deno poskytuje sadu auditovaných standardních modulů.
  • Deno byl navržen jako řada přepravek Rust, které umožňují integraci v různých vrstvách.

Při vysvětlování důvodů pro Deno, Dahl a spoluautoři Bartuk Iwanczuk a Bert Belder napsali v příspěvku na blogu, že zatímco JavaScript je přirozenou volbou pro dynamické jazykové nástroje, Node byl navržen v roce 2009, kdy byl JavaScript mnohem jiným jazykem. Ve výsledku může být vytváření aplikací na Node náročným úsilím.

"Cítíme, že prostředí JavaScriptu a okolní softwarové infrastruktury se změnilo natolik, že se vyplatilo zjednodušit," napsali tvůrci Deno. "Hledáme zábavné a produktivní skriptovací prostředí, které lze použít pro širokou škálu úkolů."

$config[zx-auto] not found$config[zx-overlay] not found