![Como evoluímos de IaC para ambientes como código](https://optimuscloud.com.br/wp-content/uploads/2024/02/1706896804_Como-evoluimos-de-IaC-para-ambientes-como-codigo-150x150.jpg)
Como evoluímos de IaC para ambientes como código
2 de fevereiro de 2024![Introdução aos componentes da Web e como começar a usá-los](https://optimuscloud.com.br/wp-content/uploads/2024/02/1706969502_Introducao-aos-componentes-da-Web-e-como-comecar-a-usa-los-150x150.jpg)
Introdução aos componentes da Web e como começar a usá-los
3 de fevereiro de 2024A equipe Deno lançou Deno v. 1.40 esta semana, chamando-o de “um passo significativo na evolução” do tempo de execução JavaScript e TypeScript.
“Esta nova versão está repleta de recursos que aprimoram a experiência Deno, introduzindo a poderosa API Temporal para operações avançadas de data e hora e adotando a mais recente sintaxe de decorador para um código mais expressivo”, escreveu a equipe. “Juntamente com esses avanços, implementamos uma série de descontinuações, estabilizações e remoções destinadas a simplificar as capacidades do Deno e preparar-se para o Deno 2.”
A proposta temporal exige uma nova API destinada a padronizar o tratamento de data e hora em JavaScript.
A Deno agora também apoia decoradores, que são solicitados em uma proposta para o TC39. Eles também estão sendo implementados em todos os navegadores, escreveu a equipe.
Os decoradores permitem que os desenvolvedores adicionem funcionalidades sem modificar o código existente, por meio do que é basicamente um wrapper que altera a função de tudo o que ele “decora”. Você pode usar decoradores para adicionar funcionalidade, modificar comportamento, validar dados ou suportar carregamento lento. Babel e TypeScript já oferecem suporte a decoradores.
“Decoradores são uma proposta de extensão de classes JavaScript amplamente adotada entre desenvolvedores em ambientes transpiladores, com amplo interesse em padronização”, explicaram. “O TC39 vem repetindo as propostas dos decoradores há mais de cinco anos. Este documento descreve uma nova proposta para decoradores baseada em elementos de todas as propostas anteriores.”
Versões Astro 4.2 e 4.3
A estrutura JavaScript Astro 4.3 foi lançada quinta-feira, com mais controle sobre a saída do arquivo HTML. Isso é feito adicionando um novo build.format
opção chamada preserve
. O novo formato preserva a estrutura do sistema de arquivos e garante que ele seja espelhado para produção.
“Esse recurso desbloqueia melhor compatibilidade com determinados servidores web (que) possuem requisitos rígidos sobre como os arquivos são estruturados”, observou a equipe.
A atualização também adicionou um novo ComponentProps
digite export que é semelhante a React.ComponentProps ou ComponentProps de Svelte.
“Este tipo de exportação permite referenciar o Props
aceito por outro componente, mesmo que esse componente não exporte issoProps
digite diretamente”, escreveu a equipe.
Além disso, o Astro 4.2, lançado no início deste mês, apresenta recursos experimentais para os usuários brincarem. Ele marcou o primeiro lançamento em que todos os recursos, exceto um, foram desenvolvidos pela comunidade.
“Este é um grande marco para nós, pois significa que o Astro agora é grande o suficiente para ter uma comunidade próspera de colaboradores capazes de liderar lançamentos”, escreveu a equipe.
Astro é relativamente novo em frameworks JavaScript e classificado como o framework mais popular, conforme medido pelo crescimento em satisfação e uso, no relatório The State of Web Development da Netlify.
O Astro 4.2 adicionou suporte para um recurso experimental: pré-renderizar páginas usando a API Chromium Speculation Rules, que permite aos desenvolvedores pré-renderizar páginas no cliente e executar JavaScript do lado do cliente nas páginas que o usuário provavelmente visitará em seguida para uma navegação mais rápida. experiência.
O outro recurso experimental adicionado é a prioridade de roteamento reformulada para rotas injetadas. Curiosamente, isso realmente aconteceu por causa de um problema. Rotas injetadas usando o injectRoute()API
receberam prioridade para que fossem combinados antes de outras rotas.
“Embora isso parecesse uma boa ideia na época, infelizmente causou muitos problemas difíceis de depurar, onde as rotas não correspondiam conforme o esperado”, escreveu a equipe. “Historicamente, temos hesitado em mudar esse comportamento devido a quantos problemas não intencionais podem causar mudanças no sistema de roteamento.”
Luiz Ferraz implementou uma correção – e assim iniciou a criação de um sistema de roteamento padrão “novo e aprimorado”, afirmou a equipe.
“Com esta flag habilitada, as rotas são injetadas usando oinjectRoute()
A API, assim como os redirecionamentos, agora seguirão a mesma ordem de prioridade que as rotas do sistema de arquivos. Isso deve fornecer regras de ordem de prioridade mais estáveis e consistentes para todas as rotas do seu projeto”, afirmou o blog.
Também houve correções de bugs, detalhadas nas notas de lançamento.
Nuxt 3.10 adiciona aSyncData
Ao pré-renderizar
O Nuxt 3.10 foi lançado esta semana e está “cheio de recursos e correções”, escreveu Daniel Roe, que lidera a equipe principal do Nuxt.
Uma atualização que deve melhorar o desempenho do site é o compartilhamento experimental de asyncData durante a pré-renderização, em que o Nuxt recupera automaticamente os dados para os desenvolvedores ao pré-renderizar o site.
“Seu useAsyncData
e useFetch
as chamadas serão desduplicadas e armazenadas em cache entre as renderizações do seu site”, explicou Roe. “É particularmente importante garantir que qualquer chave exclusiva dos seus dados seja sempre resolvível para os mesmos dados. Por exemplo, se você estiver usando useAsyncData
para buscar dados relacionados a uma página específica, você deve fornecer uma chave que corresponda exclusivamente a esses dados. (useFetch
deve fazer isso automaticamente.)”
Esta atualização também inclui a criação de ID exclusivo acessível e seguro para SSR, que oferece suporte à construção de interfaces mais acessíveis em um aplicativo.
Também incluído nesta atualização:
- Opções estendidas de aplicativo/roteador para scrollBehavior personalizado ou aumento de tempo de execução adicional de rotas;
- Suporte Node.js do lado do cliente, que “deve facilitar a vida dos usuários que trabalham com bibliotecas sem o suporte adequado do navegador”, observou Roe. Dito isto, ele acrescentou que, devido ao risco de aumentar um pacote desnecessariamente, Nuxt “exorta fortemente os usuários a escolherem outras alternativas, se possível”.
- Melhor reatividade dos cookies;
- Melhor detecção de antipadrões, o que se traduz numa melhor capacidade de identificação de potenciais bugs e problemas de desempenho;
- Metadados de rota em tempo de construção; e
- Resolução do módulo Bundler.
A postagem do blog cobre esses destaques, mas as notas de lançamento completas estão no GitHub.
O post Dev News: Deno decora, pré-renderização adicionada ao Nuxt, Astro apareceu pela primeira vez em The New Stack.