TOC

This article has been localized into Portuguese by the community.

Iniciando:

Explicando o Hello world

No capítulo anterior, nós tentamos escrever um pedaço de texto no console, na nossa primeira aplicação em C#. Para vermos um verdadeiro progresso, nós não entramos em muitos detalhes sobre as linhas de código que usamos, então este capítulo é uma explicação do código de exemplo do Hello World. Como você provavelmente pode observar pelo código, algumas das linhas são similares, então vamos trazê-las em grupos para uma explicação individual. Vamos começar com os caracteres mais curtos e comuns do nosso código: o { e }. Elas são geralmente chamadas de chaves, e em C#, elas marcam o início e o fim de um bloco lógico de código. As chaves são usadas em várias linguagens, incluindo C++, Java, JavaScript e muitas outras. Como você pode ver no código, elas são usadas para envolver várias linhas de código que pertencem juntas. Em exemplos futuros, ficará mais claro como elas são usadas.

Agora vamos começar pelo início:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using é uma palavra-chave, realçada em azul pelo editor. A palavra-chave using importa um namespace, e um namespace é uma coleção de classes. Classes trazem alguns tipos de funcionalidade, e quando trabalhamos com um IDE avançado tipo o Visual Studio, usualmente partes triviais do código serão criadas automaticamente. Neste caso, ele criou uma classe para nós, e importou os namespaces necessários ou esperados que são normalmente utilizados. Neste caso, 5 namespaces foram importados para nós, cada um contendo um monte de classes úteis. Por exemplo, nós usamos a classe Console, a qual faz parte do namespace System.

Porém, nós realmente ainda não usamos o namespace System.Linq (por exemplo), então se você for um purista, pode escolher por remover esta linha, mas isso não vai fazer diferença até agora.

Como pode ver, temos até nosso próprio namespace

namespace ConsoleApp1

A ConsoleApp1 agora é a namespace principal para essa aplicação, e novas classes serão parte dela por padrão. Obviamente, você pode mudar isso, e criar classes em outra namespace. Neste caso, você terá que importar esta nova namespace para usar em sua aplicação, com a declaração using, com qualquer outra namespace.

Em seguida, definimos a nossa classe. Como C# é uma linguagem orientada a objetos, cada linha de código que efetivamente faz algo, é envolvido na classe. Neste caso, a classe é simplesmente chamada de "Program" (programa, em português).

class Program

Podemos ter mais de uma classe no mesmo arquivo. Por enquanto, precisamos apenas de uma classe. Uma classe pode conter várias variáveis, propriedades e métodos, conceitos nos quais iremos aprofundar mais tarde. Por enquanto, tudo que você precisa saber é que nossa classe atual contém apenas um método e nada mais. É declarado assim:

static void Main(string[] args)

Esta linha é provavelmente a mais complicada neste exemplo, então vamos dividir um pouco. A primeira palavra é static. A palavra-chave static nos diz que esse método deve ser acessível sem instanciar a classe, mais sobre isso em nosso capítulo sobre classes.

A próxima palavra-chave é void e nos informa o que esse método deve retornar. Por exemplo, poderia ser um inteiro ou uma string de texto, mas neste caso, não queremos que nosso método retorne nada (o C # usa a palavra-chave void para expressar o conceito de nada ).

A próxima palavra é Main, que é simplesmente o nome do nosso método. Este método é o chamado ponto de entrada da nossa aplicação, ou seja, a primeira peça de código a ser executada e, no nosso exemplo, a única peça a ser executada.

Agora, após o nome de um método, um conjunto de argumentos pode ser especificado dentro de um conjunto de parênteses. Em nosso exemplo, nosso método usa apenas um argumento, chamado args . O tipo do argumento é uma string ou, para ser mais preciso, uma matriz de strings, mas mais sobre isso depois. Se você pensar bem, isso faz todo o sentido, já que os aplicativos do Windows sempre podem ser chamados com um conjunto de argumentos optinal. Esses argumentos serão passados como strings de texto para o nosso método principal.

E é isso. Agora você deve ter uma compreensão básica de nosso primeiro aplicativo C#, bem como os princípios básicos do que faz um aplicativo de console funcionar.