Primeiras aulas do curso C# parte 1: Primeiros passos

C# parte 1: Primeiros passos

História e ecossistema da linguagem - Introdução

Olá, meu nome é Guilherme Matheus! Eu serei o seu instrutor no curso de primeiros passos com C#. Nós começaremos contando a história da linguagem e entendendo o que levou a Microsoft a desenvolver o C# e o .Net. Este último pode soar um pouco confuso, mas vamos nos aprofundar sobre que é o .Net e .Net Framework, assim como qual é o seu papel dentro da plataforma do C#.

Escreveremos o programa no bloco de notas, desta forma, por linha de comando conseguiremos compilar e entender corretamente como ocorre o processo de compilação do C#. Em seguida, instalaremos o Visual Studio, veremos quais são as diferenças de cada versão desse editor, e depois, iremos utilizá-lo quando trabalharmos propriamente com a linguagem.

A linguagem C# é utilizada em vários mercados, então, encontramos projetos no mercado financeiro, no governo, e atualmente, ela é adotada inclusive no desenvolvimento de games, por exemplo, para Playstation, Xbox, e até aplicativos mobile.

Nós aprenderemos a sintaxe básica, apresentaremos alguns comandos do C#, como funciona a declaração de variáveis, atribuições, quais são algumas regras que devemos prestar atenção nesse momento. Se você conhecer outra linguagem, perceberá que ela é uma linguagem bastante restrita. Ou seja, a sintaxe do C# nos obriga a escrever de uma forma correta sempre.

Isso pode parecer ruim a princípio, no entanto, vamos entender os benefícios dessa linguagem ser fortemente tipada que o C# nos oferece. Faremos diversos projetos, nos quais discutiremos diferentes tópicos e aprenderemos bastante coisa.

Formalizaremos o conhecimento da linguagem e estaremos preparados para aprender tópicos como orientação a objetos e outros que serão abordados nos próximos cursos da Alura. Vamos lá?

História e ecossistema da linguagem - Historia e ecossistema .NET

Vamos começar os primeiros passos com a poderosa linguagem C#. Você possivelmente chegou aqui com vários nomes em mente, talvez, como esses:

Uma ligação com C e C++, pode ter uma possível confusão entre os nomes, nós vamos te explicar tudo isso. Para construirmos o código C#, na aplicação, precisaremos entender o ecossistema que dá suporte para nossa linguagem. Vamos iniciar por um exemplo antigo, um aplicação desenvolvida na linguagem C que funcionará em um sistema operacional, no caso, será Windows.

O próximo passo será abrir o bloco de notas e analisar como é o seu funcionamento em Windows. O editor nos oferece algumas funções como abrir, salvar, formatar um documento. Além disso, ele nos oferece os botões de fechar (lateral superior direita, em vermelho), maximizar e minimizar.

Conseguimos expandir a janela do editor, e isso foi desenvolvido para a aplicação - a maioria das aplicações do Windows utiliza esse código. Esse código que possui as funções muito utilizadas é uma biblioteca. No cenário que tínhamos até o fim dos anos 80, necessitávamos uma biblioteca em C, só então, fazíamos a comunicação com o sistema operacional.

Algo semelhante acontecia se tínhamos uma aplicação em Visual Basic (VB), também precisávamos de um biblioteca para manipular o botão de fechar e termos controle da aplicação. Sempre que criávamos uma aplicação em uma determinada linguagem, precisamos trabalhar com um biblioteca correspondente.

No entanto, existia um problema. A Microsoft tinha um ecossistema de aplicações gigantesco no fim dos anos 80, que ia além do Windows ou o pacote Office, ou as aplicações que estavam dentro do Windows como o bloco de notas, a calculadora. Eram vários times de desenvolvimento dentro da Microsoft, adotando linguagens diferentes em alguns casos. Mas o que acontecia se , por algum motivo, fosse necessário reescrever a aplicação inicialmente escrita em C e passá-la para VB. Não bastava somente reescrevermos a aplicação. Nós precisávamos reescrever também a biblioteca. Às vezes não era tão trabalhoso fazer essa transição, e já existia por exemplo a biblioteca em VB.

Entretanto, o desenvolvedor que criou a aplicação em C terá que aprender VB e como é o funcionamento de suas bibliotecas. Isto diminuia a produtividade e criava outros problemas, ainda mais quando decidíamos mudar o sistema operacional. Teríamos que reescrever a aplicação, a biblioteca, para cada sistema operacional (Linux, Android, Mac OS). Teremos um retrabalho enorme.

Podemos usar no exemplo também o Xbox ou 360 e o Playstation 4 e 3 - citamos esses casos, porque a linguagem é também utilizada no desenvolvimento de jogos. Apresentamos diversos cenários que não são o ideal, nosso objetivo sera eliminar essas camadas de complexidade.

Começaremos pela plataforma e biblioteca. Na plataforma, em vez de desenvolvermos uma aplicação e uma biblioteca para cada sistema operacional, nós construiremos a aplicação para uma máquina virtual. Não estamos nos referindo àquela formada pelo chip, o processador físico, pela memória RAM física. Trata-se de uma máquina emulada, simulada dentro de um computador real. Iremos destinar para ela a nossa aplicação.

Desta forma, teremos um implementação para o Windows, o Linux, mas reforçando, escreveremos o código para a máquina virtual. Fica faltando resolver o problema da biblioteca. Nós podemos criar uma linguagem chamada de MSIL - falaremos mais a seguir - que será usada pela biblioteca e pela a aplicação. Sempre teremos que escrever o código com essa linguagem MSIL? A linguagem C# vai entra logo a seguir.

Na verdade, a aplicação MSIL não será gerada por nós programadores.

diagrama da aplicação em MSIL

Nós vamos escrever o código em C#, em VB, Pyhton.NET ou qualquer outra que escolhermos. Nós vamos lançar o código que nós escrevemos para um tradutor, que irá transformá-lo, em código MSIL. Será irrelevante se escrevemos em C# ou VB, porque teremos uma aplicação MSIL no fim. Mas vamos adotar outro termo, em vez de tradutor, utilizaremos a palavra compilador, que transformará um determinada linguagem em outra.

Mesmo se o nosso código for MSIL, que será interpretado com a máquina virtual. No caso C ou C++, linguagens mais antigas, será interpretada com um código interpretado pelo processador de uma máquina física. Está é a tarefa do compilador.

Agora temos um cenário mais maleável, fácil de ser reajustado, porque podemos trabalhar com linguagens como C#, VB, F#, que poderão ser compiladas, para a aplicação escrita em MSIL - que poderá conversar com a biblioteca em MSIL também. Ambas serão aplicadas na máquina virtual, cuja implementação poderá ser feita para qualquer sistema operacional.

Se decidirmos introduzir um novo sistema operacional, não precisamos mais fazer alterações na biblioteca ou na aplicação. Criaremos uma máquina virtual para o sistema operacional e a aplicação continuará a mesma. Se um desenvolvedor C# for migrar a aplicação para Visual Base, será desnecessário que ele aprender outra linguagem ou saber como a biblioteca foi implementada, porque ela continuará sendo a mesma. Inclusive, se quisermos ter um projeto escrito tanto com C#, como com VB, temos essa opção. Porque todos eles são compilados para MSIL.

Atualmente, nosso diagrama está dividido nas seguinte camadas:

Mas vamos nomear as camadas com os nomes corretos e não o conceitual. A máquina virtual que fica acima do sistema operacional é a CLR (Common Language Runtime), nesse mundo C#. Na camada logo acima, teremos a biblioteca, chamada de .NET Framework, e subindo uma mais, teremos a Aplicação .NET. Com as alterações, ficamos com a seguinte ordenação das camadas.

diagrama com camadas após as alteração

Uma aplicação escrita em C#, compilada para MSIL, que conversa com .NET Framework, VB, ou F#, recebem o nome de aplicações .NET. Vamos nos aprofundar sobre MSIL.

MSIL é um acrônimo para Microsoft Intermediate Language

Para entendermos como funciona a compilação, veremos como é feita a conversão do código escrito por um ser humano.

Temos o seguinte código:

Console.WriteLine("Olá mundo");

Vai se transformar em:

nop 
ldstr       "Olá mundo"
call        System.Console.WriteLine
nop  
ret

Ficou um código esquisito, vemos muitas letras, uma linha se transformou em cinco. Toda linguagem .NET será compilada para este formato MSIL, que vai ser executada pela CLR. A máquina virtual, somente em momento de execução do aplicativo, vai converter nop ou ldstr para o código de máquina - aquele do processador Intel ou o AMD. Isto só ocorrerá quando o código for encontrado, por isso, o nome just-in-time compiler (ou jitter), que é o compilador. Ele vai encontrar essa linguagem intermediária, e ao encontrá-lo, o código será compilado para àquele que será executado no processador Intel ou AMD.

Fomos apresentados para a essa grande arquitetura que resolve vários problemas, mas este formato já existia no mercado e fugia dos interesses da Microsoft. No fim dos anos 90, existia a linguagem Java, na qual já existia o conceito de máquina virtual. O Java também tem uma linguagem intermediária, por isso, a Microsoft pensou em adotar Java no seu sistema operacional.

Para isto, eles teriam que assinar um contrato com SUN, a proprietária dos direitos da linguagem Java.

Mas a Microsoft tentou burlar as regras, apesar de ter assinado o contrato, ela não utilizou o Java na forma em que pudesse ser executado em qualquer plataforma. Ela optou por criar J++, que se trata de uma linguagem Java somente para o mundo Windows. Isto ia contra ao que havia sido acordado com Java e resultou em uma grande guerra judicial dessa época. A Microsoft perdeu a disputa e precisou desenvolver sua própria linguagem intermediária, que recebeu o nome de .NET.

Um nome importante por trás do C# é o arquiteto da informação Anders Hejlsberg, responsável pelo gerenciamento do time que de desenvolvimento da linguagem C# e .NET.

Apresentamos a plataforma .NET, contamos um pouco da sua história e por qual motivação surgiu, nós começaremos a escrever o código.

Nosso primeiro programa e o Visual Studio - Nosso primeiro programa CSharp

Nós conhecemos .NET, .NET Framework, CLR - a máquina virtual. Todo esse ecossistema que forma o .NET. Onde fazemos o download, como instalaremos isso na nossa máquina? Eu estou usando o Windows 10, mas a partir do Windows XP, todas as versões possuem o framework e todo o ecossistema .NET instalado. Vamos conferir isso, navegando pelo diretório Windows, acessaremos a pasta Microsoft.NET.

Minha máquina tem 64 bits e nela encontrarei as pastas Framework (referente ao 32 bits) e Framework64. Dependendo de qual aplicação .NET executaremos, abriremos o Framework, onde encontraremos várias pastas: v1.0.3705, v1.1.4322, v2.0.5727 e v4.0.30319. Elas são referentes às versões do .NET.

pastas das versões .net

Nós vamos abrir a versão 4, na qual encontraremos todos os arquivos, as bibliotecas, frameworks e arquivos usados pela CLR. Nessa pasta também encontraremos o arquivo csc.exe. CSCé um acrônimo de C Sharp Compiler. Nesta primeira parte do curso, não usaremos um editor de texto avançado como Atom ou Sublime, escreveremos a aplicação usando o bloco de notas.

Então, conseguiremos escrever Windows sem ter outro editor instalado. De volta ao drive C:, criaremos um diretório, que receberá o nome Aprendendo CSharp. Em seguida, vamos gerar um novo documento de texto clicando o botão direito, será aberto um menu. Selecionaremos "Novo > Documento de Texto".

criando novo documento de text

Vamos criar o documento MeuPrimeiroPrograma.txt, escrevendo o nome sem espaços. Isto facilitará no momento em que estivermos compilando o programa na linha de comando.

Talvez, você já tenha visto uma linha de código muito simples, na qual conseguimos exibir uma mensagem na tela:


print "Olá, mundo"

Adicionamos as aspas ("") antes da mensagem. No entanto, a linguagem C# tem um funcionamento diferente e nos exigirá mais texto - até mesmo para uma aplicação simples, que só vai imprimir a mensagem olá, mundo. Em vez de print, usaremos Console.WriteLine("Olá,mundo"), e a mensagem será adicionada entre parênteses. A instrução em C#, ficará da seguinte maneira:

Console.WriteLine("Olá, mundo")

Toda instrução (statement) C# é fechada com ; (ponto e virgula), sem ele, o compilador não vai compreender o que indicamos com o código. Mesmo assim, apenas essa linha é insuficiente pra o programa C# ser executado e compilado. Como é a primeira vez que estamos vendo esse assunto, pode ser difícil o que apresentamos, mas logo vamos entender a utilidades dessas "peças".

Para executarmos a aplicação, será necessário adicionar a linha:

static void Main(string[] args)
{
    Console.WriteLine("Olá, mundo");
}

Em breve, entenderemos o que significam as palavras como staticou void. Observe que abrimos e fechamos as chaves ({}), ao fazermos isso, criamos um bloco de código. Indentaremos ele a seguir, pressionando a tecla "tab", para esclarecer que a linha do Console.WriteLine() é um código pertencente ao bloco.

Nós ainda não terminamos de escrever o código que vai exibir a mensagem na tela. Falta adicionarmos alguns elementos e assim fazermos a aplicação rodar: incluiremos class Programa e mais um par de {}.


class Programa 
{
static void Main(string[] args)
{
    Console.WriteLine("Olá, mundo");
}
}

Novamente, abrimos um novo bloco, por isso, indentaremos com "Tab", explicitando qual trecho de código pertece a "tal" class Programa - que entenderemos a seguir.

class Programa 
{
    static void Main(string[] args)
    {
        Console.WriteLine("Olá, mundo");
    }
}

Vamos adicionar outro trecho que falaremos mais adiante: using System;. Focaremos também na linha referente à mensagem Olá,mundo. Nela, temos a parte principal do código.

using System;

class Programa 
{
    static void Main(string[] args)
    {
        Console.WriteLine("Olá, mundo");
    }
}

Em seguida, usaremos a linha de comando para compilar o código. Pressionaremos a tecla "Windows" e digitaremos CMD para abrirmos o "Prompt de comando". O próximo passo será navegar até o diretório "AprendendoCSharp". No prompt, digitaremos o seguinte:

C:\Users\Alura Preto>cd c:\AprendendoCSharp

Lembrando que C:\Users\Alura Preto> é exibido pelo próprio terminal. Depois, limparemos a tela com o comando cls. Nós vimos onde está o compilador do C#, no caso, está no Windows. Vamos digitar o caminho:

c:\AprendendoCSharp>c:\Windows\Microsoft.NET\Framework\v4.0.30219\csc.exe

Dentro de Framework, colocamos as versões do .NET que temos instaladas. Utilizaremos a versão 4.0.30219, que é a mais recente instalada nesta máquina. No v.4, vimos que temos CSC. Após executarmos o command pressionando "Enter", teremos o seguinte retorno:

c:\AprendendoCSharp>c:\Windows\Microsoft.NET\Framework\v4.0.30219\csc.exe
Microsoft (R) Visual C# COmpiler version 4.7.2556.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.

This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C
#5, wich is no longer the lastes version. For compilers that support versions of the C# programming language,
see http://go,microsoft.com/fwlink/?LinkID=533240

warning CS2008: Nenhum arquivo de origem especificado
error CS1562: Saídas sem origem devem ter a opção /out especificada

Ele nos alertou sobre um erro, isso acontece porque só abrimos o CSC, sem definirmos qual arquivo deveria ser compilado. Digitaremos novamente o código - ao pressionarmos a tecla direcional "seta para cima", conseguimos recuperar o histórico. Teremos a linha que acabamos de digitar de volta, depois, poderemos MeuPrimeiroPrograma.txt.

c:\AprendendoCSharp>c:\Windows\Microsoft.NET\Framework\v4.0.30219\csc.exe MeuPrimeiroPrograma.txt

Vale explicar que o prompt de comando do Windows tem o autocomplete, então, ao digitar a primeira parte do nome do arquivo, ele completou o restante automaticamente. Nós estamos passando o executável csc e passamos como argumento MeuPrimeiroPrograma.txt. Neste, está a linha de código Console.WriteLine("Olá, mundo");.

Agora, se abrirmos o diretório AprendendoCSharp, encontraremos listados dois arquivos:

Tentaremos executar o arquivo MeuPrimeiroPrograma.exe no prompt.

c:\AprendendoCSharp>MeuPrimeiroPrograma.exe
Olá, mundo

E a mensagem que digitamos no código foi exibida na tela. Podemos aperfeiçoar a mensagem no arquivo .txt:


class Programa 
{
static void Main(string[] args)
{
    Console.WriteLine("Olá, mundo! Este é meu primeiro programa");
}
}

Teremos que recompilar o programa, faremos isso, usando a seta para cima no prompt. Teremos o último comando de compilação.

c:\AprendendoCSharp>c:\Windows\Microsoft.NET\Framework\v4.0.30219\csc.exe MeuPrimeiroPrograma.txt

Depois, vamos executar o arquivo .EXE.


c:\AprendendoCSharp>MeuPrimeiroPrograma.exe
Olá, mundo! Este é meu primeiro programa

Tudo funcionou como o esperado, mas um problema comum que enfrentamos é escrever uma palavra-chave (ou reservadas) como static, com a primeira letra em maiúscula. Observe que no código usamos apenas letras minúsculas, por ser uma exigência do C#. Ele é case sensitive, ou seja, algumas palavras devem começar com maiúsculo, outras não, e todas deve ser escritas corretamente.

Se escrevermos Static com a letra maiúscula no código, o C# vai interpretar como um código diferente.


using System;

class Programa 
{
Static void Main(string[] args)
{
    Console.WriteLine("Olá, mundo! Este é meu primeiro programa");
}
}

No caso, ele não vai compilar. Novamente, vamos compilar o arquivo MeuPrimeiroPrograma.txt no prompt. Receberemos uma mensagem de erro.

c:\AprendendoCSharp>c:\Windows\Microsoft.NET\Framework\v4.0.30219\csc.exe MeuPrimeiroPrograma.txt
Microsoft (R) Visual C# Compiler version 4.7.2556.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.

This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C
#5, wich is no longer the lastes version. For compilers that support versions of the C# programming language,
see http://go,microsoft.com/fwlink/?LinkID=533240

MeuPrimeiroPrograma.txt(5,9): error CS1519: Token 'void' inválido na declaração de membro class, struct ou interface

Nós ainda não sabemos o que é Token 'void', a mensagem em geral não é intuitiva e não deixa claro onde está o erro. O compilador não sabe como nos indicar que a palavra reservada static deveria ser toda escrita em minúsculo. No entanto, precisamos tomar o cuidado de escrever com exatidão a grafia das palavras. E da mesma forma que teremos erros se nos enganarmos com a letra s, devemos ficar atentos com ; no fim da frase - entre os erros mais comuns também.

Se testarmos remover ; do nosso código, e repetirmos o processo de compilação no prompt, teremos uma linha de erro diferente.

MeuPrimeiroPrograma.txt(7,64): error CS1002: ; esperado

Desta vez, ele ainda conseguiu nos sinalizar onde está o problema com ; esperado. Mas nem sempre será assim, a maioria dos erros serão apontados da forma anterior com Token 'void' inválido.

Neste último caso, o compilador também nos indicou 7,64, ele se refere a localização do problema: o número 7 é referente à linha e o 64 é a coluna. É o índice do caractere que geral esse erro.

