Blazor United o futuro do .NET [PT-BR]

andredarcie

André N. Darcie

Posted on March 18, 2023

Blazor United o futuro do .NET [PT-BR]

Introdução

Atualmente, existem dois tipos de aplicativos web: Single Page Applications (SPA), que requerem alta interatividade, e Multi Page Applications (MPA), que são mais simples, têm respostas mais rápidas e retornam apenas HTML. Muitos aplicativos web usam ambas as soluções.

Para desenvolver uma MPA, podemos usar MVC ou Razor Pages, e para SPA, podemos usar Blazor WebAssembly ou Blazor Server.

No entanto, há uma tendência atual de criar uma tecnologia que permita o uso de MPA e SPA ao mesmo tempo, sem limitar o desenvolvedor a apenas uma solução.

A solução para isso no .NET é o Blazor United. Com ele, você pode criar seus componentes razor e escolher se deseja que eles sejam renderizados como Blazor Server ou WebAssembly.

Funcionamento

Se um componente for renderizado como Blazor Server, ele abrirá uma conexão chamada Circuito, que é basicamente um WebSocket, e começará a enviar HTML para tornar a página mais interativa sem ter que carregar a página inteira de uma vez.

Para especificar o modo de renderização de um componente, basta usar a diretiva rendermode, como em:

<MeuComponente rendermode="@WebComponentRenderMode.Server">

Para uma página inteira, é possível utilizar a anotação:

[ComponentRenderMode(WebComponentRenderMode.Server)]

Existe também a opção de usar o Blazor WebAssembly, que é executado inteiramente no lado do cliente, o que significa que o código do aplicativo é baixado e executado diretamente no navegador do usuário. Estamos falando de C# no front-end!

[ComponentRenderMode(WebComponentRenderMode.WebAssembly)]

E se você quiser que o modo de renderização seja definido automaticamente, basta usar:

[ComponentRenderMode(WebComponentRenderMode.Auto)]

Nesse caso ele vai decidir entre paginas estáticas, Blazor WebAssembly ou Blazor Server.

Conclusão

O projeto ainda está em fase de protótipo e não está disponível pra uso, você pode conferir o vídeo do Steve Sanderson apresentando a ideia.

Com o Blazor United, sua aplicação pode inicialmente retornar páginas estáticas HTML que serão carregadas rapidamente (MPA). Quando o usuário acessar um formulário, uma conexão Web Socket será criada para transferir HTML e tornar aquele formulário mais interativo como uma SPA. Na próxima vez que o usuário interagir com a página, ela rodará C# diretamente via WebAssembly, sem a necessidade de abrir um socket.

O Blazor United é uma solução versátil e flexível que permite o uso de MPA e SPA em um único aplicativo web.

💖 💪 🙅 🚩
andredarcie
André N. Darcie

Posted on March 18, 2023

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related