Essa é uma coleção de projetos Csharp dividida em tópicos que contém exemplos de código com explicações, diferentes usos e links para outras leituras.
Ler em: English, Español, Traditional Chinese.
É um playground porque você pode fazer alterações no código para ver como ele se comporta, além de testá-lo usando asserções. Também é possível revisar o código que você escreveu automaticamente e verificar se ele se encaixa no guia de estilo de código Csharp. Isso tudo pode tornar seu processo de aprendizagem mais interativo e ajudar a manter a qualidade do código bastante alta desde o início.
É um cheatsheet porque você pode voltar a esses exemplos de código quando quiser recapitular a sintaxe das estruturas padrão do Csharp. O código está cheio de asserções, então você poderá ver o retorno dos métodos sem precisar executá-los.
Você pode se interessar também por 🤖 Gravatar Extensions
Nesse repositório, cada projeto Csharp possui a seguinte estrutura:
"""Lists <--- Nome do tópico
# @see: https://www.learncs.org/en/Lists <-- Link para outras leituras.
A seguir, uma explicação mais detalhada do tópico atual (ex, informações gerais sobre listas (Lists)).
"""
List<int> numbers = new List<int>();
"""Explicação do subtópico.
Cada arquivo contém funções de teste que ilustram subtópicos (ou seja, tipo de lista, métodos de lista).
"""
# As listas em C# são muito semelhantes às listas em Java. Uma lista é um objeto que contém variáveis em uma ordem específica. O tipo de variável que a lista pode armazenar é definido usando a sintaxe genérica. Aqui está um exemplo de definição de uma lista chamada numbersque contém números inteiros. <-- Comentários explicam a ação.
List<int> numbers = new List<int>();
A diferença entre uma lista e um array é que as listas são de tamanho dinâmico, enquanto os arrays têm um tamanho fixo. Quando você não souber a quantidade de variáveis que seu array deve conter, use uma lista.
Uma vez que a lista é inicializada, podemos começar a inserir números na lista.
List<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
numbers.Add(3);
# Também podemos adicionar um array inteiro a uma lista usando a AddRange função:
List<int> numbers = new List<int>();
int[] array = new int[] { 1, 2, 3 };
numbers.AddRange(array);
Então você pode querer fazer o seguinte:
- Encontrar o tópico que deseja aprender ou recapitular.
- Ler os comentários e/ou a documentação vinculada em cada projeto (como no exemplo acima).
- Analisar os exemplos e asserções para ver exemplos de uso e saída esperada dos métodos.
- Alterar o código ou adicionar novas asserções para ver o que acontece.
- Executar testes e revisar o código para ver se ele funciona e para saber se está escrito corretamente.
- Começando
- Operadores
- Operadores Aritméticos (
+
,-
,*
,/
,%
) - Operadores Bitwise (
&
,|
,^
,>>
,<<
,~
) - Operadores de Atribuição (
=
,+=
,-=
,*=
,/=
,%=
etc.) - Operadores de Relacionais (
==
,!=
,>
,<
,>=
,<=
) - Operadores Lógicos (
&&
,||
,!
)
- Operadores Aritméticos (
- Tipos de Dados
- Controles de Fluxo
- Funções
- Classes
- Módulos
- Erros e Exceções
- Tratando Exceções (declaração
try
)
- Tratando Exceções (declaração
- Arquivos
- Lendo e Escrevendo (declaração
StreamWriter writer = new StreamWriter("erismar.txt")
)
- Lendo e Escrevendo (declaração
- Adicional
- Algumas Bibliotecas Padrão
- Tempo e Datas (biblioteca
DateTime
)
- Tempo e Datas (biblioteca
Instalando o Dotnet
Certifique-se de ter o Sdk Dotnet instalado em sua máquina.
Você pode ver a versão do Dotnet executando:
dotnet --version
Observe que neste repositório sempre que você vê o dotnet
, será assumido que é o Dotnet 6.
Instalando dependências
Instale todas as dependências necessárias para o projeto executando:
dotnet restore
Testes são feitos usando o framework Xunit.
Para executar todos os testes, execute o seguinte comando na pasta raiz do projeto:
dotnet test
Para executar testes específicos, execute:
dotnet test teste.cs