Você está na página 1de 1

O que você quer aprender?

COMO FUNCIONA PARA EMPRESAS ENTRAR VEJA OS PLANOS

PROGRAMAÇÃO _ FRONT END _ DATA SCIENCE _ INTELIGÊNCIA ARTIFICIAL _ DEVOPS _ UX & DESIGN _ MOBILE _ INOVAÇÃO & GESTÃO _

Artigos > Programação

.NET apresentando a plataforma de


desenvolvimento da Microsoft

COMPARTILHE
Esse artigo faz parte da
André Bessa Formação ASP.Net Core: crie
20 de Dezembro aplicações com C#, .NET, Entity
Framework e LINQ

Há alguns anos, o .NET se tornou uma das plataformas mais populares para
Confira neste artigo: desenvolver aplicações ao redor do mundo. Só para ter uma ideia, ela compete
O que é .NET? principalmente com a plataforma Java.
NET um pouco sobre o MSIL
.NET JIT Para isso, conta com uma das linguagens mais populares do mercado, o C#, além
.NET assemblies de executar linguagens, como F#, VB.NET, entre outras.
A história do .NET
Se você acabou de chegar ao universo do .NET pode se espantar um pouco com
Linguagens de programação da
plataforma .NET a sopa de letrinhas ou com a quantidade de formas diferentes para imprimir uma
Nuget, o gerenciador de mensagem na tela, — o famoso “Olá, mundo!”.
pacotes .NET
Biblioteca de testes Mas não precisa se preocupar! Neste artigo, vamos te ajudar a entender o
Como acessar dados em .NET fantástico mundo do .NET. Para isso vamos conhecer um pouco sobre o que é o
Certificações .NET, sua história e características e ainda comentar sobre algumas certificações
Comunidades .NET Microsoft para pessoas desenvolvedoras.
Conclusão
Vamos lá!

O que é .NET?
O .NET lê-se dotnet) é um framework de desenvolvimento criado pela Microsoft
em 2002.

De forma geral, ele oferece um ambiente de programação poderoso, além de uma


biblioteca de classes robusta com suporte para desenvolver e executar
aplicativos para diversas plataformas, como Windows, macOS e Linux.

Uma característica importante do .NET é o suporte para diversas linguagens de


programação, como C#, VB.NET e F#, oferecendo grande versatilidade para a
plataforma.

Assim, a partir do .NET é possível:

Desenvolver aplicativos web, desde sites estáticos até sistemas web; c


Criar aplicativos mobile;
Implementar soluções em microsserviços;
Desenvolver aplicativos de área de trabalho (o famoso desktop) e
jogos.

A força do .NET está em seus dois componentes centrais: a Common Language


Runtime CLR , tempo de execução de linguagem comum em tradução livre, e a
sua Class Library (biblioteca de classes).

O que é CLR Common Language


Runtime?
A CLR é o mecanismo que vai possibilitar a execução de aplicações .NET,
bastante similar à máquina virtual do Java JVM . No entanto, diferente da
concorrente, a CLR é acessível por qualquer compilador que consiga produzir
códigos em Intermediate Language IL, linguagem intermediária em português),
que seriam os bytecodes do Java.

A CLR se encarrega de:

Gerenciar a memória;
Verificar os tipos de forma segura;

Cuidar das exceções geradas pelas aplicações;


Implementar segurança;
Dar suporte a atributos personalizados;
Acessar metadados;
Promover a interoperabilidade de linguagens;

Aprimorar o desempenho;
Coletar o lixo, um mecanismo que descarta objetos que não estão em
uso na memória.

🙂
Imagine desenvolver um componente em C# e poder consumi-lo por meio de uma
aplicação com suporte da CLR como VB.NET ou F#. Bem bacana, não é?

O que é biblioteca de classes?


A biblioteca de classes, por sua vez, oferece à pessoa desenvolvedora um
conjunto de classes e interfaces, que permite acessar diversas funcionalidades
do sistema, além de ser o ponto de partida para o desenvolvimento de qualquer
solução na plataforma.

Sendo assim, através da biblioteca adequada, é possível criar aplicações para as


mais variadas tarefas, desde um aplicativo de linha de comando até a
implementação de serviços web RESTful.

As principais funcionalidades oferecidas pela biblioteca de classe do .NET são:

Representação de tipo e exceções;


Execução de operações de entrada e saída;
Acesso a dados e rede;
Encapsulamento de estruturas de dados, como listas e dicionários.

