Deno 1.0, plataforma JavaScript segura do Node.js

Desenvolvedores Node.js lançados faz pouco o lançamento de a primeira versão significativa de Dê-me 1.0 que vem após dois anos de desenvolvimento. Esta é uma plataforma para execução separada de aplicativos JavaScript e TypeScript, que pode ser usado para criar controladores que são executados no servidor. Não Não é um branch do Node.js, mas sim um novo projeto criado do zero.

Como Node.js, Deno usa o motor V8 JavaScript, que também é usado em navegadores baseados em Chromium.  A principal motivação para criar a nova plataforma JavaScript era o desejo de remover os erros conceituais cometidos na arquitetura Node.js. e fornecer aos usuários um ambiente mais seguro.

Para aumentar a segurança, o link em torno do motor V8 é escrito na linguagem Rust, Isso evita muitas vulnerabilidades que surgem devido ao trabalho de baixo nível com a memória, como acessar uma área da memória depois de liberada, fazer referência a ponteiros nulos e sair dos limites do buffer.

O código do projeto é distribuído sob a licença MIT e tem compilações preparadas para Linux, Windows e macOS.

O que há de novo no Deno 1.0

Esta nova versão da plataforma, Estabilização de API no namespace Deno em destaque, que são responsável pela interação dos aplicativos com o sistema operacional. As interfaces de software que ainda não estão estáveis ​​são ocultadas por padrão e estão disponíveis apenas quando iniciadas no modo instável.

Conforme novas versões são formadas, tais APIs se tornarão gradualmente estáveis. A API no namespace global, que inclui funções comuns como setTimeout () e fetch (), é o mais próximo possível da API de navegadores da web comuns e é desenvolvida de acordo com os padrões da web para navegadores. As APIs Rust que são usadas diretamente no código da plataforma, bem como a interface para desenvolver plug-ins para o tempo de execução Deno, ainda não estão estáveis ​​e continuam a evoluir.

Além disso, destaca que trabalhou na orientação de segurança nas configurações padrão de acesso a arquivos, os recursos de rede e o acesso às variáveis ​​de ambiente são bloqueados por padrão e exigem inclusão explícita. Por padrão, os aplicativos são executados em ambientes isolados de sandbox e eles não podem acessar os recursos do sistema sem privilégios explícitos.

Por outro lado, é mencionado no anúncio da nova versão o suporte nativo para TypeScript, além de JavaScript. Para verificar os tipos e gerar JavaScript, o compilador TypeScript padrão é usado, levando a um desempenho reduzido em comparação com a análise de JavaScript no V8. No futuro, planejamos preparar nossa própria implementação do sistema de verificação de tipo TypeScript, o que nos permitirá aumentar significativamente o desempenho do processamento TypeScript.

O tempo de execução vem na forma de um único executável autônomo ("não"). Para rodar aplicações usando Deno, basta baixar um arquivo executável para sua plataforma, com tamanho aproximado de 20 MB, sem dependências externas e que não requer nenhuma instalação especial no sistema. Ao mesmo tempo, deno não é um aplicativo monolítico, mas uma coleção de box packs em Rust (deno_core, rusty_v8) que podem ser usados ​​separadamente.

Além do tempo de execução, a plataforma Deno também atua como um gerenciador de pacotes e permite o acesso aos módulos por URL dentro do código. Os arquivos baixados de servidores externos por URL são armazenados em cache. O link para as versões do módulo é determinado pelas instruções do número da versão no URL.

Das outras inovações que se destacam esta versão 1.0:

  • Processamento eficaz de solicitações de rede HTTP em aplicativos, a plataforma foi projetada para criar aplicativos de rede de alto desempenho.
  • A capacidade de criar aplicativos universais da web que podem ser executados no Deno e em um navegador normal.
  • A presença de um conjunto padrão de módulos, cujo uso não requer vinculação a dependências externas. Os módulos da coleção padrão também foram auditados e testados quanto à compatibilidade.
  • O framework é um sistema de inspeção de dependência integrado (comando «deno info») e um utilitário para formatar o código (deno fmt)
  • Todos os scripts de aplicativos podem ser combinados em um arquivo JavaScript.

fonte: https://deno.land


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.