![O que significa temperatura no processamento de linguagem natural e IA](https://optimuscloud.com.br/wp-content/uploads/2024/01/O-que-significa-temperatura-no-processamento-de-linguagem-natural-e-150x150.jpg)
O que significa temperatura no processamento de linguagem natural e IA
25 de janeiro de 2024![Publicação atrasada de código aberto surge como rival de código aberto](https://optimuscloud.com.br/wp-content/uploads/2024/01/1706169680_Publicacao-atrasada-de-codigo-aberto-surge-como-rival-de-codigo-150x150.jpg)
Publicação atrasada de código aberto surge como rival de código aberto
25 de janeiro de 2024O que vem pela frente para o front-end em 2024? Desde que quebramos nossa bola de cristal, The New Stack conversou com criadores e mantenedores de Angular, Next.js, React e Solid sobre seus planos para 2024. Aqui está uma visão geral do que os desenvolvedores front-end podem esperar no próximo ano.
Angular: Zone.js opcional
No ano passado, as duas grandes conquistas do Angular foram a introdução de reatividade refinada com Sinais e visualizações diferidas, disse Minko Gechev, líder técnico e gerente de Angular DevRel do Google. O próximo ano se baseará nisso, concentrando-se ainda mais na reatividade refinada e tornando o Zone.js opcional, disse ele ao The NewStack.
Em Angular, uma zona é um contexto de execução que persiste em tarefas assíncronas. As zonas são explicadas em detalhes neste repositório GitHub, mas uma zona tem cinco responsabilidades, incluindo interceptar o agendamento de tarefas assíncronas e agrupar retornos de chamada para tratamento de erros e rastreamento de zona em operações assíncronas. Zone.js pode criar contextos que persistem em operações assíncronas, bem como fornecer ganchos de ciclo de vida para operações assíncronas.
“Estamos explorando a habilitação do Zone.js opcional para projetos existentes, e os desenvolvedores devem poder aproveitar esse recurso apenas refatorando seus aplicativos existentes”, disse Gechev. “Com o Zone.js opcional, esperamos melhorias nos tempos de carregamento e renderização inicial mais rápida. Trabalhar na reatividade refinada leva isso a outro nível, permitindo-nos detectar alterações apenas em partes do modelo de um componente.”
Esses recursos levarão a um tempo de execução ainda mais rápido, disse ele.
Em outra jogada de desempenho, Angular está considerando se deve habilitar a renderização híbrida por padrão. Seria possível cancelar a renderização híbrida, pois isso pode aumentar os requisitos e custos de hospedagem, acrescentou.
“Vemos muito valor em SSG (geração de site estático) e SSR (renderização do lado do servidor) e com a base sólida que estabelecemos na v17, estamos trabalhando nos retoques finais de polimento para permitir essa experiência desde o início”, Gechev disse.
Outra prioridade é cumprir sua solicitação de comentários para sinais, acrescentou.
Os desenvolvedores também podem ver melhorias na documentação do Angular. Com base em sua pesquisa com desenvolvedores, os desenvolvedores do Gechev desejam uma experiência de aprendizado atualizada, e parte disso inclui fazer do Angular.dev o novo lar da estrutura. Os desenvolvedores também priorizaram o tempo de carregamento inicial – que a renderização híbrida, a hidratação parcial e o Zone.js parcial opcional devem abordar, acrescentou – bem como a criação de componentes, que a Angular planeja simplificar ainda mais.
“Estamos comprometidos em fornecer recursos de forma iterativa e aprimorá-los gradativamente ao longo do tempo”, disse Gechev. “Os desenvolvedores poderão se beneficiar de todas as melhorias em 2024 e obterão uma experiência e desempenho de desenvolvedor ainda melhores nos anos seguintes.”
Next.js: um novo compilador em desenvolvimento
Next.js introduziu um novo servidor de aplicativos projetado para oferecer suporte a React Server Components (RSC) e ações de servidor em 2023. Ele continua a oferecer suporte ao antigo servidor de aplicativos e seus sistemas de roteamento são intercambiáveis, disse Lee Robinson, chefe de produto da Vercel, que supervisiona o quadro. Essa interoperabilidade significa que os desenvolvedores podem demorar para adicionar novos recursos.
“Há clientes que vêm construindo com Next.js há cinco, seis anos, e a adoção desses recursos mais recentes também levará vários anos”, disse Robinson. “Gostamos de trazer as pessoas para a jornada da maneira mais tranquila possível.”
No novo ano, há uma série de questões que o Next.js deseja resolver, mas uma prioridade provavelmente será simplificar o cache. Poderia ser mais fácil em termos de experiência do desenvolvedor, disse ele.
“Normalmente, o status quo é que muitos desenvolvedores no ecossistema precisam obter um monte de pacotes extras ou aprender como usar outras ferramentas para buscar, armazenar em cache e revalidar”, disse Robinson. “O Next.js construiu muito disso agora, o que é muito poderoso, mas também significa que há coisas adicionais que você precisa aprender e o feedback inicial foi: ‘Isso é ótimo; é muito poderoso, mas adoraríamos se fosse um pouco mais fácil.”
A equipe Next.js também continuará focada em melhorias de desempenho, que ele chamou de “investimento contínuo para nós”.
É provável que isso tome a forma de um novo compilador no novo ano que irá acelerar a rapidez necessária para iniciar o Next.js na máquina de um desenvolvedor, acrescentou. O compilador está em desenvolvimento há cerca de um ano e Vercel o utiliza internamente para suas propriedades e aplicativos. O compilador, que é desenvolvido com Rust, é mais rápido sem cache do que o compilador anterior com cache, disse ele.
“Estamos chegando muito perto de implementar isso, a um ponto em que todos podem ativá-lo por padrão, e é mais rápido do que a solução de compilação existente com Webpack”, disse Robinson. “Os desenvolvedores querem que suas ferramentas sejam mais rápidas. Eles nunca vão reclamar de ser mais rápido. Portanto, tem sido interessante ver os fabricantes de ferramentas, não os usuários da ferramenta, mas os próprios desenvolvedores de ferramentas migrando para essas ferramentas de nível inferior, como Rust, para ajudar a obter a última milha de ganhos de desempenho.
O objetivo três é continuar construindo a base para os próximos 10 anos do Next.js.
“Este novo sistema de roteamento, você sabe, estamos obviamente muito entusiasmados com ele. Acreditamos que é uma base para o futuro”, disse ele. “Mas também vai levar tempo. As pessoas vão experimentar, terão solicitações de recursos e vão querer ver as coisas mudarem. E estamos vendo isso como um investimento de muito longo prazo para os próximos cinco a 10 anos”.
Um “algum dia”, mas provavelmente não o objetivo deste ano, é uma maneira melhor de lidar com o conteúdo dentro do Next.js, acrescentou.
“Hoje funciona e você ainda pode se conectar a qualquer fonte de conteúdo que desejar, mas há maneiras de simplificar potencialmente a experiência do desenvolvedor”, acrescentou. “É mais bom ter do que um requisito, e é por isso que não acho que chegaremos a isso em 2024, mas gostaria de fazer algo com isso no futuro.”
Reagir: prévias de 2024
A equipe do React espera mais adoção da estrutura dos componentes do React Server no novo ano, disse Eli White, gerente de engenharia do React na Meta.
“Os RSCs têm sido uma grande mudança para a maioria das pessoas no que elas consideram o escopo do React, de apenas uma camada de UI para ter mais influência na maneira como você arquiteta seu aplicativo para a melhor experiência do usuário e do desenvolvedor, especialmente para aplicativos onde SPAs (aplicativos de página única) não eram bons o suficiente”, disse White.
Embora ele não tenha especificado nenhum novo desenvolvimento para 2024, White indicou que eles enviarão e compartilharão mais progresso em algumas das revelações de 2023. Por exemplo, no React Advanced, a equipe deu aos participantes da conferência uma olhada no React Forget , que é o compilador de memorização automática do React. React Forget significará que os desenvolvedores não precisarão mais usar useMemo e useCallback, disse White.
“No React Native EU, compartilhamos que estamos trazendo as ferramentas de desenvolvimento do Chrome com as quais os desenvolvedores da web estão familiarizados para o React Native, a partir da versão 0.73”, acrescentou White. “Também compartilhamos uma primeira olhada em nossa pesquisa sobre Static Hermes, nosso compilador nativo para JavaScript, que tem o potencial não apenas de acelerar aplicativos React Native, mas também de mudar fundamentalmente a forma como o JavaScript pode ser efetivamente usado. “
Sólido: Focado em Primitivos
Os desenvolvedores do Solid podem aguardar o SolidStart 1.0 e o Solid.js 2.0 em 2024, de acordo com o criador do Solid, Ryan Carniato. SolidStart é uma metaestrutura, o que significa que é construída na estrutura Solid.js. É comparável ao SvelteKit de Svelte, disse ele.
A documentação do SolidStart explicava assim:
“As aplicações Web geralmente compreendem muitos componentes: bancos de dados, servidores, frontends, empacotadores, busca/mutações de dados, cache e infraestrutura. Orquestrar esses componentes é desafiador e geralmente requer uma grande quantidade de estado compartilhado e lógica redundante em toda a pilha de aplicativos. Entra em cena o SolidStart: uma metaestrutura que fornece a plataforma para reunir todas essas peças em um único local.”
Como o SolidStart ainda está em beta, Carniato teve a oportunidade de usar basicamente o que já estava no ecossistema para torná-lo melhor.
“Uma das grandes peças é que, em vez de escrever todos os nossos próprios adaptadores de implantação, agora usamos o Nitro, que também alimenta a estrutura Nuxt, e isso permite implantar em todas as plataformas diferentes”, disse Carniato.
Outro exemplo é que qualquer roteador Solid funcionará no SolidStart.
“Isso significou muitas atualizações nas peças subjacentes do roteador para que todas pudessem trabalhar juntas, mas o resultado final que me deixa muito feliz é que há muito menos código para nossa pequena equipe de voluntários manter, e isso dá muita flexibilidade e controle para o desenvolvedor”, disse ele. “Eles não estão sendo forçados a adotar uma solução única, o que é muito importante para mim, porque cada um tem suas próprias necessidades. E como eu disse, se você construir as peças certas e descobrir quais são esses blocos de construção, as pessoas poderão fazer muito mais.”
O resultado final é uma metaestrutura com peças “trocáveis” que não são muito opinativas, disse ele. A equipe do Solid tem pensado no impacto das peças primitivas certas em um mundo onde cada vez mais meta-frameworks ditam o que os desenvolvedores usam.
“Para mim, sempre foi uma questão de construção de blocos primitivos, um foco muito de engenharia, e acho que essa é parte da razão pela qual é diferente”, disse ele. “Sempre gostei de dar escolha e acho que se você tiver os primitivos certos, as peças certas, poderá construir a solução certa.”
O Solid 2.0 deve ser lançado em meados ou no final de 2024, disse ele. No momento, eles estão criando protótipos de como lidará com sistemas assíncronos, disse ele.
“O Solid 2.0 também será um lançamento muito importante, porque estamos dando uma nova olhada no sistema reativo e analisando como podemos lidar com sinais assíncronos ou sistemas assíncronos”, disse Carniato.
Solid tenta equilibrar controle com desempenho, acrescentou.
“Temos muitas pessoas muito entusiasmadas em nossa comunidade, pessoas com mentalidade muito técnica (que) se preocupam com o desempenho, pessoas que se preocupam com o controle”, disse ele. “Atraímos muitas pessoas que realmente querem ter controle sobre cada parte do que constroem.”
As previsões pós-2024 dos mantenedores do JavaScript Frontend Framework apareceram pela primeira vez em The New Stack.