Dessa forma, com a biblioteca de classes, a pessoa desenvolvedora precisa se


preocupar somente em conhecer as classes necessárias para entregar a solução.

Para isso, você pode usar a documentação riquíssima do .Net, além de diversos
materiais auxiliares.

Ouvir um pouco de:


Presente e Futuro do .NET Hipsters #26

NET um pouco sobre o MSIL


Antes de mais nada, para entender o Microsoft Intermediate Language MSIL , é
importante entender o que é código gerenciado, que será executado dentro do
“ambiente controlado” da CLR.

O código gerenciado é escrito usando uma linguagem de programação de alto


nível, como C#, VB.NET ou F#.

Quando compilado, o código é convertido para o MSIL (ou simplesmente IL, que é
um código independente da arquitetura do CPU e será convertido para o código
de máquina em um arquivo com extensão .dll ou .exe .

A principal vantagem do código gerenciado é permitir que as pessoas


desenvolvedoras se preocupem com a lógica da aplicação, ao invés de detalhes
de baixo nível.

Além do mais, também oferece recursos avançados de interoperabilidade,


suporte a reflection e componentização.

O gerenciamento automático da memória também é uma das maiores facilidades.


Afinal de contas, tira a tarefa de desalocar recursos (como variáveis e objetos) de
forma manual e transmite tal responsabilidade para o Garbage Collector — o
coletor de lixo da memória.

.NET JIT
No contexto da execução de uma aplicação, temos o JIT just-in-time, na hora
certa, em tradução livre), que é um componente de vital importância para o .NET.

É através do JIT que ocorre a conversão do código de uma linguagem .NET para o
código de máquina específico de uma arquitetura do processador em uso. Esses
processos acontecem em tempo de execução.

O processo acontece da seguinte maneira: durante a execução da aplicação, o


código IL é gerado pela CLR que, em seguida, é repassado ao JIT Compiler — que
analisa o código, verificando as chamadas aos métodos. Tudo isso é compilado
para o código nativo de máquina.

Um dos principais benefícios da compilação JIT é a possibilidade de executar o


código diretamente pelo processador. O que traz ganhos importantes de
desempenho.

Além disso, durante o processo de compilação, o JIT pode melhorar o código a


partir de algumas técnicas como, por exemplo, eliminar o código que não foi
utilizado e otimizar laços, como for ou while .

É importante ressaltar que existem alguns tipos de JIT Compiler em .NET, por
exemplo:

Normal: compila os métodos da aplicação de forma individual;


Precompiler: compila todos os assemblies de uma só vez antes da
execução;
Economia de energia: faz uma série de otimizações adicionais para
reduzir consumo de energia em aplicativos embarcados ou mobile.

Então, em resumo, o JIT é o componente da arquitetura .NET que se encarrega de


traduzir o IL que as aplicações em código nativo geram, para executar na CLT (a
máquina virtual do .NET .

.NET assemblies
Dentro do universo do .NET, outro conceito importante são os Assemblies . Em
geral, trata-se de um pacote que contém arquivos como .dll , executáveis,
metadados e outros recursos necessários para executar o programa.

Então, uma aplicação escrita com tecnologia .NET compreende um conjunto de


assemblies dos tipos:

.dll: utilizado por outros assemblies, como um arquivo .dll que


congrega um conjunto de funções para gerar uma chave Pix, por
exemplo;

.exe : arquivo executável que criamos e será executado pela CLR.

Entender esse conceito é importante para encapsular o código em unidades


lógicas, reutilizar o código na forma de componentes, carregar os assemblies na
memória somente quando for necessário e obter informações do assembly de
forma programática usando `reflection´.

Bem, agora que você já sabe o que é um assembly, que tal entender como ele é
estruturado? Dê uma olhada na figura abaixo:

Header (cabeçalho): contém as informações usadas pelo sistema


operacional;
CLR Header: contém as informações que a CLR usará;
IL Code: mantém o código do assembly compilado em IL;
Type Metadata: contém os metadados referentes aos tipos contidos no
assembly, como classes, enums, structs;
Assembly Manifest: coleção de dados que ajudam a descrever o
assembly, como a versão e referências necessárias;
Embedded Resources: é uma seção opcional, pois a aplicação pode ter
ou não resources , que são arquivos como imagens, sons, vídeos, entre
outros.

A história do .NET
Para conhecer a história do .NET, temos que voltar aos anos 1990. Naquela
época, a Microsoft percebeu que precisava ter sua própria plataforma que unifica
todo processo de desenvolvimento de software.

Nesse mesmo período, o Java já despontava à frente de várias tecnologias e a


gigante do sr. Bill Gates não podia ficar para trás.

Eram muitos desafios. Mas, sem dúvidas, o principal era conseguir inovar e
superar as limitações tecnológicas.

Para dar início ao projeto desta nova plataforma de desenvolvimento, a empresa


contratou Anders Hejlsberg, o pai do Delphi, uma evolução do Pascal que era uma
das tecnologias mais populares para desenvolvimento de sistemas desktop na
época.

Mas o .NET iniciou, de forma oficial, apenas em julho de 2000. O objetivo principal
era fornecer um ambiente de desenvolvimento de aplicativos modernos e que
pudessem atender a ‘“nova” internet.

Para isso, a plataforma focou em interoperabilidade, produtividade e é claro


segurança.

Em fevereiro de 2002, a Microsoft lançou a primeira versão do .NET Framework


com CLR, biblioteca de classes e várias linguagens de programação — com
destaque à recém-criada C# e ao VB.NET.

O público-alvo inicial eram pessoas desenvolvedoras de aplicativos para a


plataforma Windows e sistemas web.

Com o passar dos anos, a plataforma passou por várias evoluções e atualizações,
se consolidando como uma solução de mercado poderosa para o
desenvolvimento de software.

Desde o início, a Microsoft também entregou uma nova versão da sua IDE, o
Visual Studio, que em 2005 trouxe melhorias significativas para o
desenvolvimento de aplicações .NET.

Em 2007, na versão 3.0, lançou a introdução das tecnologias WPF Windows


Presentation Foundation e WCF Windows Communication Foundation).

O WCF teve como objetivo criar um modelo para construir sistemas distribuídos,
de forma mais simples, que pudessem se comunicar usando diversos protocolos
como, por exemplo, HTTP ou MSMQ Microsoft Message Queuing).

O WPF, por sua vez, tinha o foco de criar interfaces mais atraentes e usava uma
linguagem de marcação para definir a estrutura e layout das telas de aplicações.

Em 2010, a versão .NET Framework 4 trouxe grandes melhorias no desempenho e


apresentou novos recursos como o tipo dynamic e a programação paralela.

Até este ponto da história, o .NET Framework focava apenas no ambiente


Windows. Mas como ficam as pessoas desenvolvedoras que trabalhavam no
Linux?

Bom, existiam iniciativas, como o Mono, que permitia trabalhar com .NET no
sistema do pinguim.

A Microsoft, sempre atenta às demandas da comunidade dev, anunciou em 2014


o .NET Core.

Trata-se de uma total reescrita do .NET Framework, focada em rodar tanto no


Windows quanto no Linux. Quer dizer, a Microsoft tem duas versões da sua
plataforma se desenvolvendo em paralelo.

Últimas versões do .NET


Mais recentemente, em 2020, a Microsoft decidiu unificar o .NET Framework e
.NET Core em uma só versão,. O que denominou de simplesmente de .NET.

De acordo com a Microsoft, o objetivo é unificar plataformas de estruturas


divergentes, reduzir complexidades e aumentar o alcance da plataforma.

As últimas versões do .NET Framework e .NET Core são 4.8 e 3.x,


respectivamente. A empresa decidiu lançar a iniciativa de unificação na versão 5
e, até o momento em que estou escrevendo este artigo, está na versão 7 e com a
versão 8 em preview.

Desde o início, a Microsoft evolui, constantemente, todo o ecossistema .NET,


incluindo novos recursos e removendo os que não fazem mais sentido.

Mas, atualmente, o .NET é uma robusta plataforma para desenvolvimento. É


amplamente utilizada na indústria de software e conta com uma ativa comunidade
de pessoas desenvolvedoras ao redor do mundo.

Olha só a evolução das versões do .NET até chegar na mais atual LTS (long
time support, suporte de longo prazo, em tradução livre):

Você pode conferir a versão acessível da linha do tempo no GitHub.

Nesse processo de evolução, assim como outras tecnologias, o .NET também


adotou o versionamento, disponibilizando as formas Preview e LTS Long Time
Support).

As versões pares são LTS, e as ímpares, as previews. Aqui está um recorte das
versões a partir de 2019

Fonte: Site Microsoft

Linguagens de programação da
plataforma .NET
Como você já sabe, é possível trabalhar com algumas linguagens diferentes
dentro da plataforma do .NET.

De fato, o C# está presente desde o nascimento do framework. No entanto, com


o passar dos anos, a Microsoft incorporou outras linguagens.

Essa foi uma forma de se manter sempre atualizada e relevante. Além de


proporcionar para as pessoas desenvolvedoras a possibilidade de escolher com
qual linguagem trabalhar.

Atualmente , algumas das linguagens que a plataforma suporta são:

C#: é a principal linguagem da plataforma — é moderna, orientada a


objetos e fortemente tipada. Com uma sintaxe muito próxima do C e
C ,possui uma curva de aprendizagem bem suave e uma comunidade
bastante ativa. Abaixo um exemplo de um código em C#:

Console.Write("Digite seu nome: ");

// Ler o nome inserido pelo usuário


string nome = Console.ReadLine();

// Exibir uma saudação usando o nome inserido


Console.WriteLine($"Olá, {nome}! Bem-vindo ao mundo da programação em

// Aguardar o usuário pressionar uma tecla antes de fechar o programa


Console.ReadKey();

VB.NE é a atualização do antigo Visual Basic para a plataforma .NET.


Então, quem já trabalhava com essa tecnologia VB consegue continuar
a criar aplicações na plataforma .NET sem problemas. Abaixo um
código exemplo em VB.NET

Imports System

Module Program
Sub Main()
' Solicitar ao usuário que insira seu nome
Console.Write("Digite seu nome: ")

' Ler o nome inserido pelo usuário


Dim nome As String = Console.ReadLine()

' Exibir uma saudação usando o nome inserido


Console.WriteLine($"Olá, {nome}! Bem-vindo ao mundo da programação em

' Aguardar o usuário pressionar uma tecla antes de fechar o programa


Console.ReadKey()
End Sub
End Module

F#: é a linguagem da Microsoft que foca em programação funcional. É


interessante como ela combina programação funcional e é orientada a
objetos, além de oferecer recursos avançados com relação à
programação assíncrona e paralela. Abaixo um exemplo:

open System

let main () =
printf "Digite seu nome: "
let nome = Console.ReadLine()
printfn $"Olá, {nome}! Bem-vindo ao mundo da programação em F#."
Console.ReadKey() |> ignore
main()

C é uma linguagem multiplataforma de uso geral, que implementa


orientação a objetos. É derivada da linguagem C;
IronPython: é uma implementação de código aberto da linguagem
Python integrada à plataforma .NET. Acesse a página da linguagem.

Essas são só alguns exemplos de linguagens que são compatíveis com a


plataforma. Mas também existem outros projetos que podem ser executados, por
exemplo, o Boo e Cobra.

Nuget, o gerenciador de pacotes


.NET
Como é comum em outras tecnologias modernas, a plataforma .NET também
possui um gerenciador de pacotes.

Essa ferramenta é de grande importância para o ecossistema, pois nos dá a


possibilidade de encontrar, instalar e gerenciar bibliotecas e extensões em nossos
projetos

Para entender melhor como funciona esse mecanismo, imagine que pessoas
desenvolvedoras têm a necessidade de reaproveitar código útil entre projetos.

Em .NET, podemos “empacotar” o código no formato de uma dl l e compartilhar.

Um pacote NuGet é, em resumo, um arquivo compactado com a extensão


.nupkg . que irá agrupar não só a dll, mas também os códigos relacionados,
scripts e arquivos de configuração.

Esses pacotes podem ser hospedados em um repositório privado dentro de uma


infraestrutura própria ou através do Nuget.org, repositório público em nuvem:

Essas são algumas das características e funcionalidades do Nuget:

Pacotes: unidades de código distribuíveis.


Repositórios: podemos armazenar os pacotes em um repositório
online. o muget.org, oficial da Microsoft. Ele mantém e hospeda
diversas bibliotecas reutilizáveis nos mais diversos projetos e
conseguimos procurar pacotes ou mesmo hospedar os nossos. Abaixo
a página do repositório:

Integração com o Visual Studio: O nuget possui uma completa


integração com o Visual Studio, a IDE padrão no desenvolvimento .NET.
Pessoas desenvolvedoras podem procurar, instalar e atualizar pacotes
diretamente através do gerenciador de pacotes NuGet no Visual Studio;
Linha de comando: além de possuir integração com o Visual Studio,, o
NuGet pode ser acessado através da CLI command line interface). Isso
permite usar o NuGet em outros ambientes de desenvolvimento e
também em scripts de automação;
Versionamento: com o NuGet é possível especificar versões de
pacotes para garantir a consistência e estabilidade em seus projetos.
Muito útil para evitar problemas de compatibilidade;
Restore: quando usamos o NuGet e o projeto é criado ou aberto no
Visual Studio, elet restaura os pacotes necessários a partir dos
repositórios especificados, garantindo que as dependências do projeto
sejam atendidas;
Suporte: dá suporte a diversos tipos de projetos .NET, de aplicativos
console até os mais recentes como o MAUI.

Conhecer o NuGet é essencial para aqueles que desenvolvem com a plataforma


.NET, pois facilita a distribuição e gerenciamento de bibliotecas.

Também colabora para a extensão de código reutilizáveis em projetos .NET,

🙂
economizando o esforço e contribuindo para o fortalecimento da comunidade
dev. Para saber mais sobre o NuGet, deixamos as recomendações a seguir:

Repositorio NuGet
Microsoft Uma introdução ao NuGet

Curso de C#: criando e distribuindo bibliotecas em .NET

Biblioteca de testes
Já sabemos que o .NET é uma plataforma ampla, com a qual podemos
desenvolver aplicações desktop, web e até mobile.

Nesse cenário, os testes representam uma boa prática da engenharia de


software, já que asseguram a qualidade do que criamos.

Eles também ajudam a identificar, corrigir bugs e podem, inclusive, melhorar o


design de código.

Tudo isso antes do sistema ser disponibilizado às pessoas usuárias finais.


Podemos implementar testes de unidade, integração, aceitação e tantos outros.

Mas, neste momento, queremos mostrar bibliotecas que permitem a


implementação de testes em seus projetos. Vamos listar as mais conhecidas e
difundidas no .NET

MSTest, está é uma biblioteca de teste fornecida pela própria Microsoft


com,sintaxe muito similar a quem desenvolve em .NET.

Entre as suas vantagens, está a integração com o Visual Studio e o suporte para
teste de unidade e integração.

Um exemplo de método de teste unitário usando o MSTest:

[TestClass]
public class SomaTests
{
[TestMethod]
public void TestCalcular()
{
// Arrange
Soma soma = new Soma();

// Act
double resultado = soma.Calcular(3.5, 2.5);

// Assert
Assert.AreEqual(6.0, resultado);
}
}

NUnit é uma das mais antigas bibliotecas de testes para .NET e foi desenvolvida
inspirada no JUnit do Java.

É bem popular na comunidade .NET por ser bastante robusta. Suas principais
características são: suporte a testes parametrizados, suporte a teste de unidade,
integração e funcionais.

Aqui está um exemplo de um método de teste unitário usando o NUnit:

[Test]
public void TestCalcular()
{
// Arrange
Soma soma = new Soma();

// Act
double resultado = soma.Calcular(3.5, 2.5);

// Assert
Assert.AreEqual(6.0, resultado);
}

xUnit é uma biblioteca com foco em simplicidade e extensibilidade. É uma das


mais populares para testar no .NET, sobretudo na comunidade ágil.

Suas principais características são: usar o conceito de teoria para testar várias
combinações em um único método de teste e ser altamente configurável,
permitindo a adoção de várias convenções de código.

Um exemplo de um método de teste unitário usando o NUnit:

[Fact]
public void TestCalcular()
{
// Arrange
Soma soma = new Soma();

// Act
double resultado = soma.Calcular(3.5, 2.5);

// Assert
Assert.Equal(6.0, resultado);
}

Existem diferenças entre essas bibliotecas. No entanto, todas permitem escrever


e executar testes automatizados de forma eficaz.

🦗
Além disso, são amplamente utilizadas na comunidade .NET para garantir a

🙃
qualidade do software desenvolvido. Portanto, gafanhoto , escolha com
sabedoria!

Como acessar dados em .NET


O acesso a dados é uma tarefa essencial dentro do desenvolvimento de sistemas.
Independentemente da plataforma, em algum momento pode ser necessário, por
exemplo, fazer alguma alteração na base de dados de uma aplicação.

Com este framework, quem desenvolve em C# tem diversas opções para


manipular uma base de dados de forma eficiente.

Uma das primeiras abordagens para acessar dados na plataforma é o ADO.NET


(ActiveX Data Objects), que entrega uma forma padronizada (praticamente uma
receita de bolo) para se conectar ao banco de dados relacionais, como SQL
Server, MySQL. entre outros.

Para fazer este acesso temos algumas classes como:

SqlConnection ;

SqlCommand ;

SqlDataReader ;

SqlDataset .

Tal conjunto de classes em conjunto permite que as pessoas programadoras


consigam criar consultas e executar comandos SQL em base de dados
relacionais.

Abaixo, um exemplo de um código de uma classe de conexão com MySql


utilizando ADO.NET

using MySql.Data.MySqlClient;

namespace ControleDeSeriesFilmes.DAO
{

sealed class ConnectionDAO


{

private static MySqlConnection conn = null;

public static MySqlConnection getConnection() {


if (conn == null)
{
conn = new MySqlConnection("Server=localhost;Database=filmesse
}
return conn;
}
}
}

Além do ADO.NET, o .NET também possui um ORM para chamar de seu: o Entity
Framework, ou simplesmente EF.

Um ORM Object-Relational Mapping) é uma ferramenta para realizar o


mapeamento de uma classe para uma tabela em um banco de dados relacional.

Dentre os motivos que levam a adoção dos ORMs, podemos citar os seguintes:

Facilidade: tal ferramenta facilita a interação com a base de dados


relacionais, pois não precisamos nos preocupar em tratar objetos;
Produtividade: com ORMs conseguimos evitar a complexidade
envolvida na interação com os bancos de dados. Sendo assim,
podemos nos concentrar mais na lógica de negócio do projeto e menos
nas consultas SQL específicas do banco;

Segurança: fornecem recursos de segurança, como a prevenção de


injeções SQL, o que ajuda a tornar seu programa mais resistente a
ataques maliciosos;

Refatoração: caso haja a necessidade de alteração no esquema do


banco de dados, um ORM pode facilitar esse processo de atualização
do código correspondente. As modificações podem ser refletidas mais
facilmente nos modelos de objetos;

Curva de aprendizagem: para pessoas desenvolvedores mais


familiarizados com programação orientada a objetos do que com SQL, a
utilização de ORMs pode reduzir a dificuldade em aprender o
necessário para trabalhar com bancos de dados.

Utilizando o EF é possível trabalhar com dados usando objetos e consultas LINQ


(Language Integrated Query), uma poderosa linguagem de consulta a coleções
de objetos, o que torna o acesso a dados mais intuitivo e produtivo.

Atualmente existe também o micro ORM conhecido como Dapper, uma biblioteca
que oferece uma forma, rápida, simples e eficiente para acessos a dados em
.NET.

É, portanto, uma boa opção em cenários em que a velocidade é um requisito


importante. É o caso de uma API REST, por exemplo. Vemos abaixo uma consulta:

`var rows = connection.Query("select 1 A, 2 B union all select 3, 4").AsList()

Para fechar, a plataforma .NET conta com diversas opções eficientes para acessar
a fonte de dados, colaborando para escolhermos a melhor abordagem.

De todo modo, deve-se levar em consideração as necessidades e requisitos de


cada aplicativo.

Para se aprofundar ainda mais em ferramentas de acesso a dados em .NET,


confira os links abaixo:

O que é o Dapper?
Documentação ADO.NET

Documentação EF

Certificações
😉
Progredir na trajetória profissional em tecnologia é um objetivo compartilhado por
muita gente .

Na programação, em especial, é importante para o desenvolvimento profissional


ter uma forma de atestar para empresas a nossa capacidade e conhecimento no
trabalho com uma linguagem, por exemplo.

Para isso, temos as certificações, comprovações oferecidas por empresas como


a IBM, Google, Oracle e também Microsoft.

Elas são interessantes possibilidades de atestar suas capacidades técnicas em


tecnologias específicas, o que pode ser uma exigência de mercado para uma
vaga.

Vale a pena fazer uma certificação? #HipstersPontoTube "

As certificações da Microsoft são reconhecidas globalmente e estão em


constante atualização, com uma orientação bem voltada ao mercado.

Possuir uma delas pode ser uma grande vantagem para profissionais que estejam
à procura de um emprego ou queiram melhorar seus currículos.

O universo de certificações é bem extenso, você pode vê-las na página oficial


como na imagem abaixo:

Vamos abordar algumas certificações .NET focadas em pessoas


desenvolvedoras:

Azure Fundamentals Exame AZ 900


O objetivo desta certificação é que a pessoa desenvolvedora demonstre
conhecimentos básicos de computação em nuvem em geral e do Microsoft Azure
em particular.

É, portanto, um pré-requisito para as outras certificações Azure.

Azure Developer Associate Exame AZ


204
Nesta certificação, a pessoa precisa demonstrar conhecimentos em todas as
fases do ciclo de desenvolvimento, incluindo a coleta de requisitos, design,
desenvolvimento, implantação, segurança, manutenção e monitoramento da
aplicação.

Assim, precisa conhecer os seguintes itens do Azure:

SDKs Software Development Kits);

