Deno já suporta módulos npm

deno npm

A plataforma está sendo desenvolvida por Ryan Dahl, criador do Node.js.

Faz pouco foi divulgada a notícia do lançamento da nova versão do framework Deno 1.28, que permite a execução de aplicativos JavaScript e TypeScript autônomos que podem ser usados ​​para criar controladores executados no servidor.

Deno foi criado para fornecer aos usuários um ambiente mais seguro e eliminar equívocos na arquitetura Node.js. Para melhorar a segurança, a ligação em torno do mecanismo V8 é escrita em Rust, o que evita muitas vulnerabilidades que surgem devido ao manuseio de memória de baixo nível.

Para processar as requisições no modo non-blocking, é utilizado o framework Tokio, também escrito em Rust. O Tokio permite que você crie aplicativos de alto desempenho baseados em arquitetura orientada a eventos, suportando multithreading e processando solicitações de rede de forma assíncrona.

Algumas das características Os principais de Deno são os seguintes:

  • Suporte integrado à linguagem TypeScript, além de JavaScript. Para verificar tipos e gerar JavaScript, o compilador TypeScript regular é usado, o que leva a uma queda no desempenho em comparação com a análise de JavaScript na V8.
  • O tempo de execução vem na forma de um único executável autônomo (“deno”). Para executar aplicativos usando o Deno, basta baixar um arquivo executável para sua plataforma, com cerca de 30 MB, que não possui dependências externas e não requer nenhuma instalação especial em seu sistema.
  • Processamento eficiente de solicitações de rede via HTTP, a plataforma foi projetada para criar aplicativos de rede de alto desempenho
  • A capacidade de criar aplicativos da web universais que podem ser executados no Deno e em um navegador da web comum
  • 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 foram adicionalmente auditados e testados quanto à compatibilidade
  • O pacote inclui um sistema integrado de inspeção de dependências (comando "deno info") e um utilitário de formatação de código (deno fmt).
  • Todos os scripts de aplicativos podem ser combinados em um arquivo JavaScript.

Principais novidades do Deno 1.28

A principal mudança na nova versão é a estabilização da compatibilidade com pacotes hospedados no repositório NPM, Que permite que Deno use mais de 1,3 milhão de módulos construído para a plataforma Node.js. Por exemplo, aplicativos baseados em Deno agora podem usar módulos de acesso a dados persistentes como Prisma, Mongoose e MySQL, bem como estruturas de front-end como React e Vue.

Alguns módulos NPM ainda são incompatíveis com o Deno, por exemplo, devido a ligações com ambientes Node.js específicos, como o arquivo package.json. Também não é possível usar o comando "deno compile" com módulos NPM. Versões futuras são planejadas para lidar com essas incompatibilidades e limitações.

O sistema de módulos Deno legado ECMAScript e modelo de módulo de API da Web permanecem os mesmos, e o familiar esquema de carregamento baseado em URL do Deno é usado para importar módulos NPM.

Usar pacotes NPM no Deno é muito mais fácil do que no Node.js, pois não há necessidade de pré-instalação de módulos (os módulos são instalados quando o aplicativo é iniciado pela primeira vez), o arquivo package.json não é usado e o diretório node_modules não é usado, é usado por padrão (os módulos são armazenados em cache no diretório compartilhado, mas é possível reverter o comportamento anterior com a opção "--node-modules-dir").

aplicativos baseados em O NPM retém a capacidade de usar mecanismos de controle de acesso, Deno isolamento e ativação para funções avançadas que afetam a segurança. Para combater ataques por meio de dependências questionáveis, Deno bloqueia por padrão todas as tentativas de acessar o sistema a partir de dependências e exibe um aviso sobre os problemas detectados. Por exemplo, quando o módulo tenta gravar em /usr/bin/, um prompt de confirmação será exibido para esta operação:

Aprimoramentos não relacionados ao NPM na nova versão incluem atualização do motor V8 para a versão 10.9, detecção automática de arquivos com bloqueios, estabilização de Deno.bench(), Deno.gid(), Deno.networkInterfaces(), Deno.systemMemoryInfo( ) e as APIs Deno. .uid(), adicionando uma nova API instável Deno.Command() para executar comandos (substituto universal para Deno.spawn, Deno.spawnSync e Deno.spawnChild).

Finalmente, vale a pena mencionar que Como o Node.js, o Deno usa o mecanismo JavaScript V8., que também é usado em navegadores baseados no Chromium. Ao mesmo tempo, o Deno não é um fork do Node.js, mas um novo projeto construído do zero. O código do projeto é distribuído sob a licença MIT e existem builds prontos para Linux, Windows e macOS.

Se você interessado em saber mais sobre o assunto, você pode consultar o seguinte link.


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: AB Internet Networks 2008 SL
  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.