Sete Jogos de Codificação para Ajudá-lo a Aprimorar suas Habilidades de Programação

Codificação é tudo sobre usar as ferramentas disponíveis para você para resolver problemas (e resolver os problemas que resultaram da sua solução para os problemas anteriores, é claro). Essa também é a ideia básica por trás da maioria dos videogames, então os dois se combinam naturalmente. Esses jogos de codificação abrangem muitas linguagens, faixas etárias e níveis de habilidade, então, seja você um completo iniciante ou esteja procurando algo em um nível mais avançado, há um jogo para ajudá-lo a aprender a codificação da melhor maneira: fazendo isso.
Para mais aprendizado, confira nossa lista de sites de programação gratuitos.
Índice
- Code Combat
- Ruby Warrior
- CodinGame
- CodeGym
- CheckiO
- Elevator Saga
- Untrusted
- Outros recursos
- Perguntas Frequentes
1. Code Combat
Code Combat, uma lição de codificação envolta em um RPG medieval, é projetado para iniciantes e crianças. É um conceito atraente: guiar um herói através de níveis codificando seus movimentos. O jogo começa com conceitos simples e fornece muita orientação. Embora consiga manter os conceitos básicos bastante interessantes, a jogabilidade não é nada de mais: você não pode pular níveis, e há uma certa divisão entre as habilidades que você aprende aqui e as aplicações no mundo real. Jogue Code Combat com as linguagens Python, CoffeeScript, Lua, Javascript, HTML, CSS, C++ e Java.

Prós
- Alto valor de produção em termos de gráficos e áudio
- Conteúdo guiado é ótimo para aprender conceitos básicos de programação
Contras
- Alguns recursos e linguagens estão disponíveis apenas com uma assinatura
2. Ruby Warrior
Ruby provavelmente não é a linguagem mais relevante para aprender atualmente, mas este jogo de codificação pode valer a pena! Ruby Warrior é um jogo 2D baseado em texto que permite controlar seu personagem usando Ruby e lógica de programação geral. É voltado para programadores intermediários e especialistas e te coloca direto na ação, fazendo você ler e escrever arquivos no seu editor de texto. Como em aventuras de texto clássicas, o jogo evoca um senso de aventura e apela à sua imaginação. Quer você precise ou não aprender Ruby, o jogo é bastante interessante e pode deixá-lo querendo continuar melhorando suas soluções!

Prós
- Disponível offline como um jogo de linha de comando para download
- O código aberto do jogo permite que você aprenda ou o modifique
Contras
- Última atualização em 2012
Bom saber: prefere assistir a vídeos? Aprenda a codificar com esses 10 canais do YouTube.
3. CodinGame
CodinGame é essencialmente um repositório de quebra-cabeças com foco em algoritmos e resolução de problemas usando código. O aspecto divertido/jogável definitivamente está presente (é divertido ver seus lasers aniquilarem enxames de naves inimigas), mas seu cérebro pode começar a superaquecer enquanto você trabalha em alguns desses desafios. Eles podem ser bastante rigorosos e exigir um pensamento complexo e expertise em programação para serem superados, tornando o jogo adequado para codificadores intermediários a avançados. Suporta muitas linguagens diferentes, incluindo C, C#, C++, Java, JavaScript, Python3, Bash, C, Go, Ruby, Rust, Swift e PHP.

Prós
- Jogos multiplayer estão disponíveis
- Muitas linguagens de programação suportadas
- Todo o conteúdo é gratuito
Contras
- Quebra-cabeças exigem muito pensamento
4. CodeGym
CodeGym é mais um curso do que um jogo, mas há um elemento de história bastante sério incluído. O objetivo é levar você de um iniciante a um desenvolvedor Java júnior usando desafios e projetos baseados em histórias no IntelliJ IDE (Ambiente de Desenvolvimento Integrado), que é uma ótima introdução às ferramentas de codificação que você usará mais tarde. Há uma arte cartunesca agradável ao longo do componente da história, fazendo com que este curso pareça divertido e caprichoso. Embora você tenha que pagar por algumas partes do CodeGym, o conteúdo gratuito dá uma boa ideia de se o curso se encaixará na sua jornada com Java.

Prós
- Aprenda através de uma história fictícia ou material educacional
- O conteúdo pode ser pulado com base no nível de habilidade
Contras
- Exercícios concluídos não podem ser refeitos com soluções diferentes
Dica útil: confira os cinco melhores sites para aprender Python gratuitamente!
5. CheckiO
CheckiO é uma coleção de desafios de codificação sólidos que são ótimos para programadores novatos que estão começando a aprender Python ou Javascript. A parte “jogo” disso é na verdade uma camada fina sobre os desafios e documentação, e você pode se pegar pensando: “Espere, quando o jogo começa?” depois de começar a brincar com isso. Por exemplo, a página onde você resolve os quebra-cabeças não inclui nenhum texto que se conecte à história (que é mal sugerida na página de seleção de níveis). No entanto, o tema de pular entre diferentes ilhas de codificação traz um pouco de cor à experiência.

Prós
- Dicas disponíveis se você ficar preso
- Soluções de outros jogadores podem ser visualizadas
Contras
- O design da interface do usuário é um pouco desajeitado e distrativo com anúncios
6. Elevator Saga
Se você já conhece um pouco de JavaScript e está procurando alguns problemas interessantes para resolver para manter suas habilidades afiadas, Elevator Saga pode ser divertido. A ideia é bastante simples: dar a um elevador regras para viajar entre diferentes andares, pegar pessoas e deixá-las. No entanto, isso se complica rapidamente, então você pode se ver desistindo e voltando a ele algumas vezes. Quando você pega o jeito, no entanto, assistir seu sistema de elevadores funcionar como uma máquina bem lubrificada é super satisfatório. Confira Elevator Saga se você é um codificador Javascript intermediário a avançado.

Prós
- Permite que você seja criativo e melhore continuamente suas soluções
- A velocidade pode ser aumentada para passar pelos desafios mais rapidamente
Contras
- A documentação deve ser lida em uma página separada para progredir
7. Untrusted
Escrito para JavaScript ES5, Untrusted é uma maneira muito legal de praticar os meandros do Javascript. É uma aventura em texto onde a trama gira em torno de você hackeando sua saída de uma situação complicada mudando o código que seus captores estão usando contra você. É um dispositivo divertido que faz o código parecer uma parte natural da história. Diferentes trilhas sonoras (há nova música em cada nível) fazem você se sentir como um hacker saído de um filme de Hollywood. Não é para iniciantes, e até mesmo programadores experientes podem ter dificuldade em descobrir a solução que o jogo quer que você use. Embora Untrusted possa não ensinar a você o JavaScript mais útil ou atualizado, ainda é um desafio divertido!

Prós
- A jogabilidade é única e força você a pensar fora da caixa
- Soluções são salvas automaticamente na nuvem como um gist do GitHub
Contras
- Não há muito aprendizado prático de programação
Dica: se você gosta de manter sua programação móvel, confira algumas dicas sobre o que procurar em um laptop para programação.
Outros recursos
Alguns sites não entraram nesta lista, pois não eram suficientemente parecidos com jogos, não ensinam código, custam dinheiro, focam em jovens aprendizes ou são direcionados especificamente a codificadores bastante avançados, mas merecem uma menção mesmo assim!
- Screeps
- CodeWars
- Edabit
- CSS Para Desenvolvedores Javascript
- LeetCode
- HackerRank
- Schemaverse
- Robocode
- VIM Adventures
- CryptoZombies
- CodeMonkey
- TIS-100
- Hack ‘n’ Slash
- Cyber-Dojo
- Flexbox Froggy
Todos esses jogos de codificação fazem é ajudar você a praticar, no entanto. Em última análise, ser um codificador é sobre construir suas próprias coisas. Usar sites como CodinGame e Codewars pode ajudar você a manter suas habilidades afiadas e em crescimento, mas depois que você aprendeu a sintaxe básica, construir projetos progressivamente maiores é a melhor maneira de continuar aprendendo.
Dica: aprenda quais perguntas fazer para ajudá-lo a aprender os fundamentos da programação.
Perguntas Frequentes
Qual linguagem de programação devo começar a aprender primeiro?
Geralmente, é uma boa ideia escolher uma linguagem que seja amplamente utilizada. Uma lista das linguagens de programação mais populares geralmente incluirá Javascript, Python, Java e linguagens baseadas em C, então essas são todas apostas seguras.
Você também deve considerar que deve usar certas linguagens para certos casos de uso. Por exemplo, Java ou Kotlin são usados para desenvolver aplicativos nativos para Android, enquanto Objective-C ou Swift são para aplicativos nativos para iOS.
Jogar esses jogos pode me ajudar a conseguir um emprego como desenvolvedor de software?
Podem! Se você é um iniciante, aprender a codificar em um formato de jogo divertido pode ajudá-lo a persistir o suficiente para conseguir um emprego em vez de desistir.
Se você é mais avançado, confira os jogos que contêm quebra-cabeças de código e pensamento algorítmico. Estes são mais desafiadores e podem ajudá-lo a desenvolver uma mentalidade de resolução de problemas que é útil para passar pelas perguntas de entrevista de emprego em programação.
Qual é a melhor maneira de aprender a codificar?
Não há uma única maneira de aprender a codificar. Algumas pessoas aprendem com sucesso a partir de um diploma tradicional de ciência da computação de quatro anos. Outras preferem aprender com coisas como recursos online, bootcamps ou jogos de codificação como os mencionados neste artigo.
É importante conhecer a si mesmo. Descubra como você gosta de aprender: você gosta de ler, comunicação cara a cara ou aprender fazendo? Além disso, você tem interesses ou paixões fortes que pode entrelaçar com sua codificação? Por exemplo, se você gosta de jogos, pode se sair bem tentando programar um jogo.
Crédito da imagem: Pexels. Todas as capturas de tela por Brandon Li.