Opções de armazenamento de dados;


Conexões de dados;

APIs;
Autenticação/autorização de aplicativo;

Implantação de computação/contêiner;
Depuração.

Um ponto de atenção é que a pessoa deve ter no mínimo 2 anos de experiência


em desenvolvimento profissional e experiência com o Azure.

Azure Data Fundamentals Exame DP 900


Com essa certificação, a pessoa atesta habilidades técnicas para criar e começar
a trabalhar com dados na nuvem do Azure.

Nesse caso, é necessário ter familiaridade com conceitos como dados relacionais
e não-relacionais.

Azure Data Fundamentals Exame DP 420


A exigência dessa certificação é ter experiência para projetar, implementar e
monitorar aplicativos nativos de nuvem, que armazenam e gerenciam dados.

Outras responsabilidades necessárias são a implementação de modelos e de


distribuição de dados, o carregamento de dados em um banco do Azure Cosmos
DB e a otimização e manutenção da solução.

É importante também ter a capacidade de interpretar JSON, ler código C# ou


Java e usar o PowerShell.

Essas são só algumas das certificações disponibilizadas pela Microsoft, mas


alguém pode se perguntar "Cadê a certificação de C#?” Ou de Banco de Dados
SQL?”.

Acontece que o direcionamento da empresa neste quesito, nos últimos anos, tem
focado na sua plataforma de cloud computing, o Azure.

No entanto, no site das certificações, ainda é possível consultar certificações e


exames descontinuados.

Uma novidade interessante é a de que recentemente a Microsoft anunciou uma


certificação de fundamentos do C# em parceria com a [freeCodeCamp]
(https://www.freecodecamp.org/learn/foundational-c-sharp-with-microsoft/).

O melhor de tudo é que é uma certificação gratuita. Nesta iniciativa, a pessoa


interessada executa uma série de treinamentos e exercícios em texto pelo site
Microsoft Lean,

À medida em que você conclui os módulos e progride no treinamento, você


adquire troféus que serão utilizados nas atividades da plataforma da
freeCodeCamp.

Para saber mais sobre as certificações para o ecossistema .NET, consulte o site
do Microsoft Learn.

Confira também o link a respeito de certificações de alunos.

Comunidades .NET
Desde a criação do framework, a comunidade .NET é uma das mais ativas dentro
do universo da tecnologia.

Atualmente, existem diversas comunidades, grupos de discussões, eventos e


encontros técnicos que ajudam a difundir o .NET e a alavancar ainda mais sua
popularidade.

Participar de comunidades é uma ótima oportunidade para trocar experiências e


conhecimentos e encontrar parcerias em projetos.

Além do mais, por ser um ambiente de aprendizagem e de colaboração, a


comunidade é uma ferramenta poderosa para aumentar a motivação e a
produtividade.

No Brasil, a comunidade .NET é gigante e conta com diversas iniciativas pelo país.

Você pode encontrar os eventos online e presenciais mais perto de você no site
do Meetup. Essas são algumas das comunidades .NET

Campinas .NET
.NET São Paulo

.NET Curitiba
Coders in Rio

.NET Cachu
Itu Developers

Inclusive, a própria Microsoft incentiva a formação de comunidades. É só ver, por


exemplo, iniciativas da empresa como o Reactor, centro de aprendizado
compartilhado para pessoas desenvolvedoras se conectarem localmente.

Comunidades em tecnologia | Hipsters.Talks "

Conclusão
Atualmente, o .NET possui um ecossistema robusto, com uma comunidade vasta
e ativa dentro do mundo da tecnologia. Atrelado a ele, existe o C#, umas das
linguagens mais populares para desenvolver diversos tipos de projeto, como
aplicações para desktop, aplicativos móveis, sistemas web e microsserviços.

Vale ressaltar que esse assunto não se encerra aqui, afinal a plataforma .NET está
em constante evolução, especialmente após ter adotado outras tecnologias,
como a máquina virtual CLR , o suporte à programação orientada a objetos e a
integração com soluções em nuvem (como Azure).

Quer se aprofundar ainda mais na tecnologia .NET? Aqui estão algumas


referências para te ajudar:

Tech Guide C#, um guia de referência para estudar C# e .NET, trazendo


tecnologias e conceitos que vão te ajudar a ser um profissional em T.
Artigo Listas em C#

Artigo Strings com c#: como usá-las para manipular textos

Artigo Como separar palavras em String com C#


Artigo Criando uma solução C# no Linux Ubuntu

Artigo C#: entendendo classes e structs


Artigo Como criar uma calculadora de IMC com ASP.NET Core Blazor

Artigo Quem está por trás das principais linguagens de programação?


Artigo Regex em C#: como utilizar expressões regulares

Alura+ Blazor: o que é, WebAssembly e o uso de C# no Front-End

André Bessa

Eu sou programador e instrutor de programação usando C# e .NET. Formado em Sistemas de Informação. já programei usando Java, PHP,C#, PostgreSQL e
MySQL, além de já ter atuado com suporte também. Buscando sempre aprender mais sobre tecnologias.Hobbies são gibis e séries.

Artigo Anterior Próximo Artigo

Faculdade de programação: o que você precisa fazer para se tornar uma pessoa C# Conhecendo a linguagem orientada a objetos mais popular da Microsoft
programadora

Leia também:
Novidades do .NET 5
Como criar uma calculadora de IMC com ASP.NET Core Blazor
O que é Front-end Back-end e Full Stack - aprenda as diferenças entre essas áreas
Criando uma solução C# no Linux Ubuntu
Microsserviços com .NET Core: Comunicação Entre Serviços
Conheça o Microsoft Azure: ferramenta para criar serviços de nuvem
Sua jornada de estudos de programação na Alura

Veja outros artigos sobre Programação

Quer mergulhar em
tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights


do mercado de trabalho, ciência e desenvolvimento de software

Escreva seu email ME INSCREVA

Nossas redes e apps

AOVS Sistemas de Informática S.A


CNPJ 05.555.382/0001 33

Institucional A Alura Conteúdos Fale Conosco Novidades e Lançamentos

Sobre nós Formações Alura Cases Email e telefone Email* ENVIAR

Trabalhe conosco Como Funciona Imersões Perguntas frequentes

Para Empresas Todos os cursos Artigos

Para Sua Escola Depoimentos Podcasts

Política de Privacidade Instrutores(as) Artigos de educação


corporativa
Compromisso de Integridade Dev em T

Termos de Uso Luri, a inteligência artificial da Alura

Status

Parceiros

Fomos uma das 7 startups selecionadas


Nós, da Alura, somos uma das Scale-Ups pelo Google For Startups a participar do
selecionadas pela Endeavor, programa de programa Growth Academy em 2021.
aceleração das empresas que mais
crescem no país.

CURSOS

Cursos de Programação Lógica | Python | PHP | Java | .NET | Node JS | C | Computação | Jogos | IoT

Cursos de Front-end HTML, CSS | React | Angular | JavaScript | jQuery

Cursos de Data Science Ciência de dados | BI | SQL e Banco de Dados | Excel | Machine Learning | NoSQL | Estatística

Cursos de Inteligência IA para Programação | IA para Dados


Artificial
Cursos de DevOps AWS | Azure | Docker | Segurança | IaC | Linux

Cursos de UX & Design Usabilidade e UX | Vídeo e Motion | 3D

Cursos de Mobile React Native | Flutter | iOS e Swift | Android, Kotlin | Jogos

Cursos de Inovação & Gestão Métodos Ágeis | Softskills | Liderança e Gestão | Startups | Vendas

EDUCAÇÃO EM TECNOLOGIA MAIS ALURA COMUNIDADE PODCASTS

Alura FIAP Alura Start Tech Guide Hipsters ponto Tech

Casa do Código Alura Língua 7 days of code Dev sem Fronteiras

PM3 Cursos de Produto Alura Para Empresas Hipsters ponto Jobs Layers ponto Tech

Alura LATAM

Você também pode gostar