Platforma JavaScript Deno w wersji 1.16

Deno 1.16, platforma JavaScript przeznaczona do samodzielnego (bez przeglądarki) uruchamiania aplikacji napisanych w JavaScript i TypeScript, została wydana. Projekt rozwija Ryan Dahl, twórca Node.js. Kod platformy jest napisany w języku programowania Rust i jest rozpowszechniany na licencji MIT. Dostępne są gotowe do użycia kompilacje. Linux, Windows и macOS.

Projekt jest podobny do platformy Node.js i tak jak ona wykorzystuje silnik JavaScript V8. Jednak, jak twierdzi autor Node.js, koryguje on szereg błędów architektonicznych swojego poprzednika i różni się od niego następującymi niuansami:

  • Wykorzystanie Rust jako głównego języka, co według twórców zmniejsza ryzyko wystąpienia luk w zabezpieczeniach związanych z zarządzaniem pamięcią niskiego poziomu (przepełnienie bufora, użycie pamięci po zwolnieniu itp.);
  • Deno nie korzysta z menedżera pakietów npm ani pliku package.json, zamiast tego wyświetla użytkownikowi monit o zainstalowanie modułów poprzez podanie adresu URL lub ścieżki do modułu, który ma zostać zainstalowany. Jednakże projekt oferuje szereg narzędzi ułatwiających pracę z modułami innych firm;
  • Aplikacje działają oddzielnie w środowiskach testowych i bez wyraźnych uprawnień nie mają dostępu do sieci, zmiennych środowiskowych ani systemu plików;
  • Architektura uwzględnia możliwość tworzenia uniwersalnych aplikacji webowych, mogących działać zarówno w systemie Deno, jak i w zwykłej przeglądarce;
  • Korzystanie z „modułów ES” i brak obsługi require();
  • Wszelkie błędy w aplikacji internetowej, na które nie pozwoli programista, spowodują jej wymuszone zamknięcie;
  • Obsługa TypeScript oprócz JavaScript;
  • Pełny rozmiar gotowej do użycia platformy wynosi 84 MB (31 MB w archiwum zip) w postaci jednego pliku wykonywalnego;
  • Pakiet zawiera system rozwiązywania zależności i formatowania kodu;
  • Skup się na aplikacjach o wysokiej wydajności.

Dino przetwarza żądania w trybie nieblokującym, wykorzystując platformę Tokio, przeznaczoną do tworzenia wysoko wydajnych aplikacji bazujących na architekturze sterowanej zdarzeniami. Interesujące jest również to, że wbudowany serwer HTTP komputera Deno został zaimplementowany w języku TypeScript na bazie natywnych gniazd TCP, co korzystnie wpływa na wydajność operacji sieciowych.

W nowej wersji wskazano:

  • Optymalizacja wydajności (4 poprawki);
  • Naprawiono ponad 15 błędów, w szczególności: klient TLS obsługuje teraz protokół HTTP/2, podsystem kodowania obsługuje dodatkowe znaki kodowania itp.;
  • Ponad dwadzieścia innowacji, wśród których możemy wymienić stabilizację wcześniej testowanych podsystemów Deno.startTls i Deno.TestDefinition.permissions, aktualizację silnika V8 JS do wersji 9.7 oraz wsparcie dla transformacji React 17 JSX.

Źródło: opennet.ru

Kup niezawodny hosting dla stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron internetowych z ochroną DDoS, serwery VPS VDS | ProHoster