Se analisarmos o arquivo MeuPrimeiroPrograma.txt e contarmos cada linha do código, identificaremos o problema exatamente na linha do Console.WriteLine(), onde removemos o ;. Incluiremos novamente essa pontuação e conseguiremos compilar o código. No prompt nenhuma mensagem adicional será exibida e se executarmos MeuPrimeiroPrograma.exe, teremos a mensagem de retorno.

c:\AprendendoCSharp>MeuPrimeiroPrograma.exe
Olá, mundo! Este é me primeiro programa

Outro erro comum, quando estamos começando com C#, é ficarmos confusos com o uso das chaves e nos esquecermos de fechar todos os blocos de código. Também teremos problemas na compilação se nos esquecemos de alguma chave. Se testarmos fazer isso no código, receberemos uma mensagem de erro no compilador.


This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C
#5, which is no longer the latest version. For compilers that support versions of the C# programming language,
see http://go,microsoft.com/fwlink/?LinkID=533240

MeuPrimeiroPrograma.txt(3.15): error CS1514: { esperada

Isso aconteceu, porque não colocamos a chave na abertura do bloco da classe Programa.



using System;

class Programa 

static void Main(string[] args)
{
    Console.WriteLine("Olá, mundo! Este é meu primeiro programa");
}
}

Mais adiante, explicaremos o que significa class Programa, por enquanto, focaremos na importância de escreveremos o código corretamente. Desta forma, garantimos que o programa seja executado pelo C#. Existem outras linguagens que executam o código mesmo que ele não esteja 100% correto, no entanto, o time que desenvolveu a linguagem C# criou um código conciso, que não seja ambíguo - e que só pode fazer uma coisa.

Apesar de parecer que o código fica claro mesmo sem ; ou se trocarmos uma letra de minúsculo para maiúsculo, o compilador não vai aceitar o seu código com erros. Deixaremos o nosso código completo novamente, e ao rodarmos o programa no compilador, teremos sucesso dessa vez.

Entendemos o mecanismo de chamar o compilador pela linha de comando, aprendemos a escrever o primeiro programa e o quanto é importante seguir todas as regras de sintaxe da linguagem. Vimos que apesar de parecer estar clara a ação quando escrevemos um código sem ;, o compilador não irá aceitá-lo dessa maneira. A seguir, usaremos uma IDE para desenvolver mais código.

IDE é um acrônimo Integrated Development Environment (ou "Ambiente de Desenvolvimento Integrado", traduzido para o português). Trata-se de um editor de texto que oferece no mesmo lugar suporte à linguagem e cada instrução será exibida com uma cor diferente, de acordo com o seu significado. Teremos também a documentação, as bibliotecas e o compilador, tudo centralizado no mesmo programa.

Isto significa que deixaremos de utilizar o bloco de notas, que não nos auxiliará em muita coisa. Começaremos a usar o Visual Studio. Mais adiante, mostraremos como instalar o Visual Studio (a IDE mais utilizada) e programaremos usando C#.

Sobre o curso C# parte 1: Primeiros passos

O curso C# parte 1: Primeiros passos possui 211 minutos de vídeos, em um total de 67 atividades. Gostou? Conheça nossos outros cursos de .NET em Programação, ou leia nossos artigos de Programação.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda .NET acessando integralmente esse e outros cursos, comece hoje!

  • 1206 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

Premium

  • 1206 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$75
à vista R$900
Matricule-se

Premium Plus

  • 1206 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$100
à vista R$1.200
Matricule-se

Max

  • 1206 cursos

    Cursos de programação, UX, agilidade, data science, transformação digital, mobile, front-end, marketing e infra.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • App para Android e iPhone/iPad

    Estude até mesmo offline através das nossas apps Android e iOS em smartphones e tablets

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$120
à vista R$1.440
Matricule-se
Procurando planos para empresas?

Acesso completo por 1 ano

Estude 24h/dia onde e quando quiser

Novos cursos todas as semanas