Blazor

2 - Conceitos

Olá pessoal, essa é a segunda aula do treinamento de Blazor. Nesse conteúdo complementar, iremos aprender alguns conceitos importantes sobre o Blazor.

O que é o Blazor

Segundo o site oficial do .NET Microsoft: O Blazor é uma estrutura Web de front-end moderna baseada em HTML, CSS e C# que ajuda você a criar aplicativos Web.

Outra explicação interessante, encontramos no site BRQ Digital Solutions: É um framework para aplicações “client-side” escrito em . NET e rodando em cima do WebAssembly. É baseado em tecnologias já existentes como HTLM e CSS, mas você pode usar C# e Razor ao invés de JavaScript para buildar os componentes..

O que preciso saber antes de aprender sobre o Blazor?

O Blazor necessita de alguns conhecimentos prévios, sendo eles:

  • Lógica e Algoritmos (Variáveis, constantes, condicionais, estrutura de escolha, laços de repetição, etc...)
  • C# (Estrutura da linguagem e conhecimento em ArrayList, List, Dictionary, etc...)
  • Orientação a Objetos (Classe, atributo, método, objeto, encapsulamento, construtor, herança, abstração e polimorfismo)
  • HTML e CSS (Conceitos básicos sobre as tags e também comandos para estilização)

Razor

Segundo o site Macoratti: Razor é uma sintaxe de marcação que lhe permite inserir código baseado em servidor (Visual Basic e C#) em páginas da web.

De maneira bem simples, o Razor permite a criação de páginas web utilizando tecnologias, como: HTML, CSS e C#. Dependendo do projeto, também podemos fazer uso do JavaScript.

O que faz o Razor ser tão popular, é a facilidade de poder integrar a estrutura C# junto dos comandos HTML. Você pode exibir uma variável dentro de uma tag H1 por exemplo, também é possível usar um ArrayList para listar em uma tabela (TABLE) os registros.

Todas as nossas páginas serão da extensão .razor, fazendo com que essa tecnologia seja crucial para a existência do Blazor.

Razor ou Blazor?

Muitos confundem Blazor com Razor, mas basta lembrar o seguinte:

  • Blazor: Framework front-end (ou estrutura web front-end) contendo uma arquitetura para projetos web. Nele podemos trabalhar com páginas e layouts, garantindo um ambiente de fácil compreensão e padronizando nossos projetos.
  • Razor: São páginas web, onde é possível integrar a linguagem C# junto do HTML e CSS (também pode utilizar JavaScript se o projeto permitir).

Tipos de projetos

O Blazor possui dois tipos de projetos, sendo eles:

  • WebAsssembly: Para projetos client-side ou que funcionem diretamente via navegador. A principal vatangem é não depender diretamente do servidor para executar determinadas funcionalidades do projeto.
  • Blazor Server: Para projetos server-side, onde seja necessário constantes requisições para o servidor. Há uma maior segurança e também usabilidade de estruturas envolvendo conexões com bancos de dados, porém sua dependência pelo servidor pode ocasionar uma performance lenta, além de necessitar um maior investimento para manter os projetos.

As estruturas de ambos os projetos são parecidos, mas precisamos analisar muito bem qual utilizar. Com a experiência, você será capaz de escolher a melhor opção para desenvolver suas aplicações.

Minha experiência com o Blazor atualmente é muito forte em projetos WebAssembly, onde o foco é no front-end e consumo de APIs.

Durante nosso treinamento, iremos trabalhar com projetos do tipo WebAssembly, mas fique à vontade para criar projetos no formato Blazor Server para conhecer as diferenças entre as estruturas de cada projeto.

Que tal acompanhar nossa aula no YouTube? Veja o vídeo abaixo: