TeamQuest Blog

 Deno – nowe środowisko uruchomieniowe dla JS-a i TypeScripta twórcy Node.js

Deno – nowe środowisko uruchomieniowe dla JS-a i TypeScripta twórcy Node.js

Maciej Olanicki , 15.05.2020 r.

Udostępniona została pierwsza stabilna wersja środowiska uruchomieniowego Deno. Dzięki niemu możliwe jest uruchamianie JavaScriptu i TypeScriptu poza środowiskiem przeglądarki. Brzmi znajomo? Oczywiście – taką funkcję pełni dziś Node.js. Na tym jednak podobieństwa się nie kończą. Współtwórcą Deno (anagram Node) jest Ryan Dahl, autor Node.js.

Nowy runtime bez błędów Node.js

Dlaczego więc twórca jednego z najpopularniejszych narzędzi programistów JavaScript zdecydował się na uruchomienie nowego projektu? Według niego podczas prac nad Node.js popełnił szereg błędów, które na aktualnym stadium rozwoju środowiska są już niemożliwe do rozwiązania. Co ważne – Dano w żadnym wypadku nie jest forkiem czy inną wariacją Node.js, lecz całkowicie nowym środowiskiem uruchomieniowym pisanym od zera.

deno1

W rezultacie nowy runtime Dahla obsługuje obietnice, które z Node.js zostały usunięte w 2010 roku. Programista pozbył się kilku problematycznych komponentów – mowa m.in. o obsłudze modułów NPM czy systemie Generate Your Projects. Prace skupiały się także na podwyższeniu bezpieczeństwa, dzięki czemu Deno korzysta już z piaskownic dostarczanych przez znany z Chromium silnik V8, ograniczających dostęp do plików i sieci.

TypeScript i Rust przodem

Wyróżnikiem Deno jest także to, że najważniejsze jego komponenty (przede wszystkim Deno_core) zostały napisane w języku Rust. Również API silnika V8, oryginalnie napisane w C++ na gruncie nowego środowisk obsługiwane jest przez rustowy interfejs rusty_v8. Ponadto kolejkowanie zadań obsługiwane jest przez wykorzystywane w Ruście asynchroniczne środowisko uruchomieniowe Tokio.

Co ciekawe, twórcy Deno zdecydowali, że środowisko w pierwszej kolejności służyć ma uruchamianiu oprogramowania napisanego nie w JavaScripcie, lecz w TypeScripcie. Nie zachodzi potrzeba kompilowania kodu do JS, pliki wykorzystujące odmianę tego języka opracowaną przez Microsoft są w Deno uruchamiane bezpośrednio. W przyszłości także kompilator TypeScripta ma zostać przepisany na język Rust.

Co z paczkami Node.js?

Bodaj największym problemem Deno jest aktualnie brak kompatybilności z paczkami Node. Twórcy zapewniają jednak, że są w trakcie prac nad zapewnieniem stosownej warstwy kompatybilności, która pozwoli na automatyczną obsługę wielu aplikacji bez konieczności jakichkolwiek działań ze strony programisty. Więcej informacji o nowym środowisku uruchomieniowym znaleźć można na jego oficjalnej stronie.

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej