C#: Configurando o ambiente de desenvolvimento

Configurar um ambiente de desenvolvimento é como preparar um estúdio de arte — assim que a tela (SDK do .NET) e os pincéis (VS Code) estiverem prontos, você pode começar a criar (escrever código em C#).

1. Instalação do SDK do .NET

O SDK (.NET) (Kit de Desenvolvimento de Software) é o conjunto de ferramentas essencial para o desenvolvimento de programas em C#, contendo o compilador, o ambiente de execução e as ferramentas de gerenciamento de projetos. É necessário instalá-lo antes de poder escrever, compilar e executar programas em C#.

(1) Instalação no Windows

  1. Acesse https://dotnet.microsoft.com/download/dotnet/8.0 para baixar o instalador do SDK do .NET 8
  2. Execute o instalador e conclua a instalação com as opções padrão
  3. Abra um prompt de comando e verifique:
BASH
dotnet --version
TEXT 📖 Somente leitura
8.0.xxx

Se você vir um número de versão, a instalação foi bem-sucedida.

(2) Instalação no macOS

Instale usando o Homebrew:

BASH
brew install dotnet-sdk

Ou baixe o instalador do macOS no site oficial. Verifique da mesma forma:

BASH
dotnet --version

(3) Instalação no Linux

Ubuntu/Debian:

BASH
sudo apt-get update
sudo apt-get install -y dotnet-sdk-8.0

CentOS/RHEL:

BASH
sudo dnf install -y dotnet-sdk-8.0

Verifique a instalação:

BASH
dotnet --version

💡 Dica: Este livro utiliza o .NET 8 (LTS — Suporte de Longo Prazo). Certifique-se de instalar o SDK, e não apenas o Runtime. O SDK inclui todas as ferramentas necessárias para o desenvolvimento.

(4) Principais componentes incluídos no SDK

Componente Função
Compilador Roslyn Compila código C# para a Linguagem Intermediária (IL)
dotnet CLI Ferramenta de linha de comando para criar, compilar e executar projetos
Runtime do .NET Executa programas compilados
Gerenciador de pacotes NuGet Gerencia dependências de bibliotecas de terceiros

2. Configurando o VS Code

O VS Code é um editor de código gratuito desenvolvido pela Microsoft. Quando usado em conjunto com a extensão C#, ele oferece uma experiência poderosa de desenvolvimento em C#.

(1) Instalando o VS Code

Acesse https://code.visualstudio.com para fazer o download e a instalação.

(2) Instalação das extensões necessárias

Abra o VS Code, pressione Ctrl+Shift+X para abrir a loja de extensões e, em seguida, procure e instale:

Extensão Finalidade
Kit de Desenvolvimento C# (Microsoft) Suporte completo para realce de sintaxe, IntelliSense, depuração e gerenciamento de projetos
C# (Microsoft) Serviço básico da linguagem C# (geralmente instalado automaticamente com o Dev Kit)

(3) Configurando o Dev Kit do C#

Após instalar o C# Dev Kit, a extensão detecta automaticamente o SDK do .NET instalado no seu computador. Você pode verificar se a configuração está correta da seguinte forma:

  1. Pressione Ctrl+Shift+P, digite .NET: New Project — se aparecer uma lista de modelos de projeto, a configuração foi bem-sucedida
  2. A barra de status na parte inferior deve exibir o número da versão do SDK do .NET

⚠️ Atenção: Ao abrir uma pasta no VS Code, crie uma pasta exclusiva (por exemplo, csharp-learn) e abra a pasta inteira no VS Code, em vez de apenas um arquivo. Isso é necessário para que o C# Dev Kit funcione corretamente.


3. Seu primeiro programa: Hello World

▶ Exemplo

Use a CLI do dotnet para criar seu primeiro aplicativo de console:

BASH
dotnet new console -n MyFirstApp
TEXT 📖 Somente leitura
The template "Console App" was created successfully.
Processing post-creation actions...
Restoring packages...
Determining projects to restore...
Restored MyFirstApp.csproj (in 1.2s).

Acesse o diretório do projeto e execute-o:

BASH
cd MyFirstApp
dotnet run
TEXT 📖 Somente leitura
Hello, World!

Esse é o seu primeiro programa em C#! O comando dotnet new console gera automaticamente a estrutura do projeto e o código.

(1) Estrutura do projeto

Após a criação, a pasta do projeto contém:

TEXT 📖 Somente leitura
MyFirstApp/
├── MyFirstApp.csproj
├── Program.cs
└── obj/
    └── ...
Arquivo Finalidade
Program.cs Ponto de entrada do programa, contém o código principal
MyFirstApp.csproj Arquivo de configuração do projeto, define o SDK, a estrutura de destino, etc.
obj/ Diretório de saída da compilação intermediária

4. Comandos comuns da CLI do .NET

A CLI do .NET é a principal ferramenta de linha de comando para o desenvolvimento em .NET. Dominá-la é mais eficiente do que depender de um IDE.

(1) Comandos de gerenciamento de projetos

Comando Finalidade Exemplo
dotnet new console Criar um projeto de console dotnet new console -n MyApp
dotnet new classlib Criar um projeto de biblioteca de classes dotnet new classlib -n MyLib
dotnet new list Listar todos os modelos disponíveis dotnet new list

O parâmetro -n especifica o nome do projeto. Se for omitido, será utilizado o nome da pasta atual.

(2) Compilar, executar e publicar

Comando Finalidade Exemplo
dotnet build Compilar o projeto (sem executar) dotnet build
dotnet run Compilar e executar o projeto dotnet run
dotnet publish Publicar o projeto (para implantação) dotnet publish -c Release

▶ Exemplo

BASH
dotnet build
TEXT 📖 Somente leitura
MSBuild version 17.8.xxxx
  Determining projects to restore...
  Restored MyFirstApp.csproj (in 102 ms).
  MyFirstApp -> G:\csharp-learn\MyFirstApp\bin\Debug\net8.0\MyFirstApp.dll

Build succeeded.
    0 Warning(s)
    0 Error(s)

🔥 Dica: dotnet run = dotnet build + execução automática. Use dotnet run para testes rápidos durante o desenvolvimento e dotnet build para verificar se há problemas de compilação em compilações formais.


5. Instruções de nível superior x Programa tradicional. Principal

O C# 9 introduziu as instruções de nível superior, simplificando drasticamente a sintaxe dos programas de console. Compreender os dois estilos ajuda a ler códigos em C# de diferentes épocas.

(1) Instruções de nível superior (C# 9+, padrão)

dotnet new console gera um Program.cs que, por padrão, utiliza instruções de nível superior:

CSHARP
System.Console.WriteLine("Hello, World!");

Apenas uma linha — sem namespace, sem classe, sem método Main. O compilador a envolve automaticamente em um método Main gerado.

(2) Programa Tradicional. Estilo Principal

A abordagem anterior ao C# 9, em que todo o código deve estar dentro de um método Main:

CSHARP
using System;

namespace MyFirstApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }
}

(3) Comparando os dois estilos

Destaque Declarações de alto nível Programa Tradicional.Página principal
Volume de código Muito pouco Mais código padrão
Método de entrada Gerado automaticamente pelo compilador Definido manualmente static void Main
Declarações using Podem ser omitidas (use nomes totalmente qualificados) Geralmente requerem using System;
Espaço de nomes Não é necessária declaração É necessário declarar
Argumentos da linha de comando Acesso direto por meio da variável args Por meio do parâmetro Main(string[] args)
Casos de uso Programas simples, aprendizado, scripts Grandes projetos que exigem controle de acesso detalhado
Versão do C# C# 9+ Todas as versões

📌 Ponto-chave: As instruções de nível superior e o estilo tradicional são funcionalmente equivalentes. As instruções de nível superior são apenas um recurso sintático — o código IL gerado é essencialmente o mesmo. Apenas um arquivo em um projeto pode usar instruções de nível superior.

(4) Acesso aos argumentos da linha de comando por meio de instruções de nível superior

CSHARP
if (args.Length > 0)
{
    System.Console.WriteLine($"Hello, {args[0]}!");
}
else
{
    System.Console.WriteLine("Hello, World!");
}
BASH
dotnet run -- Alice
TEXT 📖 Somente leitura
Hello, Alice!

Os argumentos após -- são passados ao programa. Em instruções de nível superior, args é inserido automaticamente pelo compilador.


6. Erros comuns de compilação

Como iniciante, você certamente encontrará erros de compilação. Não entre em pânico — aprender a interpretar as mensagens de erro é mais importante do que evitá-las.

(1) CS1002: Espera-se um ponto-e-vírgula

CSHARP
System.Console.WriteLine("Hello, World!")
TEXT 📖 Somente leitura
Program.cs(1,40): error CS1002: ; expected

O formato do erro é nome do arquivo(linha, coluna): código de erro: descrição. Falta um ponto-e-vírgula no final desta linha — toda instrução em C# deve terminar com um ponto-e-vírgula.

(2) CS0103: O nome não existe no contexto atual

CSHARP
Console.WriteLine("Hello, World!");
TEXT 📖 Somente leitura
Program.cs(1,1): error CS0103: The name 'Console' does not exist in the current context

Você utilizou Console sem using System; ou o nome totalmente qualificado System.Console. Duas soluções: adicione using System; ou utilize System.Console.

(3) CS0117: Não contém uma definição

CSHARP
System.Console.WritLine("Hello, World!");
TEXT 📖 Somente leitura
Program.cs(1,17): error CS0117: 'Console' does not contain a definition for 'WritLine'

WriteLine foi escrito incorretamente como WritLine. O compilador está informando que a classe Console não possui nenhum membro chamado WritLine — verifique a ortografia.

(4) CS0120: É necessária uma referência a um objeto para um campo não estático

CSHARP
namespace MyApp
{
    class Program
    {
        string name = "C#";
        static void Main(string[] args)
        {
            System.Console.WriteLine(name);
        }
    }
}
TEXT 📖 Somente leitura
Program.cs(8,37): error CS0120: An object reference is required for the non-static field, method, or property 'Program.name'

Você acessou um campo não estático name a partir do método estático Main. Os métodos estáticos pertencem à própria classe, enquanto os membros não estáticos pertencem às instâncias da classe — é necessário criar um objeto primeiro.

⚠️ Dica para interpretar mensagens de erro: O número da linha indicado pode corresponder à posição após o erro real. Se uma linha apresentar um erro, verifique essa linha e a linha acima dela quanto à ortografia, ponto-e-vírgula e parênteses. Os códigos CS são códigos de erro oficiais da Microsoft — você pode pesquisar um número CS online para encontrar explicações detalhadas.

❓ Perguntas Frequentes

P: Após instalar o SDK do .NET, a linha de comando exibe a mensagem “dotnet não é reconhecido como um comando”. O que devo fazer? R: Isso significa que o diretório de instalação do .NET não está no PATH do seu sistema. No Windows, executar novamente o instalador do SDK geralmente corrige isso automaticamente. Caso contrário, adicione manualmente o diretório do dotnet (por exemplo, C:\Arquivos de Programas\dotnet) ao PATH do sistema e, em seguida, reinicie a linha de comando.

P: Qual é a diferença entre o C# Dev Kit e a antiga extensão do C#? R: O C# Dev Kit é uma nova extensão lançada pela Microsoft em 2023. Ele integra gerenciamento de projetos, um Solution Explorer, um Test Explorer e muito mais — a experiência é muito mais parecida com a do Visual Studio. A antiga extensão C# oferece apenas serviços básicos de linguagem. Recomenda-se o uso do C# Dev Kit.

P: Existe alguma diferença de desempenho entre as instruções de nível superior e o estilo tradicional? R: Absolutamente nenhuma. As instruções de nível superior são apenas um recurso sintático — o compilador as converte em um método Main padrão. O código IL gerado e o desempenho em tempo de execução são idênticos. Escolha o estilo que melhor se adequar à legibilidade do seu código e à escala do projeto.

P: Qual é a diferença entre dotnet run e dotnet build? R: dotnet build apenas compila o projeto e gera arquivos DLL sem executá-lo. O dotnet run compila (se necessário) e, em seguida, executa automaticamente o programa. Use o dotnet run para facilitar a depuração durante o desenvolvimento e o dotnet build para compilações de CI/CD mais controladas.

📖 Resumo

📝 Exercícios

  1. Instale o SDK do .NET 8 no seu computador e verifique se dotnet --version é exibido corretamente. Anote o número da versão
  2. Use dotnet new console -n Homework02 para criar um projeto. Modifique o arquivo Program.cs para exibir seu nome e uma saudação (por exemplo, “Olá, sou o Alex e estou começando a aprender C#!”), depois execute o programa e faça uma captura de tela
  3. Reescreva a versão das instruções de nível superior do exercício 2 no estilo tradicional do Program.Main e verifique se ambas produzem a mesma saída
  4. Introduza intencionalmente três erros de compilação (falta de ponto-e-vírgula, erro ortográfico, omissão de “using”), registre os códigos CS e as descrições dos erros e pratique a leitura das mensagens de erro
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%