terça-feira, 16 de agosto de 2022

C# - Estrutura de repetição WHILE


Aula no Youtube: C# - Estrutura de repetição WHILE

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as estruturas de repetições utilizando o WHILE na linguagem C#.

Como vimos na estrutura FOR, uma estrutura de repetição é o que vai nos proporcionar realizar repetições de algumas tarefas e blocos de códigos, ou seja é um loop que fica iterando e sendo executada repetidamente. Mas o WHILE funciona um pouco diferente do for, pois não temos um contador de Index, apenas uma condição lógica para o fim do loop. Como por exemplo, digamos que nós precisamos realizar o login em uma aplicação, enquanto o usuário não informar o login correto para ser autenticado com sucesso, iremos ficar repetindo a mensagem e pedindo para ele informar o seu e-mail e senha.

EXEMPLO: 

var emailParaValidar = "usuario@email.com";
var senhaParaValidar = "123456";
var usuarioNaoLogado = true;

while(usuarioNaoLogado)

{

    Console.WriteLine("Informe seu e-mail: ")

    var emailInformado = Console.ReadLine();

    Console.WriteLine("Informe sua senha: ")
    var senhaInformada = Console.ReadLine();

    if(emailParaValidar.Equals(emailInformado) && senhaParaValidar.Equals(senhaInformada))
    {
        usuarioNaoLogado = false;
        Console.WriteLine("Usuário autenticado com sucesso!");
    }
    else
    {
        Console.WriteLine("E-mail ou senha inválidos!");
    }

}


Neste exemplo foi criado um loop utilizando a estrutura de repetição while onde será solicitado o e-mail e senha do usuário até que ele informe os dados corretos para realização da sua autenticação no sistema, utilizamos um if e else dentro do loop para checar se o usuário está inserindo informações válidas. Caso ele informe um dado válido, a variável usuarioNaoLogado será atualizada para false, fazendo com que o nosso loop se encerre, enquanto isso não acontecer, o loop se mantem solicitando o login e senha do usuário.


Bom pessoal, espero que vocês tenham gostado e até a próxima aula.

C# - Estrutura de repetição FOR

 


Aula no Youtube: C# - Estrutura de repetição FOR

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as estruturas de repetições utilizando o FOR na linguagem C#.

Uma estrutura de repetição é o que vai nos proporcionar realizar repetições de algumas tarefas e blocos de códigos, ou seja é um loop que fica iterando e sendo executada repetidamente. Como por exemplo, digamos que nós precisamos inserir no sistema 100 nomes de frutas, em um cenário sem loops, nós precisaríamos escrever 100 linhas de código com o comando Console.ReadLine(), já  com o for n'ós teríamos o mesmo resultado com apenas 3 linhas de código.

EXEMPLO:

for (var i = 1; i <= 100; i++)

{

    Console.ReadLine();

}


Neste exemplo foi criado um loop de 100 repetições, onde é capturado 100 entradas de usuário no console da aplicação. para utilizar o FOR, utilizamos a palavra reservada for e nós precisamos basicamente de três parâmetros, o primeiro será a criação do Index do loop, definimos como var i = 1, ou seja iniciamos a contar o loop pelo index 1. O segundo parâmetro é a nossa condição lógica de parada desse loop, onde definimos que iremos para a execução quando o Index chegar na repetição de número 100 com o i <= 100. E o ultimo parâmetro é o incremento do nosso index a cada repetição do loop, nesse caso estamos incrementando o Index em 1 a cada loop com o i++.


Bom pessoal, espero que vocês tenham gostado e até a próxima aula.

C# - Estrutura de condição Switch

C# - Estrutura de condição Switch

Aula no Youtube: C# - Estrutura de condição Switch

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as estruturas de condições utilizando o Switch e Case na linguagem C#.

Assim como o if, o switch é uma palavra reservada na maioria das linguagens funciona um pouco diferente que o if, como no exemplo anterior com if onde conseguimos verificar se um E-mail e Senha informados pelo o usuário estavam validos, no switch nós poderíamos checar o tipo de login que o usuário está tentando realizar na aplicação, notem o exemplo abaixo.

EXEMPLO: 

var tipoDeLogin = Console.ReadLine();

var email = Console.ReadLine();

var senha= Console.ReadLine();

switch (tipoDeLogin)

{

    case "CPF": 
        if (email == "Felipe@email.com" && senha ==  "1234") 

        {

            Console.WriteLine("Usuário Felipe logado com sucesso via CPF!");

        }

        break;

 case "CNPJ": 
        if (email == "Felipe@email.com" && senha ==  "1234") 

        {

            Console.WriteLine("Usuário Felipe logado com sucesso via CNPJ!");

        }

        break;

 default: 

            Console.WriteLine();

        break;

}


Para utilizar o Switch, utilizamos a palavra reservada switch, e passamos como parâmetro o que nós queremos verificar, dentro da estrutura do switch, iremos criar vários casos, utilizando o case, cada case é uma checagem diferente, e também temos o case padrão que é chamado de default.

Neste exemplo foram capturados o Tipo De Login, E-mail e a Senha do usuário, e realizado uma checagem utilizando o switch no Tipo De Login informado, e ainda utilizando o if assim como no exemplo anterior da aula sobre ifs, se o e-mail e a senha estão de acordo com a nossa condição lógica. Se estiverem será escrito na tela a mensagem "Usuário logado com sucesso via CPF!", caso o usuário tenha informado o tipo de login "CPF" e a mensagem "Usuário logado com sucesso via CNPJ!" caso o usuário tenha informado  o tipo de login "CNPJ".

E caso o usuário não tenha informado nem o tipo "CPF" nem o tipo "CNPJ" será exibido a mensagem "Método de login não implementado!".


Bom pessoal, espero que vocês tenham gostado e até a próxima aula.

quarta-feira, 10 de agosto de 2022

C# - Estrutura de condição IF


Aula no Youtube: C# - Estrutura de condição IF

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as estruturas de condições utilizando o IF, ELSE e ELSE IF na linguagem C#.

Basicamente nós iremos começar a adicionar algumas condições lógicas no nosso código, como por exemplo verificar se um E-mail e Senha informados pelo o usuário, são realmente validos para que um Login seja efetuado na nossa aplicação.

Para realizarmos esse tipo de verificação iremos utilizar a palavra reservada if que funciona basicamente da mesma forma na maioria das linguagens de programação, o if permite a realização de checagens lógicas, utilizando os operados lógicos que já vimos em aulas anteriores, irei deixar um exemplo de uma verificação de e-mail e senha logo abaixo.

EX: var email = Console.ReadLine();

EX: var senha= Console.ReadLine();

EX: if (email == "Felipe@email.com" && senha ==  "1234") 

{

    Console.WriteLine("Usuário Felipe logado com sucesso!");

}

Neste exemplo foram capturados o E-mail e a Senha do usuário, e realizado uma checagem utilizando o if, se o e-mail e a senha estão de acordo com a nossa condição lógica. Se estiverem será escrito na tela a mensagem "Usuário logado com sucesso!".

Mas e se essa condição não for verdadeira? é ai meus amigos, que entram as utilizações do else e else if. else sempre será executado quando nenhuma condição do if for atendida. E o else if servirá para adicionarmos mais condições só que em ifs separados, mas na mesma estrutura lógica, como segue o exemplo abaixo.

EX: var email = Console.ReadLine();

EX: var senha= Console.ReadLine();

EX: if (email == "Felipe@email.com" && senha ==  "1234") 

{

    Console.WriteLine("Usuário Felipe logado com sucesso!");

}
else if (email == "Mario@email.com" && senha ==  "4321") 

{

    Console.WriteLine("Usuário Mario logado com sucesso!");

}

else 

{

    Console.WriteLine("E-mail ou senha inválidos!");

}


No nosso segundo exemplo, adicionamos mais um e-mail e senha para serem verificados, só que agora no else if, dessa forma é verificado primeiro if, e depois o else if, caso o if nao seja verdadeiro, e assim por diante, até chegar no else.


Bom pessoal, espero que vocês tenham gostado e até a próxima aula.

C# - Entradas e Saídas de dados

Aula no Youtube: C# - Entradas e Saídas de dados

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as entradas e saídas de dados no console da nossa aplicação na linguagem C#.

Basicamente nós conseguimos coletar e exibir dados no console, já utilizamos nas aulas diversas vezes a opção de exibir dados, por meio do comando Console.WriteLine, onde nós informamos ao mesmo, o que nós queremos que ele escreva no console quando o programa for executado.

EX: Console.WriteLine("Hello World");

Já para o recebimento ou captura de dados informados pelo usuário, nós podemos utilizar o comando Console.ReadLine, onde nos iremos receber o valor que foi inserido pelo usuário naquela linha do console.

EX: var entrada = Console.ReadLine();

Neste exemplo o que for informado pelo usuário, será armazenado dentro dessa varável chamada entrada, para validarmos se realmente está sendo armazenado, podemos usar o Console.WriteLine para exibir o valor da entrada logo após a inserção dos dados pelo usuário.

EX: Console.WriteLine(entrada);


Bom pessoal, espero que vocês tenham gostado e até a próxima aula.

domingo, 7 de agosto de 2022

C# - Interpolação de Strings

 


Aula no Youtube: C# - Interpolação de Strings

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam as interpolações de Strings e concatenações de variáveis na linguagem C#.

Basicamente nós iremos unificar algumas variareis em uma só, para uma melhor exibição desses dados nos nossos programas, como por exemplo a frase: "O usuário Felipe Muniz, nasceu em 05/04/1996 e tem atualmente 26 anos.", essa frase pode ser construída a partir de varias variáveis do nosso programa, como por exemplo a variável dataDeNascimento, variável nome e variável sobrenome.

Ex: DateTime dataDeNascimento = DateTime.Parse("05/04/1996");

Ex: int idade = DateTime.Now.Year - dataDeNascimento.Year;

Ex: string nome = "Felipe";

Ex: string sobrenome = "Muniz";

Ex: string frase = $"O usuário {nome} {sobrenome}, nasceu em {dataDeNascimento.ToString("d")} e tem atualmente {idade} anos.";

Notem que utilizamos o cifrão antes da aspa do valor da variável frase, para dizer ao C# que iremos utilizar interpolações de Strings, essa interpolação é realizada utilizando variáveis dentro de chaves durante o texto da frase, dessa forma conseguimos colocar as variáveis exatamente na posição que queremos que fiquem no texto. Além disso utilizamos o dataDeNascimento.ToString("d") para pegar apenas a Data daquela variável DateTime, o DateTime possui as horas além da data, criamos essa variável DateTime para poder calcular a idade do usuário, utilizando o Year do DateTime.

Espero que vocês tenham gostado e até a próxima aula.

Referências: .NET | Free. Cross-platform. Open Source. (microsoft.com)

C# - Tipos de Operadores


Aula no Youtube: C# - Tipos de Operadores

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando como funcionam os tipos de operadores na linguagem C#.

Os tipos de operadores irão auxiliar na realização de cálculos, relacionamentos e lógicas durante o desenvolvimento do nosso código.

Podemos então dividir, os operadores em 3 principais tipos: Aritméticos, Relacionais e Lógicos.

Operadores Aritméticos,  são responsáveis por auxiliar na realização de cálculos aritméticos no nosso código, com ele podemos somar, dividir, subtrair e multiplicar quaisquer variáveis e valores que quisermos utilizando os operadores "+", "-", "*", "/". Que significam, SomarSubtrairMultiplicar e Dividir.

Ex: int idade = 10;

Ex: int soma = idade + 16;

Ex: int subtracao = idade - 5;

Ex: int multiplicacao = idade * 3;

Ex: int divisao = idade / 2;


Operadores Relacionais,  são responsáveis por auxiliar na realização de relacionamentos, com ele podemos verificar por exemplo se uma variável ou um valor é maior, menos, igual ou diferente a outra variável ou valor qualquer utilizando os operadores ">", "<", "==", "!=". Que significam, Maior Que, Menor Que, Igual A e Diferente De.

Ex: int idade = 10;

Ex: string nome = "Felipe";

Ex: string sobrenome = "Muniz";

Ex: bool ehDeMaior = idade > 17;

Ex: bool ehDeMenor = idade < 18;

Ex: bool ehNomeIgual = nome == sobrenome;

Ex: bool ehNomeDiferente nome != sobrenome;


Operadores Lógicos,  são responsáveis por auxiliar na realização de verificações de condições lógicas, com ele podemos verificar por exemplo se uma condição é verdadeira, ou se mais de uma condição é verdade ao mesmo tempo que outra, ou se uma condição é verdade e outra condição é falsa utilizando os operadores "&&" e "||". Que significam, E e OU. Ainda podemos utilizar o sinal de exclamação "!" para inverter o resultado deu uma condição.

Ex: int idade = 10;

Ex: string nome = "Felipe";

Ex: string sobrenome = "Muniz";

Ex: bool ehDeMaior = (idade > 17) && !(idade < 18);

Ex: bool ehNomeIgual = (nome != sobrenome) && (nome == "Felipe");

Ex: bool ehNomeDiferente (nome != sobrenome) || (nome != "Felipe");

Espero que vocês tenham gostado e até a próxima aula.

Referências: .NET | Free. Cross-platform. Open Source. (microsoft.com)

C# - Constantes e Conversões de Tipos de Dados


Aula no Youtube: C# - Constantes e Conversões de Tipos de Dados

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei explicando a diferença entre constantes e variáveis, e também a converter tipos de dados.

Como vimos na aula anterior, nós conseguimos criar variáveis e definir alguns tipos para os dados dessas variáveis, assim como a variável, nós conseguimos alocar um valor na memoria utilizando as constantes, as constantes diferente das variáveis, o seu valor que foi alocado na memoria, não poderá ser alterado, ou seja ele é imutável, constante, já as variáveis nós conseguimos a qualquer momento do código alterar os valores das mesmas.

Para declarar uma constante no C#, nós teremos que adicionar a palavra reservada const antes da definição do tipo.

Ex: const double PI = 3.14151617;

Além disso podemos estar trabalhando com conversoes de valores, tanto de variaveis quanto de constantes, nesse exemplo podemos pegar o valor de PI que é double e converter para int.

Ex: int piConvertido = (int)PI;

Nós chamamos isso de conversão explicita, onde realizamos a conversão manualmente passando o tipo que queremos converter entre parênteses antes do valor a ser convertido.

Já uma conversão implícita seria uma conversão onde não precisamos informar manualmente que algo está sendo convertido, e sim via intepretação de código o próprio compilador já identifica que o valor vai ser convertido automaticamente como no exemplo abaixo:


Ex: int idade = 26;

Ex: int peso = 80;

Ex: double resultado = idade + peso;

Dessa forma o resultado é do tipo Double mas o calculo foi realizando utilizando duas variáveis do tipo inteiro, e em nenhum momento eu informei alguma conversão manualmente.

Espero que vocês tenham gostado e até a próxima aula.

Referências: .NET | Free. Cross-platform. Open Source. (microsoft.com)

domingo, 31 de julho de 2022

C# - Tipos de dados e variáveis

 


Aula no Youtube: C# - Tipos de dados e variáveis

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei falando sobre os tipos de dados e variáveis que podemos estar utilizando no C#.

Uma variável é basicamente a alocação de um espaço na memoria de um computador, para armazenar algum tipo de valor para uma informação, pode ser por exemplo um valor numérico para representar a idade de uma pessoa, ou um valor textual para armazenar o nome de alguém, vai depender da logica do seu programa, e qual informação e tipo de dado que você vai trabalhar. 

Nós temos alguns principais tipos de dados que são mais utilizados no nosso dia a dia como desenvolvedores: Numéricos Inteiros, Numéricos Flutuantes, Booleanos e Textuais.

Traduzindo esses tipos para o C#, nós teremos o seguinte:

Numéricos Inteiros serão representados pela palavra reservada int.
Numéricos Flutuantes serão representados pelas palavras reservadas float, double e decimal.
Booleanos serão representados pela palavra reservada bool.
Textuais serão representados pelas palavras reservadas string e char.

As palavras reservadas, são exclusivas para o uso da linguagem, então não conseguiremos utilizar essas palavras para outro contexto que não seja o uso exclusivo dela para representar algo para a linguagem. No nosso caso em especifico seriam os tipos de variáveis. Como eu expliquei uma variável armazena um determinado valor no na memoria do computador, e esse valor vai ser de um tipo, esse tipo poderá ser um dos tipos principais que foram citados acima: int, float, double, decimal, bool, string ou char.

