Lógica de programação
- Curso Lógica de programação I: os primeiros programas com Javascript e HTML
-
Curso Lógica de programação II: pratique com desenhos, animações e um jogo
-
Curso Jogos clássicos parte 1: iniciando no Javascript com Pong
-
Curso Jogos clássicos parte 2: laços e listas com Javascript
-
Curso Minecraft: estruturas lógicas com redstone
-
Curso Cypress: automação de testes E2E
Python
-
Curso Python 3 parte 1: introdução à nova versão da linguagem
-
Curso Python 3 parte 2: avançando na linguagem
-
Curso Python 3: introdução a Orientação a objetos
-
Curso Python 3: avançando na orientação a objetos
-
Curso Python 3: trabalhando com I/O
-
Curso Python Brasil: validação de dados no padrão nacional
-
Curso Python: boas práticas de código com PEP8
-
Curso String em Python: extraindo informações de uma URL
-
Curso Testes automatizados: TDD com Python
-
Curso Python Collections parte 1: listas e tuplas
-
Curso Python Collections parte 2: conjuntos e dicionários
-
Curso Python 3: entendendo o Tratamento de Erros
-
Curso Pacman com Python e Pygame: cenário e ator
-
Curso Pacman com Python e Pygame: colisão e pontuação
-
Curso Python para Data Science: primeiros passos
Python web
-
Curso Flask: crie uma webapp com Python
-
Curso Flask parte 2: Avançando no desenvolvimento web
-
Curso Introdução ao Django: Modelo, Rotas e Views
-
Curso Autenticação no Django: formulários, requisições e mensagens
-
Curso Integração de modelos no Django: Filtros, buscas e admin
-
Curso Boas práticas no Django: apps, pastas e paginação
-
Curso Formulários no Django 3: criando e validando dados
-
Curso API com Django 3: Django Rest Framework
-
Curso API com Django 3: Validações, buscas, filtros e deploy
-
Curso API com Django 3: Versionamento, cabeçalhos e CORS
-
Curso API com Django 3: Testes, segurança e lapidações
-
Curso API com Django 3: Aprofundando em testes e documentação
-
Curso TDD no Django 3: Desenvolvimento guiado por testes
Node.JS
-
Curso NodeJS: avançando em APIs REST com controle de versões
-
Curso Node.js e JWT: autenticação com tokens
-
Curso Node.js: Refresh Tokens e confirmação de cadastro
-
Curso ORM com NodeJS: API com Sequelize e MySQL
-
Curso ORM com NodeJS: avançando nas funcionalidades do Sequelize
-
Curso GraphQL parte 3: integrando com sua aplicação
-
Curso GraphQL: construindo uma API com Apollo Server
-
Curso GraphQL: integração de dados e relacionamentos
-
Curso GraphQL: criação de APIs com Prisma 2 e Nexus
-
Curso NestJS: criando uma API Rest com TypeScript
-
Curso APIs REST com NestJS: buscas, validação, serialização e detalhes arquiteturais
-
Curso NodeJS: controle de acesso e autorização com RBAC
-
Curso NodeJS: adicionando CI ao projeto e deploy no Google Cloud
-
Curso Node.js: API Rest com Express e MongoDB
PHP
-
Curso Introdução ao PHP: primeiros passos com a linguagem
-
Curso PHP e MySQL: introdução a uma webapp
-
Curso Avançando com PHP: Arrays, Strings, Função e Web
-
Curso PHP Strings: Operações e expressões regulares
-
Curso PHP: manipulando coleções com Arrays
-
Curso PHP: dominando as Collections
-
Curso Orientação a Objetos com PHP: Classes, métodos e atributos
-
Curso Avançando com Orientação a Objetos com PHP: Herança, Polimorfismo e Interfaces
-
Curso PHP Brasil: validação de dados no padrão nacional
-
Curso PHP Composer: Dependências, Autoload e Publicação
-
Curso PHP Exceptions: tratamento de erros
-
Curso PHP I/O: trabalhando com arquivos e streams
-
Curso PHP e Behavior Driven Development: BDD com Behat
-
Curso PHP Parallel: Processos, Threads e Channels
-
Curso Object Calisthenics: exercitando a Orientação a Objetos
-
Curso Metaprogramação com PHP: API de Reflection
-
Curso PHP e Clean Architecture: descomplicando arquitetura de software
-
Curso PHP e Domain Driven Design: apresentando os conceitos
-
Curso PHP: Programação Funcional
-
Curso PHP Reativo: programação assíncrona em tempo real
-
Curso Swoole PHP: servidor assíncrono e corrotinas com PHP
-
Curso Refatoração em PHP: boas práticas no seu código
-
Curso Laravel: criando uma aplicação com MVC
-
Curso Laravel: validando formulários, usando sessões e definindo relacionamentos
-
Curso Laravel: transações, service container e autenticação
-
Curso Laravel: e-mails, eventos assíncronos, uploads e testes
PHP para web
Persistência em PHP
PHP API
Boas práticas em PHP
-
Curso PHP Refatoração: boas práticas no seu código
-
Curso Design Patterns em PHP: padrões comportamentais
-
Curso Design Patterns em PHP: padrões estruturais
-
Curso Design Patterns em PHP: padrões criacionais
-
Curso SOLID com PHP: princípios da programação orientada a objetos
-
Curso PHP e TDD: testes com PHPUnit
-
Curso Mocks em PHP: entenda os dublês de testes
-
Curso Testes de integração com PHP: testando o acesso à API e ao banco de dados
-
Curso PHP Xdebug: ferramenta de debug e profiling
JavaScript
-
Curso Fundamentos do JavaScript: Tipos, variáveis e funções
-
Curso Fundamentos do JavaScript: Arrays
-
Curso Fundamentos do JavaScript: objetos
-
Curso Algoritmos com JavaScript I: iniciando com algoritmos de ordenação
-
Curso Algoritmos com JavaScript II: aprofundando em algoritmos de ordenação e busca
-
Curso JavaScript: primeiros passos da programação orientada a objetos
-
Curso NodeJS: criando sua primeira biblioteca
Java para Web
-
Curso Java Servlet: fundamentos da programação web Java
-
Curso Java Servlet: autenticação, autorização e o padrão MVC
-
Curso Spring MVC: crie um web app com Thymeleaf e Bootstrap
-
Curso Spring MVC: autenticação com Spring Security, API Rest e AJAX
-
Curso Spring Boot e Teste: Profiles, Testes e Deploy
-
Curso Java e MongoDB: integre uma webapp Java com um banco NoSQL
-
Curso Segurança web em Java: evitando SQL Injection, força bruta e outros ataques
-
Curso Segurança web em Java parte 2: XSS, Mass Assignment e Uploads de arquivos!
Java
-
Curso Java JRE e JDK: escreva o seu primeiro código com Eclipse
-
Curso Java OO: introdução à Orientação a Objetos
-
Curso Java Polimorfismo: entenda herança e interfaces
-
Curso Java Exceções: aprenda a criar, lançar e controlar exceções
-
Curso Java e java.lang: programe com a classe Object e String
-
Curso Java e java.util: Coleções, Wrappers e Lambda expressions
-
Curso Java e java.io: Streams, Reader e Writers
-
Curso Java Collections: Dominando Listas, Sets e Mapas
-
Curso Refatoração em Java: boas práticas no seu código
-
Curso Java moderno: tire proveito dos novos recursos do Java 8
-
Curso Novidades do Java: produtividade com novos recursos
-
Curso Java Debug: técnicas para entender e melhorar o seu código
-
Curso Threads em Java 1: programação paralela
-
Curso Threads em Java 2: programação concorrente avançada
-
Curso Java Reflection parte 1: entendendo a metaprogramação
-
Curso Java Reflection parte 2: Anotações e Injeção de Dependências
-
Curso IntelliJ IDEA: aumente a sua produtividade em projetos Java
-
Curso Java e Clean Architecture: descomplicando arquitetura de software
-
Curso Java e Domain Driven Design: apresentando os conceitos
-
Curso Agilidade e TDD: um dia no desenvolvimento de software
-
Curso Agilidade e DevOps: um dia no desenvolvimento de software
Java e persistência
Java API
-
Curso Spring Boot API REST: construa uma API
-
Curso Spring Boot API Rest: Segurança da API, Cache e Monitoramento
-
Curso Microservices com Spring Cloud: Registry, Config Server e Distributed Tracing
-
Curso Microservices com Spring Cloud: Circuit Breaker, Hystrix e API Gateway
-
Curso Swagger: documentando suas APIs
Testes em Java
Boas práticas em Java
Certificação Java
-
Curso Certificação Java SE 7 Programmer I: o básico de Java
-
Curso Certificação Java SE 7 Programmer I: tipos de Dados
-
Curso Certificação Java SE 7 Programmer I: Operadores
-
Curso Certificação Java SE 7 Programmer I: Laços
-
Curso Certificação Java SE 7 Programmer I: criando e usando Arrays
-
Curso Certificação Java SE 7 Programmer I: métodos e encapsulamento
-
Curso Certificação Java SE 7 Programmer I: relações entre classes
-
Curso Certificação Java SE 7 Programmer I: lidando com exceções
-
Curso Certificação Java SE 8 Programmer I: conteúdo além da prova
C#
-
Curso C#: iniciando com a linguagem
-
Curso C# parte 3: entendendo herança e interface
-
Curso C# parte 4: entendendo exceções
-
Curso C# parte 5: bibliotecas DLLs, documentação e usando o NuGet
-
Curso C# parte 6: Strings, expressões regulares e a classe Object
-
Curso C# parte 7: Array e tipos genéricos
-
Curso C# parte 8: List, lambda, linq
-
Curso C# Parte 9: entrada e saída (I/O) com streams
-
Curso C#: iniciando com orientação a objetos
-
Curso C#: Paralelismo no mundo real
-
Curso C# Collections parte 1: Listas, arrays, listas ligadas, dicionários e conjuntos
-
Curso C# Collections parte 2: Coleções ordenadas, arrays multidimensionais e LINQ
-
Curso C# Refatoração Parte 1: praticando refatoração de código
-
Curso C# Refatoração Parte 2: Refatorações baseadas em Orientação a Objetos.
-
Curso C# Refatoração Parte 3: hierarquias de classes
-
Curso C# Brasil: Formate datas, cpf e números nacionais
-
Curso C# 6: melhorias em Coleções, Propriedades, Exceções e Strings
-
Curso C# 7: Tuplas, parâmetros, condicionais, e estilo de código
-
Curso C# Reflection parte 1: metadados do seu código .NET
-
Curso C# Reflection parte 2: implementando injeção de dependência do zero
-
Curso C#: Eventos, Delegates e Lambda
-
Curso Novidades do C# 7.3: igualdade em tuplas, expression variables e refs
-
Curso Windows Forms com C#: Formulários, componentes e eventos
-
Curso Windows Forms com C#: Menus, outros formulários e validação com login e senha
-
Curso Windows Forms com C#: eventos do mouse e mais componentes
-
Curso Windows Forms com C#: barra de ferramentas, trabalhando com classes e JSON
-
Curso Windows Forms com C#: manipulando os dados do cliente
-
Curso Windows Forms com C#: persista os dados no banco de dados
-
Curso Windows Forms com C#: acesso ao banco de dados SQL Server
.NET para web
Persistência com .NET
-
Curso Entity LinQ parte 1: crie queries poderosas em C#
-
Curso Entity LinQ parte 2: Store Procedures e consultas com o LinQPad
-
Curso Entity Framework Core: banco de dados de forma eficiente
-
Curso Entity Framework Core parte 1: mapeando um banco pré-existente
-
Curso Entity Framework Core parte 2: mapeando um banco pré-existente
-
Curso .Net e MongoDB parte 1: primeiros passos para usar esse famoso banco NoSQL
-
Curso .Net e MongoDB parte 2: integre uma webapp com o banco NoSQL
.NET API
-
Curso API Rest com .NET 5: operações essenciais com verbos HTTP
-
Curso .NET 5 e Identity: implementando controle de usuário
-
Curso ASP.NET Identity parte 4: autenticação mais segura com 2 fatores
-
Curso .NET 5 e EF Core: relacionando entidades
-
Curso .NET 5 e Identity: autenticando e autorizando usuários
Testes em C#
Boas práticas em C#
-
Curso Design Patterns C# I: boas práticas de programação
-
Curso Design Patterns C# II: boas práticas de programação
-
Curso SOLID com C#: princípios da programação orientada a objetos
-
Curso Testes em .NET: fundamentos do Teste de Software
-
Curso Testes em .NET: integrando a aplicação com um banco de dados
-
Curso Testes em .NET: testes de interface usando Selenium
-
Curso Testes em .NET: integração e entrega contínua com Azure DevOps
VB.NET
-
Curso VB.NET com Windows Forms Parte 1: primeiros passos
-
Curso VB.NET com Windows Forms Parte 2: introdução à Orientação a Objetos
-
Curso VB.NET com Windows Forms Parte 3: avançando na Orientação à objetos
-
Curso VB.NET com Windows Forms Parte 4: entendendo exceções
-
Curso VB.NET com Windows Forms Parte 5: Criando bibliotecas DLLs, documentação e usando o NuGet
-
Curso VB.NET com Windows Forms Parte 6: Manipulando Strings, expressões regulares e a classe Object
-
Curso VB.NET com Windows Forms Parte 7: Arrays e Tipos genéricos
-
Curso VB.NET com Windows Forms Parte 8: Listas, listas ligadas, dicionários e conjuntos
-
Curso VB.NET com Windows Forms Parte 9: Lambda Expressions, LINQ e Dataset
-
Curso VB.NET com Windows Forms Parte 10: entrada e saída (I/O) com streams
-
Curso VB.NET com Windows Forms Parte 11: trabalhando com banco de dados
Desenvolvimento de jogos
-
Curso Lua parte 1: crie um jogo de RPG em 2D
-
Curso Lua parte 2: Mapas, ataques e inimigos mais complexos
-
Curso Lua: do zero ao jogo
-
Curso Unity parte 1: criação de um jogo de sobrevivência à zumbis para Web
-
Curso Unity parte 2: iluminação, interface e boas práticas
-
Curso Unity parte 3: criando um chefão e refinando o jogo
-
Curso Unity parte 4: Chefão, partículas e menu
-
Curso Unity 2D parte 1: criando seu primeiro jogo 2D
-
Curso Unity 2D parte 2: adicionando efeitos visuais ao seu jogo
-
Curso Unity 2D parte 3: criando um jogo multiplayer
-
Curso Unity RPG parte 1: implementando sua arte no jogo
Computação
-
Curso Estrutura de Dados: computação na prática com Java
-
Curso Algoritmos I: Selection, Insertion e Introdução a Análise
-
Curso Algoritmos II: MergeSort, QuickSort, Busca Binária e Análise de Algoritmo
-
Curso Maratona de Programação: introdução e boas práticas de um programador maratonista
-
Curso Maratona de programação: algoritmos para sua primeira competição
-
Curso Blockchain: aumente a confiança da sua aplicação
-
Curso Blockchain para Negócios: aplicações e cases reais
-
Curso Delphi: primeiros passos com a linguagem
-
Curso Arquitetura de computadores: por trás de como seu programa funciona
-
Curso Microsserviços: padrões de projeto
Quality Assurance
Elixir
Kotlin
-
Curso Kotlin: primeiros passos e Orientação a Objetos
-
Curso Kotlin: herança, polimorfismo e Interface
-
Curso Kotlin: recursos da linguagem com pacotes e composição
-
Curso Kotlin: lidando com exceptions e referências nulas
-
Curso Kotlin: recursos do paradigma funcional
-
Curso Kotlin: desenvolva com coleções, arrays e listas
-
Curso Kotlin Collections: Set e Map
-
Curso Kotlin e Spring: segurança e infraestrutura
-
Curso API REST com Kotlin e Spring Boot: Camada Web
-
Curso API REST com Kotlin e Spring Boot: Camada de persistência
-
Curso Kotlin e Spring: testes automatizados e documentação de API
Embarcados e Robótica
-
Curso Arduino: do zero ao jogo
-
Curso Arduino: introdução à Robótica
-
Curso Esp32: detector de presença com Bluetooth Low Energy
-
Curso NodeMcu e Esp8266: medindo e publicando dados com MQTT
-
Curso NodeMcu e Esp8266: monte um brinquedo interativo para seu Pet
-
Curso Robot Operating System: simule um robô na AWS RoboMaker
-
Curso Raspberry Pi parte 1: da instalação ao Media Center
-
Curso Raspberry Pi parte 2: controlando o mundo com GPIO
-
Curso Raspberry Pi parte 3: Carro espião com câmera, wifi e sensor
-
Curso Raspberry Pi Servidor: montando um servidor para desenvolvimento
-
Curso Raspberry Pi: autenticação com RFID e Dynamo DB
-
Curso Raspberry Pi Node-RED: elabore aplicações conectando dispositivos e serviços
-
Curso Raspberry Pi Servidor: Samba, VPN, IoT e AWS S3
Internet das coisas
-
Curso Amazon Alexa: controle o seu ambiente com sua voz
-
Curso Amazon Alexa: programe a sua assistente pessoal
-
Curso Amazon IoT: conecte dispositivos à nuvem e defina regras de notificação
-
Curso Automação residencial parte 1: integrando sensores no Home Assistant
-
Curso Automação residencial parte 2: aplicando regras, ações e triggers
-
Curso Automação residencial: novidades do Home Assistant
-
Curso Internet das coisas: seu assistente pessoal em Python
Clojure
-
Curso Clojure: introdução à programação funcional
-
Curso Clojure: coleções no dia a dia
-
Curso Clojure: mutabilidade com átomos e refs
-
Curso Clojure: Record, protocol e multi method
-
Curso Clojure: Schemas
-
Curso Clojure: explorando testes
-
Curso Clojure: geradores e testes de propriedades
GoLang
Linguagem C e C++
-
Curso C I: introdução à Linguagem das Linguagens
-
Curso C II: avançando na linguagem
-
Curso C III: recursos avançados da linguagem
-
Curso C++: introdução a linguagem e a STL
-
Curso C++ e TDD: testes de unidade com Catch2
-
Curso Avançando com C++: entenda melhor a linguagem
-
Curso Avançando com C++: Enum, templates e mais recursos
-
Curso Avançando com C++: performance e otimização
-
Curso Orientação a Objetos com C++: Classes, métodos e atributos
-
Curso Orientação a Objetos com C++: trabalhando com herança
Por onde começar com Programação
O JavaScript é uma excelente opção para começar a programar e praticar lógica de programação. Diferente de muitas outras linguagens, com JavaScript você não precisará instalar editores, IDEs, compiladores e bibliotecas no começo da sua jornada. É a linguagem que usamos na nossa formação de Iniciante em Programação.
Além disso, é uma linguagem em alta demanda no mercado de trabalho para o chamado Front-End. Por isso nossa formação Front-End foca no JavaScript em conjunto com HTML e CSS, explorando boas práticas até chegar no framework React para criar aplicações poderosas.
Algumas das principais linguagens de programação que aparecerem com frequência no ambiente de trabalho são:
Java e C#: são linguagens com enorme mercado de trabalho e que possuem grandes empresas por trás, Oracle e Microsoft respectivamente. Bancos, corporações e governos adotaram essas linguagens de forma ampla, dada a grande quantidade de bibliotecas, ferramentas e suporte. Veja as principais formações de Java e C# e .NET.
Node.JS: uma plataforma que ganhou muito espaço pois trouxe a linguagem JavaScript para o back-end. É ideal para criar serviços web e APIs no estilo REST que ensinamos na nossa formação Node.JS.
Python: ganha cada vez mais popularidade tanto para desenvolvimento web quanto para data science. Nos cursos e formações ensinamos desde o básico da linguagem Python até chegar aos famosos frameworks web, como Django ou Flask.
PHP: linguagem que evoluiu muito nos últimos anos e que aparece com forte predominância em sistemas e serviços web. Na formação PHP ensinamos a linguagem, paradigma OO, os frameworks da ponta como Doctrine e Laravel e muito mais.
VB.NET, a linguagem C, GoLang e Clojure são outras linguagens que aparecem bastante nos cursos da Alura. Claro que não podemos esquecer o Kotlin e Swift da programação mobile.
Além de aprender a programar e ganhar fluência em uma linguagem, os próximos passos são entender o ecossistema em volta dela, que passa por conhecer as ferramentas, boas práticas, bibliotecas, sistemas de testes automatizados e design patterns. Também é importante conhecer a ciência da computação com mais profundidade, entendendo estrutura de dados, algoritmos e grafos.
Líderes da Escola Programação
Juliana Amoasei
Desenvolvedora de software e instrutoraDaniel Artine
Engenheiro de Software na Stone AgeGuilherme Lima
Desenvolvedor Python e JavaScript na AluraPaulo Silveira
Hipster e CEO da Alura
Sabe quando você pode começar? Agora!
Plus
- Acesso a TODOS os cursos da plataforma
Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
- Alura Challenges
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
- Alura Cases
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
- Certificado
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
- Alura Língua (incluindo curso Inglês para Devs)
Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.
Pro
- Acesso a TODOS os cursos da plataforma
Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
- Alura Challenges
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
- Alura Cases
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
- Certificado
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
- Alura Língua (incluindo curso Inglês para Devs)
Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.
Acesso completo
durante 1 ano
Estude 24h/dia
onde e quando quiser
Novos cursos
todas as semanas