O tipo int será responsável por armazenar valores numéricos inteiros, ou seja n[úmeros que não possuem casas decimais, já os tipos float, double, decimal conseguem armazenar valores numéricos com casas decimais, o que muda entre eles é basicamente a precisão e tamanho dos valores numéricos.


  De acordo com a documentação oficial da Microsoft, o tipo float consegue armazenar até 9 dígitos, e consome 4 bytes de memoria ram, já o double consegue armazenar até 17 dígitos, e consome 8 bytes de memoria ram, e o decimal consegue armazenar até 29 dígitos, ou seja é bastante preciso, e consome 16 bytes na memoria ram.

Dependendo do tipo de valor que você deseja armazenar, tem que ser pensado com calma qual tipo de variável você vai estar utilizando, pois cada byte consumido na memoria ram, influencia na performance do seu programa quando estiver rodando no computador.

O tipo bool será responsável por armazenar apenas valores True ou False, verdadeiro ou falso, muito útil para realizarmos checagens de condições logicas, como por exemplo verificar se uma pessoa é maior de idade, e armazenar essa informação em uma variável do tipo bool.

Já os tipos string e char são responsáveis por armazenar valores textuais, a string consegue armazenar textos com diversas palavras e caracteres, já o char só consegue armazenar apenas um caractere, ou seja uma letra.


Referências: Tipos numéricos de ponto flutuante – Referência de C# | Microsoft Docs

C# - Introdução, Olá Mundo


Aula no Youtube: C# - Introdução, Olá Mundo

Olá pessoal, eu sou o Felipe Muniz, e hoje estarei introduzindo a linguagem que iremos utilizar tanto nas aulas do canal quanto aqui nas postagens do Blog, o nosso amado C# e a criação do nosso primeiro programinha dentro do Visual Studio.

Praticamente com o C#/DotNet conseguiremos trabalhar para todos os seguimentos de desenvolvimento, web, mobile, desktop, IOT, jogos, inteligência artificial, cloud e etc..



Então vamos agora mesmo para o Visual Studio e colocar a mão na massa. Com o seu Visual Studio aberto escolha a opção de Criar Novo Projeto.



Escolha a opção "Console Appllication" e confirme os passos para continuar a criação do projeto.



O projeto que foi criado vem com um pequeno exemplo de como escrever um texto na tela.
Podemos alterar esse texto "Hello World!" para "Olá Mundo!" ou para qualquer outro texto que você queira.




Para executar esse nosso programa do tipo console, teremos que clicar na opção que tem o ícone de "Play",  então o nosso primeiro programa ira ser executado dentro de um console do Windows.



Notem que foi aberto um console com um texto "Olá Mundo!", é exatamente esse comando de escrever texto na tela que têm no na nossa única linha de código.



Bom pessoal é isto, vocês agora são oficialmente programadores, criaram o seu primeiro programa utilizando C#. Nas próximas aulas iremos aprender como criar variáveis e quais são os tipos de variáveis utilizando as estruturas de dados.

Espero que vocês tenham gostado e até a próxima aula.


Referências: .NET | Free. Cross-platform. Open Source. (microsoft.com)

C# - Instalação do Visual Studio

 



Olá pessoal, eu sou o Felipe Muniz, e hoje estarei auxiliando na instalação do Visual Studio, a nossa ferramenta para desenvolvimento de aplicações utilizando C#/DotNet.

Primeiro, iremos entrar no site oficial da Microsoft para baixar a versão gratuita do Visual Studio 2022: Baixar Ferramentas do Visual Studio – Instalação gratuita para Windows, Mac e Linux (microsoft.com)

E escolheremos a opção "Comunidade" e "Download Gratuito".



Após o download, iremos abrir o instalador.





Depois iremos selecionar a opção de "Desenvolvimento para Desktop com DotNet":




Além disso, eu prefiro sempre instalar o idioma em inglês, clicando na opção "Pacote de Idiomas" para encontrar melhores soluções para erros futuros que possam ocorrer dentro do Visual Studio, mas caso você não tenha segurança em desenvolver utilizando a ferramenta no idioma em inglês, já pode clicar no botão de "Instalar" e aguardar o processo.

Após a instalação você poderá executar o seu Visual Studio normalmente, ate as próximas aulas.



domingo, 24 de julho de 2022

Introdução ao DotNet




Olá pessoal, eu sou o Felipe Muniz, e hoje estarei introduzindo o nosso amado DotNet, para uma série de aulas e postagens sobre os diversos frameworks de desenvolvimento que iremos abordar no futuro.

Bom, a ideia inicial do que seria o DotNet nasceu em 1996 (26 Anos atrás), quando a Microsoft iniciou uma parceria com a Sun para utilizar o Java nos seus produtos do Windows, assim o engenheiro Anders Hejlsberg foi contratado pela Microsoft para a criação do J++, um Java customizado para dar total suporte ao C++ do Windows.

Mas essa parceria durou poucos meses, pois a Sun queria que essa customização do J++ estivesse no Java multiplataforma e não apenas para o Windows como a Microsoft estava criando, então a parceria acabou, o J++ foi descontinuado, e o Anders ficou trabalhando em algo próprio para a Microsoft, sem a presença do Java.

4 anos depois em 2000 Microsoft anuncia oficialmente a primeira versão do DotNet  Framework 1.0, a linguagem C#, o AspNet WebForms, o VB.Net e a primeira versão do Visual Studio, chamado "VS.NET".
Dessa forma todo o ambiente DotNet foi estruturado, totalmente focado no Windows e plataformas da Microsoft, nos anos seguintes vieram as evoluções e diversos frameworks que rodam em cima do DotNet.

Em 2004 um engenheiro chamado Miguel de Icaza, cria um projeto chamado "Mono", onde o DotNet totalmente focado no Windows, foi executado em ambientes Linux, e MacOS, dessa forma o Mono passou a ser muito utilizado pelos amantes do DotNet para o desenvolvimento de aplicações multiplataformas utilizando as tecnologias da Microsoft.

Logo após em 2005 tivemos o lançamento das versões 2 e 3 do DotNet, e também o lançamento da primeira versão da Unity, a primeira engine para desenvolvimento de jogos multiplataforma utilizando o DotNet graças ao Mono.

Em 2010 nós tivemos o lançamento da versão 4 do DotNet, além do novo framework para desenvolvimento web da Microsoft, o AspNet MVC, também tivemos o lançamento do Visual Studio 2010 e da Unity 3.0 logo em seguida.

Em 2011 e 2012 o Miguel de Icaza aparece novamente com mais um projeto inovador para os desenvolvedores DotNet, o Xamarin, que permite com que seja desenvolvido aplicações mobiles nativas utilizando o DotNet C#, ainda rodando em conjunto com o Mono. A Microsoft anuncia o lançamento da versão 4.5 do DotNet que foi a mais utilizada por vários anos, junto com a mais nova linguagem funcional F#, e o Visual Studio 2012, de outro lado a Unity Anuncia a versão 4.0 da Engine.

Em 2014 tivemos uma mudança de CEO da Microsoft, para o Satya Nadella, onde a mesma anunciou o foco em projetos OpenSource, Nuvem e desenvolvimento multiplataforma com o futuro DotNet Core.

Em 2015 e 2016 tivemos os lançamentos do DotNet 4.6, AspNet MVC 5, Visual Studio 2015, Unity 5.0, a primeira versão do DotNet Core/Asp.Net Core, e o famoso anuncio da compra do Xamarin pela Microsoft, tornando-o assim o framework open source e totalmente acoplado ao Visual Studio.

Em 2017 tivemos os lançamentos do DotNet 4.7, DotNet Core 2.0, Unity 2017 que passou agora a ter versões anuais, e o Visual Studio 2017 que passou a ter uma versão Community grátis para qualquer desenvolvedor conseguir trabalhar.

Em 2018 e 2019 tivemos alguns lançamentos do Visual Studio 2019, DotNet 4.8, DotNet/AspNet Core 3.0, a primeira versão do DotNe standard para compartilhamento de código entre todas as versões do DotNet Core e do DotNet Framework, o lançamento da Unity 2018 e 2019, lançamento do WinUI 1 e 2 que foi desenvolvido para reaproveitamento de componentes gráficos durante a criação de aplicações desktop para todas as versões do Windows, e o lançamento do famoso Blazor que é um framework para desenvolvimento Web Single Page Application (SPA) e também Web Assemblie (WASM) utilizando DotNet.

Em 2020 foi anunciado os lançamentos dos novos Unity 2020, WinUI 3 e o DotNet 5 que unificou todas as versões do DotNet Framework, DotNet Core e DotNet Standard em apenas uma, sendo o principal DotNet que é totalmente multiplataforma.

Já em 2021 tivemos o lançamento da Unity 2021, Visual Studio 2022, e a nova versão do DotNet 6. E hoje em 2022 estamos aguardando os lançamentos das releases do Unity 2022, .DotNet 7 e MAUI. 

Hoje com o DotNet totalmente unificado e multiplataforma, nós conseguimos desenvolver para diversos sistemas e plataformas diferentes utilizando o mesmo framework, as mesmas bibliotecas e a mesma linguagem de programação.


Além da grande melhoria de performance que tivemos com o passar dos anos e com as diversas evoluções do DotNet, contamos com uma velocidade de até 10 vezes maior que o Node.js que é muito utilizado hoje no mercado.

Com o atual C# 10, obtivemos uma maior simplicidade na escrita do código, conseguindo assim mais código com menos linhas.


A partir do DotNet 5, foi introduzido o HotReload de código DotNet, sem a necessidade de ter que recompilar sua aplicação para ter o resultado daquela alteração de código.

Nos próximos posts irei dar inicio a algumas series de desenvolvimento com alguns dos principais frameworks e tecnologias do DotNet.


Referências: 
Announcing .NET 6 - The Fastest .NET Yet - .NET Blog (microsoft.com)
What Is New In .NET 6.0 (c-sharpcorner.com)